Hey there, folks!
Recently, I’ve been on a mission to level up my understanding of good CI/CD practices, and you know what kept popping
DevOps. At first, I was like “cool, so those are the people who keep our infrastructure running and manage our
pipelines, right? But, man, was I mistaken!
So, I took it upon myself to get a better understanding of this whole DevOps thing. I read a book, scoured the interwebs, and even talked to some experts. And now, I want to share my newfound knowledge with you all!
The book I picked up was “The DevOps Handbook” - it’s a real treasure trove of information, written by some of the smartest folks in the DevOps community. And while I was at it, I also stumbled upon “The Twelve-Factor App” - a methodology for developing software as a service (SaaS). It’s a great read, even if you’re not in the SaaS game.
Anyway, let’s get to the good stuff! What is DevOps, you ask?
Well, according to good ol’ Wikipedia:
DevOps is a set of practices that combines software development and IT operations. It aims to shorten the system’s development life cycle and provide continuous delivery with high software quality. DevOps is complementary with Agile software development; several DevOps aspects came from Agile methodology.
In simpler terms, DevOps is like Agile, but at a macro level. When you think about all the Agile methodologies, best practices, tools, etc., the ultimate goal is to deliver value to the customer. And that’s where the concept of a “value stream” comes in.
A value stream is the process of converting a business hypothesis into a technology-enabled service that delivers value to the customer.
And the DevOps Handbook breaks down DevOps practices into three ways:
The First Way: fast flow of work from Development to Operations to the customer. To make this happen, work needs to be visible, batch sizes and intervals need to be reduced, quality needs to be built in, and everything needs to be optimized for global goals.
The Second Way: fast and constant flow of feedback from right to left. This means amplifying feedback to prevent problems from happening again and detecting and recovering from problems faster.
The Third Way: creating a generative, high-trust culture that supports experimentation and risk-taking. This leads to organizational learning, both from successes and failures, and enables the organization to learn faster than the competition.
The book goes into more detail about each of these ways, with case studies from companies like Netflix and Amazon.
But enough about the book - let’s dive in into the topics I found most interesting!