Recently, there has been a lot of discussion surrounding the differences between software professionals based on their titles; a number of bloggers have claimed that there is some sort of intrinsic difference between ‘software developers’, software engineers’, and ‘programmers’. There are a few issues with this way of looking at the professionals in our industry: there is no accepted standard of what these particular titles mean, they fail to fulfil the traditional role of titles in an organization, and these types of arguments create derision amongst ourselves.
As much as some of us might prefer one title over another, there are is no industry-wide distinction between a Software Engineer, Software Developer, and a Programmer. In fact, in many companies these titles are mostly arbitrary. Additionally, there is no quantifiable difference in pay between the titles.
It is important to remember that before we all decided to give ourselves ridiculous and demeaning titles like ‘rockstar’ and ‘ninja’, the purpose of a title was to denote a person’s relative position and rank in an organization. Can you categorically decide who outranks who between a software developer and a software engineer? Even if one organization did have some sort of org chart with these titles ranked, it would not have too much, if any, meaning in the greater industry as a whole.
Since the titles are not uniform and they do not serve any other practical use, what are we using them for? Sadly, we have decided to draw non-existent distinctions between them and denigrate our fellow professionals; it seems to be a common theme on the internet these days that developers are somehow less technical than software engineers; in fact, the ‘Ruby hipster’ seems to be the new post boy for software developers everywhere. Further still, there seems to be a common theme of developers being in some way categorically less technical than their other counterparts. Naturally, there is no firm evidence for this, but still it persists. Even if there were evidence, why does it matter? If it were possible to prove beyond any doubt that engineers are severely lacking in the communications and social skills that developers supposedly have, would there be any blog posts pronouncing the superiority of developers and recommending that hiring managers aggressively screen potential employees based on those communications skills? Doubtful.
We are all coding. We are all using code to solve problems and enrich the lives of our users. In short, we are all doing the same job and in some way we are all colleagues. Isn’t it time we stopped trying to pigeonhole each other with meaningless titles that are based minor and often non-existent differences between us?
Further Reading
- ‘Developers vs. Engineers vs. Scientists’ — Khan, Jeremy
- ‘The Difference Between a Developer, a Programmer, and a Computer Scientist’ — Skorkin, Alan