Microsoft recently published its first annual Enterprise DevOps Report. As one of the co-authors, I believe the findings and recommendations are invaluable to any enterprise undertaking a DevOps transformation. I’ve highlighted a few here to provide a snapshot, hopefully encouraging you to download and read the entire report.
Central to Microsoft’s recommendations are the results from McKinsey’s research Developer Velocity: How software excellence fuels business performance. The report summarises the findings, but if you’re interested in the detail you can access the full overview here.
The Developer Velocity Index
So, what is Developer Velocity? According to Microsoft, it’s not just about increasing the speed of software delivery, it’s also about unleashing ingenuity. In other words, ‘turning developer ideas into software that supports the needs of your customers and the goals of your business’.
Developer Velocity is a compound metric derived from the assessment of organisations’ software delivery performance. It draws on 46 unique measures within 13 categories, which can be seen here.
McKinsey’s research established Developer Velocity scores for 440 large enterprises through in-depth surveys with senior executives. These scores were then compared to various business success metrics.
The findings were clear: a high Developer Velocity Index (DVI) score strongly correlates with business success. Top quartile DVI companies outperformed bottom quartile DVI companies on revenue growth by a factor of 5x. The below graphic provides further examples.
How to improve Developer Velocity
Knowing that a high DVI score is great for business is all very well. The question is, how do you get there?
Microsoft’s Enterprise DevOps Report holds some of the answers.
Large enterprises have to take a proportionate approach to areas such as security and governance, which can hinder Developer Velocity. The report’s authors felt it was important to explore factors like these, offering practical guidance to help enterprises on their DevOps and DVI journey.
For 2020-21 we initially decided to drill down into five areas. When Covid-19 hit we added another – Distributed Teams & Remote Working. As the pandemic unfolded it became apparent that many organisations were struggling with the impact this had on Developer Velocity.
So, the six areas covered by the report are:
- Product Management
- Distributed Teams & Remote Working
For each section, the report outlines challenges organisations face and how they might be resolved. We also include a relevant case study and recommended ‘next step’ resources to use in creating an action plan.
Make the ‘right’ thing the ‘easy’ thing
I won’t explore all six areas in detail here – that’s what the report is for, after all. However, the summary conclusions (on page 51 of the report and reproduced below) are worth a standalone discussion.
As we looked at each area, we discovered a clear pattern across the recommendations.
First off, breaking down silos is essential. From here, you can create autonomous, product-aligned teams. These teams can achieve their innovation goals via self-service platforms with the necessary governance, compliance, security and quality built-in. In this way, the ‘right’ thing to do becomes the ‘easy’ thing to do.
Inner Source principles are beneficial too, in the build of reference architectures, reusable code libraries and infrastructure-as-code and configuration-as-code templates. Again, this is about ‘building-in’ security, governance and other vital characteristics by default.
Finally, and most importantly of all, comes the creation of feedback loops to empower learning by building observability into systems. This is the foundation of a ‘learning culture’ that encourages people to use data to continuously improve.
Enterprise DevOps Report conclusions
|Shifting to autonomous, product-aligned teams that use continuous delivery practices, DevOps toolchains, and cloud hosting to accelerate product delivery and improve developer velocity.|
|Implementing shared, self-service platforms that have the necessary governance, compliance, security and quality built-in, making the ‘right’ thing to do also the ‘easy’ thing to do.|
|Embracing an InnerSource mentality to share and re-use code and best practices across the enterprise, but also to foster a collaborative ethos of continuous improvement with shared ownership and accountability.|
|Leveraging automation wherever possible to reduce the time spent on repetitive work, freeing teams to focus on providing business value and innovating, while avoiding operator overload when dealing with massive volumes of data, alerts, etc.|
|Devising standardised reference architectures around common cloud infrastructure and application patterns, then using DevOps automation tactics like infrastructure-as-code, and configuration-as-code to move these reference architectures from Visio diagrams into reusable code templates that accelerate widespread adoption.|
|Breaking down the silos, not only between Dev and Ops, but also between the centralised teams that establish the standards of quality, security, and governance, and the product teams that than need to conform to these standards. Teams that have contributed to the standards and governance processes are more likely to conform to them.|
|Measuring and learning – observability is key to the success of enterprises. It not only enables them to measure quality and performance, but also to report on it, to thus create the feedback loops that enable organisations to learn, improve and optimise all their processes and technology.|
There is a lot of valuable content (and three months of my life!) in Microsoft’s Enterprise DevOps Report 2020-21. You can download it in full here.
Are you interested in a deep dive on the report and its recommendations? If so, we are offering free 90 minute sessions with me (@TheOpsMgr).