Companies need a reliable engine to make their information technology run. DevOps is the engine that can transform your company from a family sedan into a powerful sports car. In my last blog on DevOps, we defined DevOps as a set of practices that automates processes and encourages coordination across all teams within a business, not just the software development and operations teams, as the name implies. Today, I want to take a closer look at the four wheels that really are the driving force of DevOps, The CAMS: Culture, Automation, Measurement and Sharing. These four elements, when implemented correctly, provide a smooth ride through the sharp turns and steep hills of product development and implementation.
Just saying that you have implemented DevOps does not mean much: You can add racing stripes to your car but that won’t make it go faster. Successfully implementing DevOps often requires a change in company culture. Rouan Wilsenach writes, “Even with the best tools, DevOps is just another buzzword if you don’t have the right culture.” Collaboration is key to making the pivot to a DevOps culture, but silos can be difficult to break down. Everyone must buy into the collaborative process and feel that their skills and opinions are valued and important. Culture change doesn’t come overnight, but when employees realize that DevOps actually means they have more ownership and less busywork, buy-in can come quickly, especially when companies empower workers to make decisions. According to Splunk + VictorOps’s Dan Holloran, “The true nature of DevOps relates to the way humans interact and learn to build reliable, secure applications and services.” All of that spills over into an improved customer experience. When people are empowered to solve and fix problems at any time during development, it improves the quality of the end product.
Once the culture is in place, automation plays a big role, but people are often most worried about the automation piece of DevOps implementation. Automation offers several benefits to employees:
- Replaces busywork, allowing more time to focus on complex issues,
- Creates simple, unified ways of doing things, and
- Improves the quality of the final product.
“There’s no excuse not to automate, but just don’t forget the human factor of that automation.”Almudena Rodriguez Pardo, Business Agility Consultant
Companies making the switch to DevOps sometimes focus on automation but forget culture, argues Brian Dawson of TechSpective, which can lead to quality issues. “If a company sees DevOps only as technology and invests only in automated tools for testing, but neglects the cultural aspect, its developers will not give the highest priority to software quality.” Proper automation of processes will simply free up workers to focus on higher-level tasks that machines can’t do, which means less time sitting around waiting for a task to be complete and more time available to solve higher-level problems. Automation also creates a sense of security because it can start consistently deploying the same thing over and over again without any concerns that important items will be missed, creating the ability to improve quality, time management, and employee satisfaction.
One of the hallmarks of a DevOps structure is that it allows for quick pivots to change things that are not working or to maximize things that are. According to the latest DevSecOps Report from GitLab in February of 2020, “Almost 83% of developers say they’re releasing code faster and more often today than ever before thanks to DevOps.” That agility comes from the ability to measure as much as possible from progress to marketability to user engagement. Measurement is a continuous process throughout the development, sales, and implementation of a product. Key performance indicators, or KPIs, help everyone working on a project understand how the project is moving and performing. For example, a KPI might specify the number of features being worked at any given time (work in progress or WIP). A growing WIP can indicate a bottleneck or something that is stuck and needs attention. KPIs measure everything from what the customer wants to whether end-users are engaging with the features of the product as envisioned. If something isn’t working, it can quickly be revamped or removed completely.
While measurement is an important part of DevOps, reliably sharing the results of those measurements with everyone involved in the project and within the company is what really makes DevOps take off. From the DevSecOps Report, “over 80% of Ops pros said it was ‘very or extremely important’ to them to have visibility into the development side.” What’s more, “16% of testers feel they have a more visible seat at the table and 15% are now able to do more testing that matters rather than repetitive busy work.” Sharing information across the company creates transparency between departments and helps everyone to focus on the areas that may need fixing. Sharing can be done through dashboards, Google Analytics, or even through a monthly or weekly report.
Start your DevOps engine
When all four pillars of DevOps—Culture, Automation, Measurement and Sharing—work together, it fundamentally shifts the way a company approaches product development. Again from the DevSecOps Report, “Job satisfaction: 66% or more of respondents say their organization’s processes and tools allow them to succeed and innovate.“ Implementing DevOps improves employee morale, encourages innovation, and speeds up development and implementation, which will have your company racing to the head of the pack.
Tom Martin is 27Global’s Director of Site Reliability Engineering. Founded in 2008, 27Global designs, builds and operates custom software solutions for businesses of all sizes. The perfect pairing of a local leadership with offshore pricing, 27Global has the business acumen to understand your vision and the expertise to build your software solution. To learn more, visit 27Global.com or connect with us on LinkedIn and Twitter.