Klemsy - Fotolia
While there's a lot of hype around DevOps, it isn't unwarranted. DevOps culture can -- and should -- yield significant and measurable benefits, such as improved productivity, increased development speed and fewer critical bugs in production environments.
Companies both large and small have implemented DevOps with great success. But first, teams need to carefully navigate a DevOps culture shift and set clear IT goals.
What is DevOps culture, anyway?
One of the best ways to explore a culture is to read its sacred texts. For DevOps, that includes The DevOps Handbook by Gene Kim. In the book, Kim discusses "The Three Ways," which represent the main tenets of DevOps culture.
The First Way is to think about the performance of an entire system or process, rather than a specific silo or team. From the first line of code to successful deployment, IT departments must focus on the big picture, and emphasize larger organizational goals rather than smaller local ones.
The Second Way focuses on feedback loops. A DevOps culture should accelerate and amplify feedback loops, enabling admins to identify and address any issues as quickly as possible.
The Third Way fosters a culture of continual experimentation and learning, which requires IT teams to take risks and set aside time for innovation. In a DevOps culture, celebrate -- don't admonish -- rapid experimentation and rapid failure. It's this cycle of experimentation, failure and lessons learned that continually improves a DevOps practice over time.
Set the right goals
The reality is that a DevOps culture shift looks unique in every company. However, there are general guidelines to ensure organizations proceed in the right direction.
The end result of a successful DevOps implementation should demonstrate two benefits:
1. Improved system reliability. When DevOps is implemented correctly, there are fewer hand-off points for work in progress, since the team is organized together.
For example, in a typical ticket submission process, the item can sit in a queue for days, but with DevOps, the team works together to make necessary changes more quickly with in-house expertise. This process doesn't absolve the team from change management duties, but rather amplifies the importance of good, quality changes.
When organizations break down silos for operations, security and other stakeholders, they can more quickly identify what, when and where changes are needed.
2. Increased throughput of application development. When DevOps is done right, IT teams work together to resolve problems efficiently. Established feedback loops quickly identify any problems in the application before it reaches production.
This means, when DevOps is implemented correctly, teams should spend less time on the backlog of critical bugs that reach customers and more time on the delivery of new application features.
Don't rush a DevOps culture shift
Once organizations establish the groundwork for a DevOps culture -- with the end goal of increased reliability and throughput -- they are ready to implement DevOps.
Start small and look for easy wins -- whether it's the automation of a simple task or an opportunity for teams to work across departments for the first time. To begin, select people from several departments to work together to tackle a small project.
Work to constantly make improvements. Try and find something weekly or even daily that DevOps teams can slightly improve. DevOps is a gradual process; just because it has been implemented doesn't mean code will fly through the repository.
Finally, get the teams comfortable with experimentation. Enable room to play without a fear of failure. This aspect is arguably the most challenging of DevOps, and although there will always be some ugly history behind it, try to achieve this going forward. There should be no finger pointing in any post-mortem: eliminate the blame game. Instead, focus on how to fix the problem, learn from the mistake and improve the outcome for next time.