“Software is eating the world” - Marc Andreessen
Software is everywhere. Every company today depends on software to deliver its services to end users. There is a lot of pressure on companies today to move faster and be more agile, all while delivering better reliability without sacrificing security.
Mike Dilworth, Agile and DevOps transformation lead, recently said: “DevOps is a culture, not a role! The whole company needs to be doing DevOps for it to work.”
Everyone in the company needs to be considered for the move to DevOps to be successful. This includes not only development and ops teams but also senior leadership and everyone with a stake in the final product.
DevOps is a cultural perspective on how everyone should be working together and seeks to address the issues caused due to the increased pressure to deliver software faster with better quality. It ensures continuous learning through short feedback loops that drive continuous improvement. DevOps focuses on organizational communication and collaboration to achieve a common goal.
Underpinning every DevOps initiative requires development and ops teams to standardize on a common set of agile processes and tools for delivering software. A short list would include these major items:
- Configuration management
- Application deployment
- Version control
- Application code
- Infrastructure code
- CI (continuous integration) to automate code building
Build the business case
IT leaders are asked to deliver more products and services faster and with better quality without their customers having to face any issues relating to reliability or security.
A streamlined DevOps culture will certainly help with these goals, but how do you get your team on board and make a clear convincing case for DevOps that reduces fear and converts skeptics to champions?
Building a business case is crucial to a successful DevOps transformation. This is especially true for large organizations. According to Simon Sinek, there is a common denominator of great leaders who were catalysts for positive change.
“People don’t buy what those leaders are doing but why they’re doing it.” - Simon Sinek
This idea should be considered when building organizational buy-in for a DevOps transformation. Just declaring, “We’re doing DevOps,” isn’t enough to get people on board. Instead, to get people on board, compelling questions like “Why? And why now?” need to be answered.
The opposing goals of moving faster without compromising reliability and stability cause development and ops teams to be adversaries rather than allies. Developers and ops teams are also evaluated on different metrics. Developers are tasked with getting new features into production as fast as possible. Meanwhile, operations guys are measured on the uptime and performance of systems. These differing goals and metrics make these teams antagonistic.
There are hard, quantifiable DevOps process metrics that you can use to baseline the state and build business cases:
- Volume and frequency of application releases
- Elapsed time for an application release
- Number of defects in a given time period
- Time taken to fix a defect
- Outage occurrence
- Application performance impact on revenue
These common sets of goals guide your team to foster an environment of cooperation and collaboration. Furthermore, creating cross-functional teams focusing on improving these metrics and removing the silos between the teams and the various stakeholders will let your DevOps transformation journey succeed.
Change is Hard
It is difficult to change deeply embedded habits, and since DevOps is a cultural change, it involves a sea change in how traditional software teams work, making it more difficult. Here are some tips to enact these changes:
- Start small, build trust
- Nurture in-house talent to create champions
- Identify and focus on key metrics to build successful outcomes
- Celebrate milestones
Starting small will let organizations see the ROI on DevOps faster. Winning over smaller groups with small specific projects will create ambassadors that will help promote DevOps elsewhere within the organization creating a multiplier effect that will accelerate the pace at which an organization embraces the DevOps transformation.
DevOps is undoubtedly revolutionizing the IT industry by improving performance, increasing productivity and efficiency, and encouraging innovation that ultimately improves the customer experience and offers immense business benefits. In part 2, we will continue our DevOps journey, discussing the tools and how we can contribute to improving the DevOps culture.