Developer productivity is one of the most important yet overlooked metrics in DevOps. Gene Kim’s Unicorn Project provides five ideals to help software development teams reduce friction and create an environment of high productivity, innovation, happiness, and engagement. In this article, we use Kim’s ideals as a framework to offer tips for leaders who are looking to improve their development teams.
1. Locality and Simplicity
Locality and simplicity can help leaders resolve the complexity and internal hindrances that inevitably arise when implementing DevOps and improving team dynamics. Leaders can encourage locality and simplicity by:
- Outlining clear priorities and clarity on cross-team technical and design decisions.
- Giving developers the autonomy to handle internal details and any interruptions that arise.
- Creating simple and concise internal processes and approvals.
2. Focus and Flow
Leaders can facilitate focus and flow in work environments by giving teams the authority to exercise their expertise with minimal oversight. When developers are encouraged to take the initiative, make suggestions, and implement improvements without waiting for permission, they are more engaged and productive and do their best work.
3. Improvement of Daily Work
By design, development teams will be the first to notice day-to-day friction; they know where wait states exist and how to address them. Leaders can reduce friction, encourage continuous improvement, and enhance daily work by:
- Paying down technical debt*
- Improving architecture
- Refactoring processes
- Encouraging autonomy.
In addition, taking advantage of Agile ceremonies, such as retrospectives, provides a channel to escalate friction that they cannot immediately fix
*Technical debt can have a notable impact on a team’s daily work because it builds up in the background while teams focus on visible work. While it may be necessary for the short term, it comes with consequences later, such as degraded performance due to poor coding practices or unnecessary complexity. The impact of technical debt is significantly less taxing when teams immediately resolve it vs. waiting weeks or months. To continuously pay your technical debt down, allocate a budget for each sprint during sprint planning sessions.
4. Psychological Safety
Safety is a crucial aspect of any team. When the development team members feel safe to share their opinions and ideas without fear, they benefit from better decision-making, improved information sharing, faster innovation, and increased productivity. Leaders can create psychological safety by:
- Viewing mistakes and failure as an opportunity for team members to grow.
- Emphasizing what was done well, praising success publicly, and highlighting what was learned.
- Utilizing private discussions to focus on how individuals can improve.
5. Customer Focus
The final ideal is all about solving for the customer. Development teams shift their perspective when they focus on the people using their code and its impact, allowing them to contextualize the work in a customer-focused way. To help developers better understand who will use the software and why they need it, leaders can:
- Use design sprints, a five-day process to solve critical business problems and pressure-test ideas with real users
- Join customer support calls for a day to hear from and talk directly with active customers.
While these actions may be initially uncomfortable, hearing customer feedback will motivate and empower your team.
Overall, Gene Kim’s five ideals can be used as a guide to improve developer productivity. Contact DragonSpears if you need help overcoming team challenges or improving team dynamics.