Before we start, 4 quick points from me:
Level 1 : Don’t Panic
Microsoft has this definition of DevOps:
“DevOps (Development/Operations) is the union of people, process, and technology to continually provide value to customers...
…DevOps enables formerly siloed roles to collaborate to produce better, more reliable products.”
Wikipedia has this definition:
“DevOps is a set of practices that combines software development (Dev) and information-technology operations (Ops) which aims to shorten the systems development life cycle and provide continuous delivery with high software quality.”
These are a great definitions if you already have an understanding about the background and theory underpinning DevOps but they are not great places to start if you are new to it all.
The best thing to do is relax. Understanding DevOps will take some time but if it’s absolutely worth it as you can apply the teachings in nearly any scenario.
Level 2 : Understand the relationship between Agile & DevOps
Level 3 : Understand what a modern development pipeline looks like
This is just en example but if you’ve not seen one before, it’s important to be familiar with the general flow and some of the terms.
Level 4 : Take your time and learn the fundamentals (including Lean)
I don’t like reading novels. I have honestly only ever read 3 novels in my life; Orwell’s 1984 and the two below. Read these and you will see inefficiencies EVERYWHERE.
Btw, Lean is a systematic approach to process improvement and is an important part of DevOps. The brilliance of Lean is that a lot of it is counter intuitive.
Level 5 : Jump-in and apply to the real world
Now’s the time to experiment, get feedback and learn lessons. Some possible things you could try playing around with;
- Scribble down some processes that currently exist
- Experiment with a Kanban board (i.e. Trello, Jira)
- Do some Value Stream Mapping exercises
- Practice with a source control tool (i.e. Git, TFSVC)
- Do a proof of concept with build/release software (i.e TeamCity, Azure DevOps, Octopus Deploy)
- Review your current processes to identify bottlenecks, WIP proliferation, unnecessary hand-offs, rework etc.
Level 6 : Learn from the experts
Lastly, here are some good blog posts that really made me think and helped clarify the topic even further.
devops-culture-and-trust/ – I’ve read this blog post from Alex Yates 5 or 6 times.
devops-and-segregation-of-duties – Great post by Jeehad Jebeile. “Seperation of Duties” and “Auditors” are two terms that always get shouted when starting a DevOps journey.
Ranger4 are a small consultancy and DevOps training provider – have a look around their site – I rate these guys.