Do you drive a Volkswagen? Then you’re probably as disappointed as I am that the fuel economy isn’t what the brochure promises. The company misled drivers for years into believing that you could drive halfway around the world on a tank of gas when in fact, you’d be lucky to get halfway to your house.
I’m exaggerating, of course, but Volkswagen’s claim of hyper fuel economy turned out to be hype. That brings me neatly to DevOps. Right now, it feels like every organization is in the showroom, test-driving DevOps. Many more are using it on the open road.
When they look at the fuel gauge, though, they echo the look of a Volkswagen driver. Quite simply, DevOps isn’t delivering quite what was expected. It’s not as popular in the organization as expected. It’s struggling to thrive.
I’m about to say something that not everyone is going to agree with here: maybe DevOps just isn’t ready for production, at least not in its current implementation. Maybe it never will be. Here are some red flags to make you reconsider your DevOps strategy.
1. Your Developers Love it, But Your Ops Teams Hate It
Developers love DevOps because the tools were built around their needs: for developers, by developers. Your ops folks, meanwhile, look at these tools with confusion. They are being forced to use tools that weren’t built to solve their problems. They are uneasy. For them, operations focuses on service reliability and robustness, not the latest and shiniest new tool.
2. Your Ops Teams Love It, But Your Developers Hate It
Conversely, some organizations are looking at the problem from the opposite point of view. They see DevOps only through the lens of operations and try to force developers to adopt tools built primarily for operations. The problem is, developers hate using tools that weren’t built for them, and in a world full of companies trying to hire developers, they are liable to switch jobs if you don’t give them tools that they like too.
3. Failed Attempts to Model Production Environments in Your DevOps Tools
If DevOps tools are supposed to automate your entire application lifecycle, why is it still so hard to model your production environments within them? Maybe because it’s time to admit some truth. Fundamentally, today’s DevOps practices are better suited to prototyping simple environments than capturing the real complexity of large enterprise business-critical applications. Sorry, but it’s true.
4. Most DevOps Tools Have No Integration With Legacy Systems and Processes
You were told that DevOps was supposed to solve all your problems, and yet, where is DevOps for Cobol? How do you do CI and CD for Fortran? How do you deal with your DB2 databases? It’s not just legacy technology that’s the problem. It’s existing maintenance practices. You already have ways to distribute security patches for core libraries like OpenSSL, but if you start adopting Docker Linux Containers, you need to rebuild and redeploy all your containers now, too. If you’re a startup with 10 servers, that might not be so hard. If you’re an enterprise with 10,000 servers, it’s a big deal.
5. New Releases Still Only Happen Every Few Months (or Years)
You signed up to DevOps and you thought you were signing up for Continuous Delivery. In fact, you signed up to continuous heartache. Releases aren’t as frequent as promised, mainly because there’s still a gulf between your dev and your ops teams. They don’t talk the same language or use the same tools.
6. DevOps Is Supposed to Bring Harmony Between Dev and Ops Teams But Only Seems to Bring More Conflict
DevOps isn’t simply a tool or a process change. It demands an organizational culture shift. This cultural change is especially difficult because of the conflicting nature of departmental roles. Operations seeks organizational stability; developers seek change; testers seek risk reduction. Getting these groups to work cohesively is a critical challenge in enterprise DevOps adoption.
You’ve tried to make DevOps work, but it feels like squishing a square peg in a round hole. Maybe it’s time we open the discussion and question your assumptions. Maybe it’s not your fault. Maybe the fault is in DevOps itself. There is no doubt DevOps has a place in this world, but maybe DevOps fundamentally isn’t the ultimate solution to the world problems of enterprise IT. Maybe we are missing part of the bigger picture.
Want to learn more about the topics I cover in my blogs: DevOps, AgileOps, Continuous Delivery, Release Automation, Digital Transformation (and many others!), then feel free to register here to get regular updates from me.