What is DevOps? It’s a common technology term that’s been bouncing around the past decade, and a useful thing to have on one’s resume. But what exactly are people talking about when they mention it? Is it the technology, or is it the business practices?
So what is it actually? Well It’s all of the above.
The basics of DevOps start out as the use of Agile programming methodologies in development, and adapting those methodologies into operations procedures (that is, the creation of servers, updating of servers, and management of business applications & processes). The concept was built from that, with the first DevOps days in Belgium in 2009 where the concept was defined. The Operations in DevOps also follow the ITIL model regarding process handling and definitions.
Process wise, it follows the theory of constraints, which helps identify where issues in business show up, and how to plan around them. This is essentially the first step of the “Three Ways” model, where you work on identifying business process flow and systems. By having a good understanding how business processes work across the company, only then you can start to really improve things. Which leads onto the second step of the “Three Ways” model. Work on getting feedback from teams and see where things can be improved. Not only in the actual processes, but by monitoring the time it takes to do work, identify bottlenecks and work on resolving them. The last step of the “Three Ways”, is implementing quick changes and actually being able to experiment securely in a way that possibly doesn’t disrupt day to day operations. This is because if the day to day processes are planned out, bottle necks identified, teams can move faster. In part with defining processes, you can start to look at automation to get around potentially unneeded human intervention. With experimentation, you can plan out new processes or completely revise existing models quicker, and adapt to market changes more readily.
This is all just a very superficial look at DevOps and what it means as a process. I highly recommend anyone interested in learning about this check out the following books:
- The Goal: A Process of Ongoing Improvement (30th Anniversary Edition)
Incidentally, if you’re interested in getting certified in DevOps (the project management process), there are a few certifications out there. The main organizer is the DevOps Institute. And there’s two primary ones.
You should be able to use the DevOps Handbook as a starting point for both. And while they’re not that popular, certifications can show that you’ve at least heard of the stuff, and at most, actually know what you’re talking about (or understand what someone else is talking about) when it comes to the subject matter. There’s also to DevSecOps certifications relative to these too.
So DevOps is essentially an expansion to the Agile development/project model. With some integration with ITIL IT business process handling. While not completely necessary, knowledge and/or experience in both Agile and ITIL is a good thing to have before diving into the DevOps model, as they round out your knowledge in existing processes.
Next post? DevOps the Flamethrower! Um, I mean, the Technology behind DevOps today.