Phil Campbell CC BY 2.0
Programmers quit their jobs for lots of reasons. Development managers tend to focus on their current situation, which makes them think about reasons to leave in terms of what their programmers don’t like about their current jobs. This shouldn’t surprise you, considering the consensus about why people quit.
People quit their boss, not their job
We quit managers not jobs!
People don’t leave companies. They leave leaders!
People leave managers, not companies
Voluntary Turnover: They Usually Leave Their Bosses, Not Their Jobs!
However, programmers choose new jobs for different and more positive reasons, which is what this article is about.
1. Open-source software - using it and contributing
Programmers want to use open-source software, participate in open-source communities and work on open-source projects. Programmers want this for reasons too numerous or personal to list, but many boil down to the value of peer acceptance and sense of self-worth. And some programmers just like to socialise more.
2. Technical challenges and tech fashions
Programmers like to use fancy technology to solve hard problems. After all, motivation requires an element of technical mastery. Of course, fashion drives a lot of software architecture, and programmers want to think they’re learning up-to-date technology, rather than last decade’s languages, platforms, frameworks and libraries.
3. Tools & equipment - the best money can buy
The best equipment money can buy has a disproportionately magnetic effect on programmers. Not everyone works with two or three large displays, the most powerful computer, the most Internet bandwidth, an expensive office chair and a standing desk. These affect the working experience far more than perks like free food and drinks.
4. Development method
If you want to develop software in a particular way, by using techniques like Kanban or test-driven development (TDD), you need to work on a team and in an organisation that supports that. If you don’t, then you could change things, but most programmers don’t do change management. Programmers who learn about a better way to work want to work with like-minded people.
5. Roles - other roles combined with programming
Some programmers want to do more than only programming, in a combined role. Developing additional skills, such as project management, can make a programmer’s CV much more interesting. Working with more kinds of people and engaging with the outside world add balance to the nature of programming work.
6. Industry sector
Programmers working in some specific industries always to seem to want to get out. They might want to focus on a specific industry sector, or do more varied work across multiple industries.
7. Product vs service focus
Sometimes programmers want to move to product development instead of service delivery or vice-versa. Service delivery, such as working for an IT consultancy, offers more variety of work, while product development gives you the opportunity to work on your own product instead of someone else’s, and tends to offer more technical freedom. Programmers work within many different business models and may find it appealing to get a change of scene.
8. Location - walking/cycling to work or working from home
Nobody really likes commuting - spending one or two hours per day in a train or car. People accept commuting when they have no alternative; when an alternative becomes available, it promises a radical lifestyle improvement.
9. Money - more of it
Salary doesn’t rank highest on anyone’s list, but it does make the list because of how it can translate to personal life goals. Sometimes, people need more money to enable or support a change in their personal situation, such as moving out of shared accommodation or starting a family.
10. Management approach and company culture
Last but not least, culture eats everything else for breakfast, and people want to work somewhere they fit in just as much as managers want to hire people who are a good fit. Company culture can be hard to describe, but the management approach largely determines culture and everyone is looking for a way to reinvent management. Programmers might not all be looking for a company that uses Holacracy, but they probably at least want to work for someone who understands software development.