The DevOps Divide

Separating Dev and Ops in the Age of Kubernetes and Multi-Cloud

In recent years, the concept of DevOps has become increasingly popular, emphasizing collaboration and the blurring of boundaries between development and operations teams. However, at VMworld 2019, a different message emerged: that Dev and Ops should be considered separate entities once again. This shift is driven by the rise of consumable platforms outside traditional IT control and the pressure to DevOps. In this blog post, we’ll explore the reasons behind this separation and the benefits it can bring to organizations.

The Rise of Consumable Platforms

One major factor leading to the re-separation of Dev and Ops is the rise of consumable platforms outside traditional IT control. With the emergence of public clouds, containerized platforms like Docker, and Kubernetes for orchestration, developers can now consume services and resources without relying on IT operations teams. This has led to a blurring of boundaries between Dev and Ops, with developers taking on more responsibility for infrastructure management and IT ops team members needing to learn development skills.

However, this trend towards DevOps has its drawbacks. Automation doesn’t equal development, and there are many Infrastructure as Code tools that can bridge the gap between developers and IT operations teams. While it’s important for IT ops team members to learn new skills and evolve with the industry, their primary role should still be focused on understanding the fundamentals of what’s happening within a platform and supporting infrastructure that developers can consume.

The Elegance of Kubernetes

Recently, I had an “aha” moment while working on some Kubernetes automation work with Terraform. I was trying to get the Sock Shop demo working on my fresh Kubernetes cluster, and I finally understood why Kubernetes had been created. Everything about the application was defined in JSON files and deployed as a whole through one command, which is quite elegant compared to how I worked with developers back in the early days of web hosting on Windows and Linux web servers.

However, this contained environment within my lab has no bearing on the availability, security, or otherwise of the application. This is where separation is required. Developers want to consume services and take advantage of the constructs of a containerized platform like Docker paired with Kubernetes for orchestration and management. They don’t care what’s under the hood, and they shouldn’t be concerned about what their application runs on.

IT operations teams, on the other hand, want to manage the supporting platforms as they did previously. The compute, networking, and storage in a hybrid world are still relevant, and they should absolutely still care about what’s under the hood and the impact applications can have on infrastructure. VMware has introduced this re-split of Dev and Ops with the introduction of Project Pacific, and I applaud them for going against the grain and endorsing the separation of roles and responsibilities.

The Benefits of Separating Dev and Ops

Separating Dev and Ops can bring several benefits to organizations:

1. Improved Efficiency: By separating Dev and Ops, teams can focus on their core responsibilities, leading to improved efficiency and productivity.

2. Enhanced Collaboration: With clear boundaries between Dev and Ops, teams can collaborate more effectively, leading to better communication and more robust solutions.

3. Increased Agility: Separating Dev and Ops allows organizations to respond more quickly to changing business needs, as each team can focus on their respective areas of expertise.

4. Better Security: By separating Dev and Ops, organizations can improve security by ensuring that IT operations teams are focused on managing infrastructure and protecting against threats, while developers are focused on building and deploying applications securely.

Conclusion

In conclusion, the separation of Dev and Ops is a crucial step towards a more efficient and effective organization. With the rise of consumable platforms outside traditional IT control and the pressure to DevOps, it’s essential to re-establish clear boundaries between these two entities. By doing so, organizations can improve collaboration, enhance agility, increase security, and ultimately achieve better business outcomes.

Let devs be devs, and let IT ops be IT ops! They need to work together in this hybrid, multi-cloud world!