Driving Feature Velocity through Cultural Change: Why DevOps puts Mindset before Technology
DevOps accelerates the delivery of stable, high-quality software from concept to customer by creating dynamic pipelines of continuous integration and delivery (CI/CD). A combination of cultural philosophies, practices, and tools, DevOps can increase an organization’s ability to deliver applications and services at high velocity. It can modernize operations and legacy technology infrastructures that limit the ability of many companies to compete in today’s data-driven software economy.
Culture is at the heart of digital transformation.
Many build advanced DevOps pipelines and are disappointed when they don’t work properly and they’re not delivering software faster. These companies containerize their applications and hire a few DevOps engineers thinking that the right tools and expertise are all it takes to create fully-functioning CI/CD pipelines.
DevOps pipelines will not work unless supported by cultural change.
Building state of the art pipelines that aren’t backed by DevOps cultural practices is like buying a Porsche that you only use to pick up milk from the nearby corner store. While the tools may have the ability to deliver software quickly, continuous integration and continuous delivery are ultimately processes that are the results of culture.
Here are 9 principles that all DevOps cultures work towards.
DevOps is all about removing the silos that have traditionally separated development and operations. It’s about making developers aware of operational constraints so that they can own the solution, while simultaneously making operators work with developers to enable visibility into infrastructure and application monitoring constraints. Tasks that usually took place later in the release pipeline are baked into the development phase, aligning everyone’s goals and allowing code to be released in smaller batches, more quickly and frequently.
Command and Control
By removing traditional siloes, DevOps encourages alignment between teams. Instead of large teams taking ownership of specific tasks, DevOps has small teams taking ownership of individual projects. These teams are empowered to make their own choices and see projects to completion.
A culture filled with trust is at the heart of DevOps. Employees that are trusted by their managers are more likely to perform well and feel happy at work. When not micromanaged, they can take initiative for the organization. Teams that trust each other are more likely to work in alignment and collaborate. Trust is created by open communication and kept promises.
DevOps philosophies view failure as something to be expected rather than avoided. When failure happens, it’s acknowledged and managed. This gives employees the freedom to hold themselves accountable for their mistakes, learn from them, and improve both themselves and the organization.
When failure is accepted and managed instead of reprimanded, teams lose their fear of failing. This prevents stagnation and encourages an honest flow of information between teams.
Employees that lose their fear of failure are more able to experiment and take risks. When management encourages experimentation, teams can find creative solutions to sustain innovation.
Teams are open to learning and share what they learn with other teams. Failure is seen as an opportunity for all teams to grow from, and teams know more about what has worked for the organization and what hasn’t. Knowledge-sharing helps organizations take full advantage of experimentation.
DevOps empowers teams to own the full software release cycle, starting from development and ending with production. They are empowered to make their own choices.
Well executed, DevOps will center your development and operational teams on business imperatives. It will allow you to deliver features faster and with the ability to quickly verify their impacts on your product. The successful adoption of DevOps cultural practices will lead to high velocity software releases that are focused on customer needs and that position you as a market leader and innovator.
DevOps ultimately isn’t a fixed destination but a constant process of improvement. Once principles of trust and learning are instituted, teams become empowered to take initiative, experiment, and share knowledge with each other. Teams are aligned and can release software at a much faster pace.
A CI/CD pipeline with fancy tools and no culture change will not have the feature velocity that DevOps can provide. Tools may have the capacity to release software quickly, but it’s really culture and people processes that DevOps is all about. Change your culture before your tools so that your empowered teams can choose tools that most suit their use cases.
Companies that weave these nine principles into their culture will accelerate their delivery of goods and services and be more able to respond to customer demand.