Everyone is talking about DevOps, but there is a lot of confusion around this topic.
Let's see what DevOps is, what the benefits of doing DevOps are, and why everyone should adopt it.
Intro
Today I want to take talk more in general about DevOps. I want to bring up the benefits of doing DevOps, and clarify some aspects that I often see people confused about.
And after you're done with this post, I highly recommend you to watch the video I made with some other awesome DevOps experts about the most common mistakes DevOps engineers make and how to avoid them.
Video
If you are a visual learner, or simply prefer to watch and listen instead of reading, here you have the video with the whole explanation and demo, which to be fair is much more complete than this post.
(Link to the video: https://youtu.be/OxDtADXeyv8)
If you rather prefer reading, well... let's just continue :)
About DevOps
Alright, let's start first with the big question: WHAT IS DevOps?
If you ask this question to 10 different people, they will probably give you 10 different answers, but the one I like the most and I normally use with all the clients I work with is this one:
There are 2 very important parts of that definition.
The first one is that it clarifies that DevOps is not a methodology nor a tool. It is something which needs to be understood, developed and adopted by people, thanks to processes.
Sure, tools are important. But they are important because they help you implementing and managing the processes you've designed. And those new or revised processes come from changing the way you, your team and your organization work, from changing culture. And this is ultimately all about people.
The second important point that that definition makes is about the Value. Value is the ultimate reason why we all do DevOps.
We need to Deliver value to our clients, whether they are internal or external clients doesn't matter, and we need to do it fast. We live in a world where everything needs to be done quickly, and we also need to keep innovating at an increasing pace. But at the same time, we need to do it reliably.
If we ship our products or services faster, but then no one use them because they don't work.. well, we haven't done a good job have we?
How to do this? How can we innovate and deliver value faster while still keeping or even improving our reliability? The answer is, of course, with DevOps.
Benefits for Organizations
Cool, now that we have this out of the way, let's see what are the concrete benefits DevOps brings to organizations.
Let's start with something more general.
According the 2018 State of DevOps Report, presented by DORA (the DevOps Research and Assessment organization), the top performing DevOps companies when compared to low performers spend:
- 66% less time on customers support issues, and
- 50% less time on customer identified defects and remediation of security issues
And because of that, they can spend much more time on new work and on innovating, enabling them to be more adaptive in their markets and disrupt their competitors.
The result? Better products, delivered faster, to happier customers by more engaged teams.
Benefits for the Business
How does this translate to Business?
According to the MCKinsey Developer Velocity Research, companies that are top performers in DevOps have a 4x higher revenue growth.
These businesses also score higher on customer satisfaction, brand perception, and talent management.
This would be in my opinion already enough to start thinking seriously about DevOps. But there is more, this time from the technical and technological side.
Benefits from the Technical Side
Once again accordingly to DORA's State of DevOps report, top performers in DevOps can deploy as much as 208 time more frequently than companies which don't do DevOps or that are in very early stages of adoption.
And not only they can deploy more, but they have usually a lead time for changes that is more than 100 times faster.
This is why DevOps helps delivering value faster. You can create more features, and you can do it quicker.
But that's not all, in fact as we said before speed is nothing if we are not reliable.
As we can see in the bottom part of the image, DevOps top performers are 7 times less like to experience failure and even when things go south the are incredibly faster in responding to incidents and recovering from them.
Those numbers seem out of this planet, they blew my mind as well... but after working with many clients on their DevOps transformations thorough the years I have to say that it really works.
What about Security?
We have one more point to address: security.
Now, I'm not a big fan of the term "DevSecOps" and the reason for it is that I think security should be always of main importance when doing DevOps. I always put it on the same plane as speed and reliability
Let's go back to the definition of DevOps we have seen before, with People, Processes and Products, and let's apply this to the security.
As you can see, we can split security in the same 3 pillars.
Doing so, and bringing the security work as part of your daily work, significantly helps in making your code and your organization more secure.
And if you do it correctly, this is how DevOps helps delivering value faster, and in more reliable and more secure way.
Recap
To recap, DevOps helps because Developers are at the heart of your company’s innovation, and adopting DevOps they can be more productive, collaborate more, and in the end be more engaged
Also, DevOps helps accelerating the delivery of value while optimizing and increasing reliability as well.
Final thoughts
I want to close this video with a final thought, and once again I'm gonna refer to the DORA report because it says something I think is very important
DevOps is not a trend, it effectively helps organizations improve their software development and delivery.
And I totally agree with DORA when they say that DevOps will eventually be the standard way of software development and operations, offering everyone a better quality of life.
If you and your organization are not "doing DevOps" yet, I highly encourage you to start now. Start small and iterate to reach better results, higher efficiency and reliability, and security. Do it now before the market you're in is disrupted by your competitors which are taking advantage of DevOps.
Alright, that's it for today.
Let me know in the comment section below what do you think, and if you've seen the benefits of DevOps in your organization.
Video
Too much reading? Watch the video now!