What's the difference between programmer and developer? [duplicate]

Solution 1:

I view the set of programmers as a subset of the set of developers. A user interface developer might not do any programming at all, but still be essential to the project. As an example from the gaming industry: the development team would have many people, with some contributing to the game layout, some to sound effects, some by testing the reliability, and some by programming. I'd include them all when asked how many developers there are in the team.

In the industries I have been involved in, the term we used most often was "engineer", even when the person did just programming. But that probably had to do with the field I worked in.

In general, I would prefer "developer" or "software developer" in formal language (in a résumé, or a report, for example) and "programmer" in informal, spoken language ("A programmer went into a bar and said...").

Solution 2:

While the terms can be and often are interchangeable, I view a developer as someone who's involved in the whole process from requirements gathering, through specification and coding to testing and, yes, support. They might not be fully involved in all stages all of the time.

A programmer is someone who just concentrates on the coding and has little involvement in the rest of the process. This may be their choice of course.

As @sunpech points out in his comment most people writing software these days are (or should be) developers. You have to know much more than just how to code to write good software.


(This is the top answer by ChrisF to the same question on Programmers.SE)