Alan Z. Uster - Fotolia
What does it take to succeed at DevOps? In part, it requires recognizing that DevOps is a constant journey, and that there’s always more a DevOps-oriented organization can do to improve its operations.
The DevOps Journey
Although we sometimes talk about “doing DevOps” as if it’s an either/or proposition, or a switch you flip on, it’s not. Adopting DevOps culture takes time, and the work is never really done.
For the typical organization, the DevOps journey starts with the implementation of a handful of agile development tools and methodologies. Then, it might move all of its workflows to a continuous integration (CI) environment. From there, the group might set up a continuous delivery (CD) chain using release automation tools. It could then go a step further by redefining organizational roles in a DevOps-oriented way by eliminating the rigid structure separating developers from IT Ops.
That’s just an example, of course. The paths that organizations take to implementing DevOps are many and varied.
But no matter what a particular organization’s path looks like, the point is that it’s a journey. When you decide to embrace DevOps, you start small by making minor changes and continue from there.
The Journey Never Ends
Once you recognize that DevOps is a journey, you should also understand that the journey never ends.
There is no DevOps saturation point. No matter how many agile tools and ideas you implement, or how many job titles at your organization say “DevOps,” you can always do more.
That’s because the world of software is always changing. The tools that make you maximally efficient today may fall short of the next generation’s tools. The CD chain that you have running today may enable new releases every twenty-four hours. But in the future, maybe you’ll want to be able to push out updates to your apps even faster than that.
You can and should strive to always do better. If you settle, then you’re not really doing DevOps, because DevOps is all about innovation and improvement, not the status quo.
DevOps is a Philosophy, Not a Technology
Another way to think about DevOps is to recognize it as a philosophy rather than a specific tool, technology, or methodology.
In other words, DevOps is fundamentally different from something like containers or the cloud. If you decide to migrate to containers, then you migrate to containers. The implementation may take place gradually, but if you max it out by moving all of your workloads to containerized environments, then there will be nothing left to do. You will be fully containerized. The same logic applies to adopting the cloud.
But you will never be fully DevOpt-imized. There’s always more you can do.