In a DevOps world, the operations team provides infrastructure as a service to product teams, such as the ability to spin up production-like environments on demand for testing and release purposes, and manage them programmatically. Operations is still responsible for sourcing hardware, monitoring performance and managing capacity and continuity for the infrastructure they provide — although not necessarily for the systems that run on them, which belong to product teams. By applying DevOps practices, it becomes much easier for the ops team to stay ahead of requests and improve the services they provide. It was Amazon’s focus on this imperative Amazon’s focus on this imperative that led to the creation of a system so compelling they were able to offer it externally in the form of Amazon Web Services.
Applying a DevOps approach does not need to be a big-bang transformation. Start small by having operations people attend project inceptions, retrospectives and showcases. Get developers to rotate through operations departments and experience the pain of trying to keep systems running. Put screens with operational dashboards up in development rooms. Map and measure the value stream from requirements to production to discover the bottlenecks in your delivery process. Write a few automated scripts for environment builds and deployment in a low risk areas (development and testing environments) to get your feet wet.
Most importantly, make sure that operations teams have the tools and slack they need to stop spending all their time fire fighting, and focus on strategic work such as using root cause analysis to drive continuous improvement.
Jez Humble would like to thank Joanne Molesky and Jim Highsmith for feedback on the development of this article.
Jez Humble is a principal for ThoughtWorks Studios, the products division of Agile consultancy ThoughtWorks. He is responsible for helping enterprise organizations deliver quality software faster and more reliably through automation of the delivery process and better collaboration between development, testing and operations. He serves as product manager for Go, the company’s Agile release management product and is the author of the highly acclaimed book, Continuous Delivery. You can reach Jez with questions at [email protected]
Bottcher, Evan, “Projects are Evil and Must Be Destroyed”
Haight, Cameron, “DevOps: Born in the Cloud and Coming to the Enterprise”, Gartner Research 2010
Hammond, Jeffrey, “Five Ways To Streamline Release Management”, Forrester Research 2011
Humble, Jez, and David Farley, Continuous Delivery, Addison-Wesley 2010
Humble, Jez, “Continuous Delivery: The Value Proposition” Poppendieck, Mary, and Tom Poppendieck, Leading Lean Software Development, Addison-Wesley 2009
Ries, Eric, “The Lean Startup” The Institute of Internal Auditors