“You cannot buy DevOps in a box”
How do you measure a successful DevOps adoption? What kinds of metrics do you need to monitor, what benchmarks do you need to meet? We talked with JAX London speaker Anders Wallgren about continuous development, microservices, and how we can be better at DevOps.
JAXenter: How can one achieve success with DevOps? How important is it to measure and track your DevOps efforts?
Anders Wallgren: DevOps is a process that works best when teams work in a continuous improvement mode — the improvement in the quality of the daily work is more important than the absolute quality of the daily work. In any continuous improvement environment, measurement and evaluation of important metrics are important to maintain and improve the quality of the work.
JAXenter: What mistakes do teams often make when trying to measure their DevOps performance?
Anders Wallgren: There are several pitfalls to avoid when selecting and implementing metrics. It is important to avoid vanity metrics, gameable metrics, and shaming metrics and instead focus on metrics that are objective, actionable, and focus on outcomes.
JAXenter: What kind of key performance indicators should teams be on the lookout for?
Anders Wallgren: Make sure you look at metrics that cover both efficiency and effectiveness. Efficiency covers things that are related to the cost and effort involved in releasing software. Effectiveness covers how well those efforts satisfy the needs of the customers, including customer satisfaction. It’s also important to pay attention to cultural metrics and employee satisfaction.
JAXenter: Let’s say a company decides to adopt DevOps. How can the management get engineers on board?
Anders Wallgren: Frankly, it’s often the other way around — grassroots support exists and it’s the company leadership that needs to be brought on board. That said, it’s very important to focus on the actual constraints that limit organizational improvement. It is important not to focus resources on efforts that don’t eliminate the current constraints — that’s wasted effort. Metrics help us focus on where the delays and impediments to better performance are located.
We are pretty much at the peak of the containerization hype cycle right now.
JAXenter: In your view, what are the most suitable tools that should be part of a ready-to-use “DevOps kit”?
Anders Wallgren: One of the most important aspects, as demonstrated in the 2017 State of DevOps report, is automation. Organizations that continue to rely on manual processes will continue to suffer the consequences: lack of reliable, repeatable software releases. From a metrics perspective, automation becomes a source of much of (though not all) the data related to software pipeline efficiency and even effectiveness.
JAXenter: Containerization is here to stay and a lot of people say that it hasn’t peaked yet. Organizations use containers in pre-production on a daily basis but that doesn’t mean everyone is ready to use them. What do you think, will the proliferation of containerization into production accelerate?
Anders Wallgren: We are pretty much at the peak of the containerization hype cycle right now. Adoption will continue to accelerate as the tooling matures and measurable benefits are achieved. In production environments, containerization yields the most benefit in microservices architectures, where there are many small services that, composed together, provide application functionality. It is certainly possible to benefit from containers without loosely coupled architectures, but the benefits will be less apparent.
JAXenter: A lot of people say that microservices should not be used if the company is not embracing DevOps principles. Do you agree?
Anders Wallgren: I largely agree. One of the few benefits of a monolithic architecture is that they can be less complex to deploy and operate. It’s a lot easier to deploy a single WAR file than it is to coordinate the deployment of 150 WAR files representing 150 different services. To fully take advantage of microservices, an organization must be able to rapidly and reliably set up and destroy environments on the fly, as well as layer the microservices on top of that infrastructure.
In addition, monitoring and logging become more difficult, and also more critical, when running microservices. Organizations starting with a blank sheet of paper should strongly consider microservices. For legacy code, it’s less clear what the correct approach is.
JAXenter: Is DevOps the key to achieving full agility?
Anders Wallgren: At this point, I see DevOps as a logical extension of Agile (but get 10 DevOps/Agilists in a room, and you’ll have at least 11 opinions on this matter). Agile has always been about the delivery of software to customers, but the reality is that many organizations still practice so-called water-scrum-fall where the agile portion is practiced only in a portion of the software pipeline, usually by the engineering teams, after which release and deployment efforts still use old techniques. DevOps helps organizations “plumb the last mile” from development all the way into production, as well as working to establish feedback loops back into development efforts.
JAXenter: What is the biggest misconception about DevOps?
Anders Wallgren: The biggest misconception is that you can buy DevOps in a box. I say this as a platform vendor in the space: you need tooling, but if you think that’s all you need to be successful at DevOps, you will fail, and probably waste a bunch of time and money in the process. DevOps is about process, tooling, and culture. All three legs of that stool need to be addressed to realize the payoff that DevOps demonstrably provides.
JAXenter: What can attendees get out of your talk?
Anders Wallgren: This talk will be a frank examination of what it takes to use metrics to support DevOps transformations. Attendees will come away with actionable content they can use in their own organizations to implement metrics that are actionable and goal-focused. We will cover all aspects of the software pipeline and the types of metrics that are useful at each stage.
Anders Wallgren will be delivering a speech at JAX London today that will go into more detail with these ideas. Anders’ session will walk you through a practical framework for implementing measurement and tracking of your DevOps efforts and software delivery performance that will provide you with data you can act on!
The future is what you make of it! Just know that your supplies are limited.