In this post, we will look at some of the characteristics that make a successful DevOps culture. Understanding the critical elements that highlight a successful DevOps culture is important as you start your DevOps transformation journey. DevOps culture is fundamentally about two things; communication and collaboration.
That’s all well and good, but how do you start that journey to improving both communication and collaboration, and how do you identify when you are making progress?
Markers of success
From all the companies I have worked with and contacts I have spoken to about the success and failure of DevOps, five things stick out for me:
- Pushing change from the very top
- Autonomy and empowerment
- Redefining trust
- Measuring and rewarding results
- Craving improvement
Let’s now take a look at these five things in more detail, to understand them better.
Pushing change from the very top
Start at the bottom. Change, particularly cultural change, cannot occur without top-down sponsorship. However, it does not truly take hold until it is carried out at the smallest unit possible – that unit is individual teams. Implementing DevOps at the team level, allows them to demonstrate what is possible, identify roadblocks, and overcome them while the issues are still manageable. Indeed, successful transformations are typically the result of a journey of continuous improvement rather than a “big bang” execution.
Autonomy and empowerment
DevOps requires engineering teams to take on responsibilities that were previously held by other functions. Engineering teams that are empowered to push change through to production must embed controls in their processes to provide assurance to the organisation that testing, risk management, and escalation protocols are in place. Control must be built into the process from the start.
Automation can be extremely beneficial. However, it is not simply a matter of digitising existing, routine, time-consuming tasks. It is about rethinking how controls are implemented, so that they occur by default within the process and without the external interference that typically causes bottlenecks.
Traditionally, organisations have built trust through audit-based control frameworks that use checklists and audits of activity to improve quality, assurance, security, compliance, and risk mitigation. That is however not how DevOps works. Control functions must trust that product teams can and will be responsible stewards of organisation wide principles and requirements. Clearly, trust must be earned, but this typically occurs quickly when teams collaborate and demonstrate success through small pilots, prior to scaling initiatives. This trust can and will lead to product teams being empowered to make the right and safe changes for the organisation.
Measuring and rewarding results
When people are measured and rewarded for the right things, cultures change. Everything from C-level performance contracts to weekly sysadmin objectives, must be aligned with strategic business outcomes and the behaviours required to achieve them.
The desire to improve—the process, the quality, the speed, and the impact of each and every individual—must pervade every corner of the organisation. That necessitates shifting mindsets from “Let’s make it perfect” to “Good enough, let’s see how it works, and continue to iterate.” To support this cultural change, flexible systems and ways of working must be put in place to identify issues and opportunities, make quick adjustments, and test again.
By Martyn Coupland, Head of DevOps at Transparity