Why your business might not be ready for DevOps
Let’s get one thing straight: I’m a huge fan of DevOps. It has been shown to increase quality, reduce problems, and shorten development cycles. It’s often considered a panacea for large organizations looking to transform their development, production and operational lifecycles. But is it right for every business?
Companies that do it successfully can reap the benefits of continuous deployment and testing, but companies that fail get trapped in endless loops of missed deadlines.
There are some criteria that any IT team should investigate before making the transformational shift to CI/CD. It involves taking a hard look at the existing culture, process, and even management style. There’s no shortage of ink spilled on articles that try to convince you why DevOps is the future. Instead, I want to write on when and why DevOps doesn’t work, to truly help identify if it’s right for you.
First: Is the culture ready?
Because the transformation to DevOps is simultaneously a change in process, tools, and philosophy, it requires a cultural shift in collective mindset that’s fraught with potential failure. DevOps success relies on three Cs: communication, collaboration, and coordination between different teams (including software developers, quality, operations teams, and executive stakeholders). The first challenge is to understand and unpack how these groups are aligned and interrelated. Then, the executive leadership must develop a working model of communication between them with incremental milestones to gradually shift culture toward more openness and connectivity.
If your business is too siloed or relies on legacy organizational structure, chances are good that this cultural shift may prove to be too difficult. I’ve seen it often fail in large organizations with entrenched leadership or processes. Some companies could be hundreds of years old, while others could be the latest and greatest modern organizations that are simply stuck in their existing ways. And if the culture won’t change, then the actual DevOps process is ultimately doomed.
Then: Can the structure handle it?
DevOps is highly culture-dependent, but it also requires a shift in how software is architected, built, tested and deployed. At first, this may seem like common sense, but in reality, it’s often not discussed during the transition.
Monolithic software architecture with complex dependencies between different layers and teams can cause a DevOps evolution to struggle and fail. Often, quality is sacrificed in the name of agility and speed. Organizations using a modern, cloud-native microservices architecture are typically more successful in adopting a DevOps practice. In these organizations, product or service teams can operate independently while staying aligned toward the ultimate business goals or customer experience objectives. The company is already broken into purpose-built sprint pipelines that can move with agility.
Where to begin? Identify the warning signs
Before building your DevOps roadmap, it’s critical to spend some quality time soul-searching and stress testing your organizational culture. If you see any of these, you might face some steep uphill challenges in your evolution:
- Your company has a well-defined process: Companies that are already in love with their culture and software development process will cling to it with white knuckles. These companies resist change and might not fit the DevOps profile.
- Your company wants to dive in head first: If your company just wants a DevOps process because it’s trendy and innovative, you might not be ready for it. Proper implementations require a true understanding of business outcomes with pros and cons. Remember, it’s a mindset, not just a movement.
- Your company wants a “Department of DevOps”: Trying to create DevOps as a separate department, without bringing current Dev and Ops teams together, is a recipe for failure. DevOps isn’t a side hustle. It’s transformational.
- Your company has fiefdoms: Organizations whose Development and Ops teams are highly distributed and isolated from each other could struggle to bring them together without providing each team with some common leadership.
In short, DevOps must become the culture of the organization, driven by the CEO and his/her team of functional and organization leaders with a clear understanding of the implications and outcomes. It’s a mindset that requires a transformation in process, organization, technology, and information to drive a meaningful, sustainable change. The rewards are huge.
But as with any potential upside, your company will have to work for it.
This article was contributed by Bhanu Singh is the SVP of Product Management and Cloud Operations for OpsRamp.