Having a satisfied development team not only creates a positive and healthy work environment but is also the key to business success. With developers in short supply and looming economic uncertainty, getting more out of existing teams is a competitive advantage. To retain and motivate top talent, many are turning their efforts towards improving developer happiness and job satisfaction.
The pitfall is that developers aren’t machines. You can’t just turn a dial and crank them into high gear. Treating developers like gears in a machine leads to toxic practices (we’re looking at you, developer ranking chart) that ultimately cause dissatisfaction and hurt productivity.
Great development and engineering teams aren't built; they're grown. Unlike building a bridge or a skyscraper where you can predict exactly what's needed and use materials that behave in a predictable way, software and development teams evolve and change in response to their environment. An engineering manager works more like a gardener — tending an environment to help their team and products flourish in what will ultimately be unexpected ways.
We build static things; we grow things that we want to evolve. And when it comes to improving the developer experience and valuing developer happiness, the investment is well worth it. McKinsey & Company found that the savings produced by reducing each developer’s wasted time by five minutes on a team of 500 developers could support a full team of developers working on standardization.
In Garden’s recent whitepaper, we looked at solutions DevOps and engineering managers can implement at the enterprise level to reduce friction and increase developer happiness and productivity.
In this article, we’ll further explore the topic of developer happiness and how it directly impacts performance and productivity. Then, we’ll go through some tools and techniques to cut down on complexities and ease developers' daily frustrations.
Developer happiness and productivity
Pull quote for this section: “Putting DX at the center of their efforts can help organizations improve employee attraction and retention, enhance security and quality, and increase developer productivity.” McKinsey & Company, "Why your IT organization should prioritize developer experience”
It’s easy to make the connection between how developers spend their time and productivity. Freeing developers to spend more time on more productive tasks equals more productivity. But there’s another component at play here: developer happiness.
Researchers at the University of Oxford found that happy workers are 13% more productive compared to discontent colleagues working the same number of hours. Forbes furthered this research with a focus on developers and found that happy developers are 1.8 times more likely to deploy to production multiple times a day compared to their grumpier counterparts. Now that’s a nice way to improve your deployment frequency!
What’s more, Forbes found that happy devs in a mature devops organization are 32% more likely to recommend their company to others.
More productive teams are happier
Pull quote/featured stat for this section: High-performing software engineering teams deliver 53% better outcomes in employee experience and productivity compared with low-performing teams, according to the 2020 Gartner Software Engineering Team Effectiveness Survey.
It turns out the things that make developers happy make engineering managers and companies happy too. Over 92% of developers in mature DevOps organizations showed high levels of job satisfaction, according to Forbes. Compare that to only 61% of developers in immature DevOps practices.
Developers are happier when they feel more productive. In fact, feeling unproductive at work was the number one (45%) cause of unhappiness among developers — even above salary, according to a StackOverflow survey on developer happiness.
When we asked developers what’s frustrating them at work, it wasn’t surprising to see that factors related to productivity (or a lack thereof) were high on the list. Developers know their time is valuable and it doesn’t feel good to spend that time waiting for feedback, pipelines and builds.
Chart title: What daily tasks contribute to developer frustration?
Source: Garden original research
Chart title: What would a developer’s ideal day look like?
Source: Zenhub's 2022 Software Developer Happiness Report
Caption: Developers want to spend more time coding and deploying that code. And less time in meetings (wouldn’t we all like that?).
How to improve developer happiness and productivity
Remove roadblocks
Analysts at Gartner and McKinsey both recommend a “servant-leadership” approach that focuses on removing roadblocks and empowering teams to be successful. “When leaders identify and resolve roadblocks, for example, their teams are 16% more effective. Likewise, when leaders take on coordination with stakeholders like project managers or governance partners, they up team effectiveness by another 11%,” writes Laura Starita, in Garner’s “3 Ways to Make Your Software Engineering Team 50% More Effective”
Empower developers
Developers know where their time is wasted and can be valuable partners in creating better standards and processes. Involving developers in standard setting makes them 23% more effective than their counterparts who don’t participate in standard setting, wrote Starita.
Make work a happy place (psychological safety)
Toxic metrics and pushing developers to perform better without improving the process or their experience are unfortunately still problems in the industry. Creating a safe and happy workplace is critical to helping developers do their best work and be more productive. The most important cultural attribute is psychological safety, according to research on developer velocity by McKinsey & Company. This means protecting developers’ ability to experiment and fail, and investing in tools and systems that minimize the cost of those failures.
Invest in best-in-class tools
McKinsey & Company identified best-in-class tools as the top contributor to business success — enabling greater productivity, visibility, and coordination. Yet only 5% of executives ranked tools as one of their top-three software enablers. “The underinvestment in tools across the development life cycle is one reason so many companies struggle with “black box” issues,” write researchers in “Developer Velocity: How software excellence fuels business performance.”
Garden provides the insights engineering managers need
As indicated–both in this article and our whitepaper–engineering managers need timely data to fix friction points and bottlenecks before they become a pain point for developers. And they want insights that help them forecast speed of delivery and keep projects on track.
Simply by using Garden, developers generate a ton of neatly structured data. Garden’s Stack Analytics and Stack Streams give you access to this data, both in real-time and in aggregate. You can see logs for everything going on in your project; understand the flows between all your builds, deployments and tests; and get more actionable information at every turn.
We’d love to show how easily Garden can integrate with your existing stack and alleviate pain points for you and your developers. Let’s schedule some time to talk.
In the meantime, show your developers some love and invite them to use Garden’s free tool built for developers by developers. If they use it and love it, they’ll have you to thank.