What's Next Beyond DevOps
Easy reading that will help you figure out how software development will move to the next step beyond DevOps
All Technologist Want To Move Forward
Since the word “DevOps” was coined in 2009 by Patrick Debois, more and more development teams have been experimenting with devops practices by using new development tools, simplifying processes and transforming people’s behaviour. Please, continue reading if you want to discover how the DevOps movement is developing further.
What’s Next Beyond DevOps
Yes DevOps, automating software development lifecycle, turning infrastructure into code and measuring development performance has accelerated the evolution of software development. DevOps brings technical agility to software development. The development teams who have reached an Elite Performance Level: are able to satisfy business needs in a fast, efficient and reliable way.
However, has anyone discovered a new method to improve software development performance even further ? Are there new technologies or methodologies that would replace what we are currently using ? Are Kubernetes, Terraform, Javascript or GO the new legacy ? What’s next beyond DevOps ?
DevOps becomes a Commodity
Many software development methodologies have been raised by everyone improving the preceding ones (Waterfall, Agile , Kanban, …). And each new methodology added or removed features, processes or practices which make it easier to develop software that alignes with the business needs.
For example, take a look at the following table, which it compares Waterfall and Agile methodologies:
Feature | Waterfall | Agile |
---|---|---|
Scope | Everything has to be defined | The purpose is clearly defined and the features are defined iteratively |
Prioritization | All or nothing | We start developing the most valued features for our customer |
Delivery | Unique delivery at the end of the execution | Continuously delivering software at each iteration |
In terms of technical software development, Developers started shitfting left most of the validation processes, and Operations guys started writing script to make their day-to-day easier, faster and errorless. Development and Operation teams have been collaborating even more closely, making it easier to bring applications and their infrastructure from development stages to production. Containerization brings this collaboration to the next level: less communication needed between Development and Operation teams.
By mastering DevOps, you learn to change a development process, tools and technologies, and measure if those changes have a positive impact. We are now fearless to experiment with new techniques and technologies in a calculated risk environment. Therefore, when new technologies or processes appear, we will be able to experiment with them in our systems and validate if they improve our process or not. If those artifacts are better, then we are there.
CALMR to move beyond
CALMR is an acronym which define a set of principles to assess whether a company is ready to adopt DevOps practices, or how a company is moving forward in ther DevOps transformation.
Culture
Culture is the most important principle to work on to enable a DevOps transformation. A sense of shared responsability between teams is the first step. It requires the approval of the management layer within the organization. Then break down silos is the next step. An interesting kind of culture proposed in the book Accelerate book is the Westrum Culture. One of the most important key to success is a high cooperation between teams.
Automation
To automate a manual task is the principle which provides the most visibility to your DevOps transformation. But automation is challenging: you should rethink your process to turn it into an automated process, and trade-off: is the cost of maintaining the automation worth it? Is giving autonomy and speed to other teams worth it ? Continuous Integration automation enables artifact generation standardization, and we should implement it in our companies to make our developers’ life easier.
Lean
Applying Lean Principles in your day-to-day, helps you and your team eliminate waste and optimize your value stream by helping the team to be more efficient.
Measure
As Peter Drucker said: “If you can’t measure it, you can’t manage it”. We apply this principle to figure out if any of changes we made in our processes, tools or behaviours have had a positive or negative impact on our performance. Measuring the number of builds run in our continuous integration system, gives us information about the usage of our CI toolchain. Measuring the failure rate of builds run, can give us information regarding the quality of code, so when we apply changes to the build process it is well understood by developers.
Repeat
There’s no finish line. You should always apply Plan Check Do Act to each principle. As people learn about new process or tools, their creativity applied to your business will probably drive to more performance delivering software. Nevertheless, protect the capacity to experiment, try new tools or processes and validate if they have positive or negative impact.
Are you ready to go ?
Whether you or your company started your DevOps journey a while ago, or you want to start it now, apply CALMR principles. Insatiably iterate through each one, and for sure you will figure out a way to have a positive impact in your development process.
You could continue working without making any changes, but stay prepared to suffer the Red Queen Effect. The Red Queen Effect applied to software development, means that while your competitors work to improve their development processes and gains in performance, you stay at the same level of efficiency. In the mid term you will be less efficient than the others.
Hope you enjoy the post, don’t hesitate to contact me if you want further information.
Thanks for reading!