Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

While I was looking to the definition of some common terms in en.wiktionary.org, I was surprised to what I found.

It define the programmer as

One who designs software. - wiktionary.org

and developer as

A software developer; a person or company who creates or modifies computer software. - wiktionary.org

I have a bachelors degree in IT and has a professional work in an IT department for almost a year, and I do always thought that their definitions are opposite.

Is this the real definition of a programmer and a developer or is it just because it is shortly-defined (but still, it seems to me like it should be the opposite)?

share|improve this question

closed as off topic by Mark Trapp Feb 20 '12 at 18:48

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here. If this question can be reworded to fit the rules in the help center, please edit the question.

What would be the correct definitions in your opinion? –  Geerten Feb 20 '12 at 10:29
@Geerten I think he's saying that to him, the definitions are switched... each term should have the definition of the other term. –  Hey Feb 20 '12 at 10:40
It's a wiki. The "edit" tab is up there in the top right corner. –  Michael Kjörling Feb 20 '12 at 10:46
I usually call myself a programmer no matter which role I'm playing in the current project. Dijkstra always wrote about "the programmer" and in the end it all comes down to that craft anyway. –  Raku Feb 20 '12 at 11:07
Interesting definitions. To me programming is the act of implementing a software design (or changes of it) and as such is one of the many aspects of software development –  back2dos Feb 20 '12 at 12:43

2 Answers 2

up vote 13 down vote accepted

Apart from protected titles, in general no job title is well defined outside of a single organization. Each organization may have a definition of what a title is and what someone with that title does but there is no guarantee that this matches with any other definition in the industry.

As for programmer, software developer or software engineer, I think the only thing you can conclude is that they (probably) do something to do with software.

share|improve this answer
+1 I'd add software engineer to that list as well. –  Sardathrion Feb 20 '12 at 12:21
I believe the worst case is the title 'systems engineer' which is afar as I can tell contains no information about the role at all –  jk. Feb 20 '12 at 12:44
While I agree with you, I think that software engineer speaks more to people outside the community. If you say you are a programmer, they think monkey bang on keyboard without stop. Engineer indicates that planning, logic, skill, and knowledge went into the code you wrote. –  Spencer Rathbun Feb 20 '12 at 14:11
@SpencerRathbun I don't know why, but after I read your comment, I looked at the address bar on my browser, so I think a lot of people disagree with you. You said "they think", "they" who? –  e-MEE Feb 21 '12 at 7:55
@e-MEE non-technical people, management, sales and so on. It is a generalization, but I think a decent one. YMMV. –  Spencer Rathbun Feb 21 '12 at 13:20

I agree with you about this fact. But the terms "programmer" and "developer" are synonyously used in the industry. It is always best to take the analogy of people employed in building a physical structure to clearly understand the scenario of people employed to create a well-crafted software. This analogy goes like:

Just like masons, "Programmers" are people who are engaged in laying the bricks and doing the hardcore work that makes the software to exist and function properly. On the other hand, just like architects, "Developers" are people who ensure the implementation of the approved and required design of the software.

And "Software Engineers" are like Structural Engineers who are concerned with crafting the best design after analysing the requirements, budget (time, money and resources) and constraints for the final Software product.

share|improve this answer
What about testers, technical authors, team leads, etc... –  Sardathrion Feb 20 '12 at 12:22
I'd say your definition of a software engineer is more akin to a software architect - which is a common high-end job title (at least here in the UK). –  MattDavey Feb 20 '12 at 13:31
@MattDavey: A software architect is a software engineer without an engineering degree or license, so they can't legally use the title "engineer". Of course, academic training only goes so far, then you need experience, which a software architect hopefully has in spades. –  Ben Voigt Feb 20 '12 at 14:27
@BenVoigt The academic and/or legal requirements to use the word 'engineer' in a job title are not universal (there are no such requirements here in the UK). I'm slightly surprised that a country which put such requirements on 'engineer' would not do the same on 'architect'. –  MattDavey Feb 20 '12 at 15:37
@BenVoigt Well yes, but then you'd still be completely incorrect. –  doppelgreener Feb 20 '12 at 23:27

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