Recently a colleague and I were talking about his team’s agile transformation. He is excited about what’s to come but was challenged to bring everyone together in a meaningful way that leads to the change he wants to see. We talked about the importance of starting with a shared vision of a problem and iteratively working toward a solution. It seems easier to just start with the end: “We’re going Agile!” and watch everyone fall in line. Unfortunately it never happens that way.
I was reminded of this while recently reading Building a DevOps Culture by Mandi Walls. She writes:
Proving change is necessary requires some legwork. It’s fine to want to change your organization because “everyone” is doing DevOps now, but you’re looking at months of work, new tools to learn and implement, teams to restructure. These costs must be outweighed by the benefits, so you have to be able to put real value on your processes.
Articulating upfront what your goals are will help you with other phases of your DevOps roll out.
This is exactly the work I’ve been doing related to Chef over the past year. Recently we started talking about improving monitoring as well. It’s easy to say, “We’re going with New Relic!” Or, “We’re going with App Dynamics!” I’ve resisted that siren song, though, to really dig into what the problems are and what specific solutions fit the problems. When the problems are clear and measurable, the solutions have alignment and buy-in, and funding is easy. Without those core components, I’m afraid the issue is doomed. So I’m following Mandi’s advice and doing the hard work up front to define a shared vision of the problem.