Figure 1. Case Example: high-level developer journey of an automotive update platform.

3. Shorten feedback loops for developers to improve frequent workflows

Working in small batches allowing short feedback loops is the core of agile and lean product development. Fast customer feedback allows us to learn if we are doing the right thing. The same way developers require feedback from various systems in order to learn if they are doing the thing right. 

In his research on developer effectiveness, Tim Cochran recommends identifying developers’ feedback loops and optimizing them by making them fast and simple. He found that “feedback loops for developers in highly-effective environments are significantly shorter than those in environments with a low effectiveness.“

Feedback LoopLow EffectivenessHigh Effectiveness
 Validate a local code change works 2 mins 5-15 seconds (depending on tech choice)
 Find root cause for defect 4-7 days 1 day
 Validate component integrates with other components 3 days - 2 weeks 2 hours
 Validate a change meets non-functional requirements 3 months 1 day - 1 week (depending on scope of change)
 Become productive on new team 2 months 4 weeks
 Get answers to an internal technical query 1-2 weeks 30 mins
 Launch a new service in production 2-4 months 3 days
 Validate a change was useful to the customer 6 months or never 1 - 4 weeks (depending on scope of change)

Figure 2. Examples of developer feedback loops. Source: Tim Cochran, Maximizing Developer Effectiveness

This is a long list and measuring all of this might be overwhelming at first  – and not all of it will be equally relevant to you. Start by looking at the feedback loops in your developer journey. What is performed several times a day and causes most pain and/or inefficiency? Start there to make improvements and continuously measure progress.

4. Enable collaboration to eliminate inefficient silos and foster mutual understanding

A decade of State of DevOps reports has shown that the ability of different disciplines to achieve win-win outcomes is amongst the top predictors of IT performance. While this initially mainly referred to development and operations, the 2020 report is expanding this concept by defining DevOps as “enabling people to collaborate with each other towards a common business goal.”

Achieving this might be easier than you think. Start by hosting joint lunch breaks where you provide food or other get-togethers so people can meet in an informal way. Or start creating opportunities and space for actively sharing information by hosting lightning talks, internal conferences or hackathons where employees from different teams and departments can come together and learn from each other. Opening daily standups for colleagues from other teams is another option to foster mutual understanding and create empathy for each other, especially for teams that have strong dependencies.

Need more inspiration? In their book “Team Topologies” Matthew Skelton and Manuel Pais suggest that team interactions can be nourished further by fostering co-location and introducing shared tools.

5. Foster a culture where team members feel safe to experiment and encouraged to innovate

While enabling collaboration can be achieved in a relatively short time frame, the following needs a bit more effort and patience: creating a healthy and safe environment for your teams in which they can thrive, innovate and create business value.

If you have doubts about your organization's environment aka organizational culture, check out the characteristics analyzed by sociologist Dr. Ron Westrum on that topic. How are you treating people that bring bad news? Does failure lead to scapegoating or investigation and learning? Is novelty in your organization considered as a threat or rather an exciting opportunity?

Pathological (Power oriented)Bureaucratic (Rule oriented)Generative (Performance oriented)
 Low cooperation Modest cooperation High cooperation
 Messengers "shot" Messengers neglected Messengers trained
 Responsibilities shirked Narrow responsibilities Risks are shared
 Bridging discouraged Bridging tolerated Bridging encouraged
 Failure leads to scapegoating Failure leads to justice Failure leads to inquiry
 Novelty crushed Novelty leads to problems Novelty implemented

Figure 3. Westrum's typology of organizational culture. Source: Ron Westrum, "A typology of organisation culture"

Google, which has done extensive research with its workforce on what makes teams successful, found that they share one common characteristic: psychological safety or in other words “the belief that one will not be punished when making a mistake”.

So why should you care and what does that have to do with developer effectiveness? Google’s researchers found that individuals on teams with higher psychological safety are less “likely to leave, are more likely to harness the power of diverse ideas from their teammates, bring in more revenue and are rated effective by executives twice as often.”

Netflix, who are considered a role model for DevOps, attribute a major part of their success as a technology company to a healthy culture and thinking. What are they doing differently? They hire managers to help engineers do their jobs. The job of a manager is to ensure that the people they work with have a constant flow of context of other departments' decisions (“the business”), thus enabling delivery teams to make well-informed decisions themselves instead of being dependent on their managers (“context over control”).

Considering your developers as customers can be a competitive advantage  

If you are now wondering “Wow these are great points! But where do I begin?”, start by learning more about your customers. Interview and observe some of them, then map out their journey. From there you can identify opportunities to shorten feedback cycles and build a case to get more product capabilities in your technical product or platform team.

By doing so, you have the opportunity to uncover and realise mutual benefits for the developers and the business. A good developer experience can accelerate your software delivery and thus, reduce your time to market. It can enable innovation through flexibility and experimentation. And keeping in mind the competition for talent, a good developer experience might be your differentiator to attract and retain tech talent.

Want to learn why companies should invest in a good developer experience today? Read more in part 1.