5 Reasons Why Software Developer is a Great Career Choice

This week I will give a presentation at a local high school on what it is like to work as a programmer. I am volunteering (through the organization Transfer) to come to schools and talk about what I work with. This school will have a technology theme day this week, and would like to hear what working in the technology sector is like. Since I develop software, that’s what I will talk about. One section will be on why I think a career in software development is great. The main reasons are:

5 Reasons

1 Creative. If you ask people to name creative jobs, chances are they will say things like writer, musician or painter. But few people know that software development is also very creative. It is almost by definition creative, since you create new functionality that didn’t exist before. The solutions can be expressed in many ways, both structurally and in the details. Often there are trade-offs to make (for example speed versus memory consumption). And of course the solution has to be correct. All this requires creativity.

2 Collaborative. Another myth is that programmers sit alone at their computers and code all day. But software development is in fact almost always a team effort. You discuss programming problems and solutions with your colleagues, and discuss requirements and other issues with product managers, testers and customers. It is also telling that pair-programming (two developers programming together on one computer) is a popular practice.

3 In demand. More and more in the world is using software, or as Marc Andreessen put it: “Software is Eating the World“. Even as there are more programmers (in Stockholm, programmer is now the most common occupation), demand is still outpacing supply. Software companies report that one of their greatest challenges is finding good developers. I regularly get contacted by recruiters trying to get me to change jobs. I don’t know of many other professions where employers compete for you like that.

4 Pays well. Developing software can create a lot of value. There is no marginal cost to selling one extra copy of software you have already developed. This combined with the high demand for developers means that pay is quite good. There are of course occupations where you make more money, but compared to the general population, I think software developers are paid quite well.

5 Future proof. Many jobs disappear, often because they can be replaced by computers and software. But all those new programs still need to be developed and maintained, so the outlook for programmers is quite good.

But…

What about outsourcing? Won’t all software development be outsourced to countries where the salaries are much lower? This is an example of an idea that is better in theory than in practice (much like the waterfall development methodology). Software development is a discovery activity as much as a design activity. It benefits greatly from intense collaboration. Furthermore, especially when the main product is software, the knowledge gained when developing it is a competitive advantage. The easier that knowledge is shared within the whole company, the better it is.

Another way to look at it is this. Outsourcing of software development has existed for quite a while now. Yet there is still high demand for local developers. So companies see benefits of hiring local developers that outweigh the higher costs.

How to Win

There are many reasons why I think developing software is enjoyable (see also Why I Love Coding). But it is not for everybody. Fortunately it is quite easy to try programming out. There are innumerable resources on the web for learning to program. For example, both Coursera and Udacity have introductory courses. If you have never programmed, try one of the free courses or tutorials to get a feel for it.

Finding something you really enjoy to do for a living has at least two benefits. First, since you do it every day, work will be much more fun than if you simply do something to make money. Second, if you really like it, you have a much better chance of getting good at it. I like the Venn diagram below (by @eskimon) on what constitutes a great job. Since programming pays relatively well, I think that if you like it, you have a good chance of ending up in the center of the diagram!

Career Planning

14 responses to “5 Reasons Why Software Developer is a Great Career Choice

  1. Great article! I really like it.

    But there are also some drawbacks like overhours and the fact that there are only a few jobs where individual failures are always directly visible to and tracked by a team. 😉

    Best Regards,
    Martin

  2. Hi Martin,

    Yes, excessive overtime can be a problem (as in all jobs), but good companies should notice that your are not more productive even though you are working longer hours.
    Hopefully pair-programming, code reviews and testing means that few individual mistakes slip through.

  3. Pingback: 5 причин выбрать карьеру разработчика ПО | Java

  4. I am glad that my early education consisted of having us kids become familiar with technology. Luckily, I was one of those people that didn’t shy away from it, but would embrace it. Technology is leading the world and when I talk to parents in regard to their children, I would tell them that I would get involved with software. I know there are concerns about outsourcing and how someone can compete with that, but you even mention yourself that there is still a demand for local developers that outweigh the cost of outsourcing. This is a great article that I would love to share with those parents.

  5. Pingback: HelloWord! | Future #Coder101

  6. Yes quality developers are on high demand, I agree to every single word drafted. If you want to win as well as earn we should do something which we love too. Working as one of lead developer at Mobiloitte, I would like to add from my experience: the Venn diagram genuinely explained everything. Also, i would like to discuss on maintaining a work life balance, we shouldn’t be so involved that we forget our own well beings.
    Overall i would say – simple, informative and a marvelous post. Nice write-up.

    Cheers
    Mark

  7. Hi… Uhm….is true that Software developers are struggling to get jobs out there because my brother keeps disencouraging me that there are less jobs out there & they can only be like gig or part time…..I’m really confused 😕…..is it a great career 4 me because all of the 5 reasons mentioned in the article I am them….please fill me with Intel… ..

  8. Pingback: Is an Online Computer Science Degree as Valuable as One You Could Get on Campus? | Rabid Geek

  9. Yes,you are right there is great demand of good programmers as well as quality software.Number of software companies are increasing with time and also the number of software developers.Many software companies provide application development solutions but important is quality assurance and customer satisfaction. We can achieve success in this profession if we actually enjoy our work …

  10. Pingback: Do You Really Earn More As A Software Engineer? - GineersNow

  11. Great choice in term of what? Salary? Career growth? or better workplaces?

  12. I must thank Henrik for giving us such an informative article. The author’s love for software development is in every word of this article. Especially, the part where he has explained about the truth of outsourcing can really inspire young people who want to take the profession.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s