This is a follow up to my blog post “Software Developer” blog post. Although I consider myself to be a programmer, not all programmers are software developers (as I described the term in the earlier post).

In the past, time and again I met people who were good (even excellent) programmers, but definitely no software developers. Some knew everything about C++ and used everything in their programs. Even in ways C++ was not intended to be used, just because they could. It was almost impossible to read their code, and they refused to write it in a way that was easier to understand. Because anybody who could not read the code was obviously not a good programmer in their opinion.

Some did not collaborate with their teams. Instead of working with them they searched bugs in the team’s code and tried to blame them. Sharing their knowlege with the team members did not happen, so there were large parts of the code base that nobody except them understood. Some totally rejected “new” technologies like XML or .NET.

Even though they were good programmers, it was impossible to work with them in a team to develop software. So, they were programmers, not software developers. I guess the difference between software developers and programmers is something like this:

venn diagram programmers vs. software developers

Update: A slightly different version of the venn diagram

I try to be a “software developer”, not only a programmer. I know I have to get a lot better at being one, and I probably need help from others. So: what can I do to become a better “software developer”? What do you do to become a better software developer? Please comment or contact me!

You might be also interested in… Learn more about how I can help you save money and earn money by improving your development practices.