My question here is relative to jobs. I currently hold a System Analyst position.

What is the difference between System Analyst and Programmer/Analyst? Is this position higher than a programmer? Or how should I upgrade myself ?

  • 12
    How come when questions have the title "System Analyst vs Computer Programmer" they never end up being "Who would win in a fight between..."? Jan 20 '11 at 13:51
  • 2
    @Jon Hopkins Here you go: googlefight.com/…
    – Gary Rowe
    Jan 20 '11 at 14:35
  • @Jon Hopkins: I'll give you 2:1 odds on the analyst. Jan 21 '11 at 17:44
  • @Jon Hopkins: You'd think we'd at least be able to get an Epic Rap Battle going... Apr 26 '11 at 16:32
  • @Jon Hopkins: depends how caffeinated the programmer is...
    – Amy
    Mar 7 '12 at 8:44

Neither is superior since they complement each other

The Wikipedia definiton of a Systems Analyst is

A systems analyst researches problems, plans solutions, recommends software and systems, and coordinates development to meet business or other requirements.

The analyst programmer (although no definition is immediately available) is more tuned towards trawling for business requirements and then implementing them in code. If the business is geared towards an immensely complex scientific calculation on a standard hardware platform then knowledge of algorithms (i.e analyst programmer) is more relevant and therefore superior. If the business is creating those platforms then the reverse is true. To upgrade yourself, establish those areas that you are weak in and are interested in improving. Then apply yourself to learning them.


This is similar to other questions about job titles. The merit or meaning of the title is localized to one's region and employer. You need to look at the job descriptions to determine the differences.


Systems Analyst isn't necessarily a higher position than Computer Programmer, but it is different. A Systems Analyst bridges the gap between a project's owners and users (the business side), and its designers and programmers (the technical side). A Systems Analyst needs to have both the high-level technical knowledge and the knowledge of the business to be able to communicate effectively with both groups (and usually act as translator). An SA is mostly involved in the definition, requirements gathering, and design phases of a project.


I worked as one for an internship. Basically it is a totally artificially created position due to corporate nonsense that doesn't need to exist at all and should be put right next to ethical adviser.

Why? Because programmers/managers should be doing all of the things delegated to analyst. Usually the assumption is that programmers can only code and can't design or that they cannot communicate properly with people.

Personally I really don't like the fact that such position even exists.

In terms of pay, they get paid much lower on average.

  • I agree with this on a deeper level.
    – Anurag
    Nov 26 '15 at 17:32

I personally would expect a system analyst to do less coding than a programmer, but it's hard to tell without knowing what your job actually is.

I recommend taking a look at job listings in your area. Compare the job responsibilities listed in programmer positions with what you do and that'll help you figure out if that's the way you want to go.


I currently hold a Systems Analyst position, but all of my duties are comprised of software development/maintenance.

The meaning of the title and the hierarchy of positions depends completely on the company. I think your actual responsibilities are more important than the title in your email signature.


This question makes me think of what's the difference between Development Analyst and Systems Analyst.

In the country I'm currently in, my title is Dev. Analyst. We also have Systems Analyst and frankly the only difference I see is that Dev. Analysts seem to work more with the actual implementation using code, which is equivalent to what you are calling 'Computer Programmer.'


Yes it's definitely subjective to the employer, I also hold the Systems Analyst title, and here we play the role of On Call Systems Administrators to the tech support and development groups, so that our Systems Engineers can focus proactively on projects, where our role is to be more reactive. though we also have proactive tasks towards dept projects, as well as being a 3rd tier final escalation point for tech support tickets, as well as pushing through the developers changes weekly into production. Everyone with my title does have some coding experiencing, but some people on my team, don't know more than Batch, so it's definitely not a development-centric role, i have experience with multiple programming / scripting languages, but don't count myself as a developer.

Not the answer you're looking for? Browse other questions tagged or ask your own question.