February 9, 2022
If you ask a group of experts or just Google, “What is the definition of DevOps?,” you’ll get many different answers. That’s because there are many factors to describe what DevOps is and many debates happening about whether DevOps is a philosophy, a movement, or a framework. One of the reasons for this confusion is that the model really doesn’t fit into the community’s general expectation of a traditional framework, method or practice.
This doesn’t take away from the fact that DevOps is one of the most disruptive trends in information technology (IT) today, and hiring for DevOps initiatives remains high. According to the “Upskilling 2021: Enterprise DevOps Skills Report,” 60 percent of organizations are actively recruiting now or in the future for DevOps-related roles.
Most definitions of DevOps share the same spirit of accelerating the software delivery cycle by trying to move faster and more frequently. And that’s true. But, if our CEO, Jayne Groll, were to describe it to someone not in the tech space, she’d explain it is a recipe for a new paradigm for IT.
During the first episode of the Humans of DevOps podcast, Jayne summarized her thinking on the definition of DevOps:
If you think about it as a cook in the kitchen, you realize there is no such thing as a single ingredient recipe for a meal. DevOps is a recipe that’s built on a proprietary blend of ingredients from other sources, including some ingredients that are cultural and others that are procedural and can be automated. But like all recipes on its own, DevOps doesn’t have any substance until it’s brought to life through the right combination of its ingredients. Like all recipes, the most important ingredient is the chef, right? It’s the chef that knows how to bring that recipe to life, that has techniques and tools that allow the chef to do something really remarkable in the kitchen. And the truth is, the same holds true in the IT department.
To gain broader input on describing what DevOps is, we asked DevOps Institute Ambassadors to share their thoughts on how they would describe DevOps to someone not in tech.
Here’s what the community had to say:
“DevOps is a way of working that promotes the fastest flow of work while balancing that with the highest levels of quality. It combines organizational culture improvement with technical innovation, particularly around automation. Its primary driver is to enhance customer experience to result in optimal business performance.”
– Helen Beal, Chief Ambassador, DevOps Institute
“DevOps describes a culture of cooperation and automation in the ‘software’ factory. DevOps is an agreement between the people writing software and the people moving the software to end-users. This agreement, often called the DevOps pipeline, defines what the assembly line does, and how fast it flows. Once the agreement is made on what the assembly line does, individuals on both sides, Dev and Ops, work to automate the assembly line activities. As they begin working via the DevOps pipeline, they come to the second agreement, how fast it flows. The benefactors are the people using the software. They receive higher quality software, with faster turnaround for enhancements and fixes.”
– Tracy Ragan, CEO and Co-Founder, DeployHub
“DevOps is a discipline in software development focusing on Continuous Integration and Continuous Delivery of software within one or more value streams, especially with the use of Cloud services. Some of DevOps practices may also prove valuable in other fields other than cloud-native, such as embedded software or legacy tech.”
– Maciek Jarosz, DevOps and Process Expert, Business Practitioner
“DevOps is about two basic fundamentals. First, the three ways: Flow, Feedback, and Continuous Learning. Second is CALMS – Culture, Automation, Lean, Metrics and Sharing. If you manage these two basics, you are on your way to learning DevOps.
The underlying principle is to get everyone in the process of [making and delivering] software involved early, use observable processes, and measure what you do to improve learning. While each concept can be an entire study on its own, linking these concepts brings us to the most important aspect – culture.
Without a strong DevOps culture, any technological improvements are merely patches on an ongoing problem. DevOps is a culture where everyone in the organization is committed to achieving the most possible with the minimum amount of work. Value is maximized through delivering software often, in small increments, so errors and potential improvements can be detected early. A DevOps culture is collaborative, working together in a blame-free environment where everyone participates in the process.”
– Mark Peters, Technical Lead, Novetta
“DevOps is the combination of cultural philosophies, practices, and tools that brings agility to an organization so as to deliver software applications and services at a high velocity. This essentially means developing and enhancing products at a faster rate than traditional software development and infrastructure management processes.”
– Parveen Kr. Arora, Co-founder and Director, VVnT Foundation
“Imagine if Ford built cars but did not provide enough information to mechanics to maintain and service those cars once they were being used by the customer. This has been the situation for many years. Now imagine that Ford would come to your house every few days, make small changes to your car, not inform the mechanics of all the details and find they may not be reliable? As a mechanic, this would make your life extremely difficult. As the builder, you would be getting annoyed at the constant distraction of being asked for help to fix people’s cars when you want to build new ones. As the customer, you would start looking to buy your next car from Audi, BMW or another manufacturer.
DevOps is intended to be a way to ensure that the builders and the mechanics collaborate and communicate constantly and consistently to ensure quality and to ensure that everyone understands any changes made to make sure you, the customer, are always happy and have an uninterrupted drive.”
– Stephen Walters, Field CTO, CEM Digital
“DevOps is a philosophy of “together we are better” and can achieve more. Think about rock bands. A band is a group of musicians with mixed talents, some might play more than one instrument and there is probably a “rock star” frontman. They all have individual talents, but it’s only together that they can create rock anthems that we all love and remember. Now imagine if, rather than being mixed, bands only allowed members that played the same instrument, for example a keyboard band, guitar band, and so on. To make a decent song you’d need musicians from multiple bands to participate to get all of the instruments covered, but these musicians barely know each other and don’t get any time to practice together. This way of making music would stifle creativity, and (with the odd exception) quality music would not be created. All in all, there would be disappointed and unhappy fans.
DevOps is really the same thing but for building software. It brings together all of the different roles (Development and Operations but also, test/QA, infrastructure and more) involved in software engineering and puts them in one team focused on one set of customers and the products they buy. Working closely together they are faster and better and, as a result, their customers are happy and loyal.”
– Craig Cook, Principal Engineer, Catapult CX
“If we describe DevOps through an analogy, consider a family scenario. If the goal of the parents is to create a healthy and loving home for their children, parents need to help orchestrate the lifestyle of the family unit, while taking into account each individual family member’s needs. Sharing of responsibilities and working together as a team helps reinforce collaboration, trying new experiences, improvement through learning, and family values.
The same can be said for DevOps. It is a culture and mindset that brings harmony between multiple individuals and roles within IT as part of one team to develop and deliver better software. Each team member will have their own requirements, tools and processes to help them do their jobs. DevOps is intended to bring people and ideas together in order to orchestrate the delivery of software, iterate faster, solve challenges as one team, and ultimately improve the lives of the team members and the users of their software.”
– Vishnu Vasudevan, Head of Product Engineering & Development, Opsera
Looking for more DevOps insights? Get #DevOpsCertified today!