What IS DevOps?
There are many definitions of DevOps, too many, some might say. Some people say it's "People, Processes and Products", and that sounds great, but I don't know what I'm supposed to do with that. When I did waterfall I also had people, processes and products, and that was not great. I thought DevOps was supposed to be a huge improvement?
I've heard other people say that it's paying one person to do two jobs (Dev and Ops), which can't be right… Can it? I've also been told once by a CEO that their product was "made out of DevOps", as though it was a substance. I decided not to work there, but that's another story. Let's look at some better sources.
DevOps is a set of practices that combines software development and information-technology operations which aims to shorten the systems development life cycle and provide continuous delivery with high software quality.
But what are the practices? Why are we aiming to shorten the SDLC? Are we making smaller software? 'What is continuous delivery'?
I decided to read The DevOps Handbook. Then I knew what DevOps was, and I knew how to do it. And I discovered that I LOVED DevOps.
According to the DevOps Handbook, DevOps had three goals.
1) Improved deployment frequency; Shortened lead time between fixes;
Awesome! This means if a security bug is found it can be fixed extremely quickly. I like this.
2) Lower failure rate of new releases and faster recovery time;
Meaning better availability, which is a key security concern with any application (CIA). Lower failures means thing are Available more often (the 'A' in CIA), and that's definitely in the security wheelhouse. So far, so good.
3) Faster time to market; meaning the business gets what they want.
Sometimes we forget that the entire purpose of every security team is to enable the business to get the job done securely. And if we are doing DevSecOps, getting them products that are more secure, faster, is a win for everyone. Again, big check mark for security.
Great, so now I think the DevOps people want the same things I, as a security person, want. Excellent. How do I DO DevOps?
That is where The Three Ways of DevOps comes in.
- Emphasize the efficiency of the entire system, not just one part.
- Fast feedback loops.
- Continuous learning, risk taking and experimentation (failing fast)
In the next post we will talk more in detail about The 3 Ways (and how security fits in perfectly).