Top 10 reasons why developers are unhappy — they can be fixed

Startup founders tumble over each other to get skilled programmers, software houses can’t easily handle all the demand, while both complain the number of graduating developers is too small. No wonder why developers’ depressions nowadays mostly are related to their jobs.

A research team from universities in Trondheim, Bolzano, Stuttgart and Helsinki recently wrote an article called ‘On the Unhappiness of Software Developers’, in which it reported about a developer satisfaction survey that was completed by about 1300 programmers.

programmers participating in survey
The participating respondents of the survey

Two positive outcomes for the software industry

Two positive outcomes came to the surface after examining the answers of the programmers. On average, software developers are a slightly happy group of workers, expressed by a 9.05 on a scale of -16 and +24. Additionally the ones that aren’t, are unhappy because of company factors rather than their private life. So, employers have an opportunity here to increase the satisfaction of their programmers and by this enhancing their overall performance.

Top 10 factors that make developers unhappy

Take a look at the top 10 of dissatisfying factors and consider them to be points of particular interest for the coming years. Let’s make the lives of our programmers much easier!

programmer stuck in a problem
Examples of potential solutions:
  • choosing more efficient programming languages,
  • more collaborative ways of coding
  • a company culture that supports openness about any kind of problem.
not enough time for programmers because of deadlines
Examples of potential solutions:
  • choosing more efficient programming languages,
  • improving product management,
  • introducing more time-saving engineering workflows,
  • more efficient, time-saving infrastructures such as serverless computing.
Low code quality and programming practice
Examples of potential solutions:
  • again choosing for more efficient programming languages,
  • more collaborative ways of coding,
  • in-company courses tackling the most common bad coding practices
  • more efficient and time-saving infrastructures such as serverless computing, so that the team gets the opportunity to focus more
colleagues performancing less than the expected
Examples of potential solutions:
  • more collaborative ways of coding,
  • a company culture where engineers constructively improve each other,
  • in-company courses tackling the most common bad coding practices,
  • better supervision over developers’ performances.
Not experiencing efficiency in work
Examples of potential solutions:
  • more collaborative ways of coding and as such helping each other,
  • a company culture that supports openness about any kind of problem,
  • in-company courses about best-practices and key concepts for the business logic of the involved software project.
tedious and monotonous work
Examples of potential solutions:
  • automation of repetitive work such as prefabricated code,
  • compensating challenges such as hackathons,
  • introduce the 80/20 rule,
  • gamification around several recurring software development tasks.
no explanation for broken code
Examples of potential solutions:
  • more collaborative ways of coding and as such helping each other,
  • a company culture where engineers constructively improve each other,
  • in-company courses tackling the most common bad coding practices,
  • choosing more proper coding languages,
  • more uncompromising style of product management
bad management or leadership
Examples of potential solutions:
  • more collaborative coding, also involving higher-level decision making,
  • more decision empowerment to the ones most closely involved to certain parts of projects,
  • a company culture more closely related to holacracy,
  • a company culture where engineers constructively improve each other
resources limit software development
Examples of potential solutions:
  • a new stack,
  • more proper programming languages,
  • another infrastructure,
  • a better assessment process for resources selection
private problem - not job related

Examples of potential solutions:

  • a company culture that supports openness about any kind of problem.

Sources research results and images:

Graziotin, Daniel; Fagerholm, Fabian; Wang, Xiaofeng; Abrahamsson, Pekka (2017): Online appendix: the happiness of software developers. figshare. Collection.


Originally published at Jexia.