After watching this video, you will be able to define DevOps,
identify misconceptions about DevOps, and recognize the best approach for teams using
DevOps.
The term DevOps is often misunderstood.
For example, this drop-down list that I saw recently while signing up for a webinar.
It asked for my job function and provided the options of DevOps/Technical Ops or Software
Developer/Engineer.
I’m a software engineer who practices DevOps.
These job titles don’t reflect DevOps and frankly, this organization should know better.
Clearly, they did not notice the letters “D-E-V” in DevOps, which stand for “development.”
Here is a clue, if you’re not doing development, you’re not doing DevOps, you’re just
doing Ops.
They apparently did not understand this.
There are both Dev and Ops in software development.
For them, DevOps/Technical Ops is something that the Ops people do.
But DevOps is not something that just Ops people do.
There are different perspectives of DevOps.
You start with traditional development and operations that have a wall of confusion between
them.
Many organizations, like this webinar organization from my example, think that DevOps is something
the Ops people do, and that DevOps is a subset of operations.
Some organizations think that DevOps is something developers do.
But most organizations think DevOps is a separate team that sits between Dev and
Ops and keeps both of them happy.
I’m going to talk more about that in a moment.
None of these perspectives are correct.
DevOps is a mindset that the whole organization adopts.
You will see this a lot in start-ups.
DevOps is their company culture.
It’s Dev and Ops working together with the same mindset, preferably on the same team,
using the same goals and measurements.
Jez Humble wrote, “The DevOps movement addresses the dysfunction that results from organizations
composed of functional silos.
Thus, creating another functional silo that sits between Dev and Ops is clearly a poor
(and ironic) way to solve these problems.”
Remember, there is no such thing as a DevOps team.
That is an antipattern; it causes more problems than it would solve.
You see, DevOps is the recognition that working in silos doesn’t work.
You may have seen this “wall of confusion” graphic, made famous by Andrew Clay Shafer.
It depicts the diametrically opposed goals of development and operations.
Development is measured by how many new features they can push to production.
Operations, on the other hand, is measured by how stable production is.
One way to stabilize production is to not change anything, like adding new features.
If you create a separate DevOps team, you are just creating another silo that further
separates Dev and Ops.
This doesn’t make any sense when you look at it this way.
You don’t create a team to make you DevOps any more than you would create a team to make
you Agile.
No one forms an Agile team and claims that their organization is suddenly Agile because
of that team over there.
No, the organization must adopt the Agile mindset, becoming Agile.
DevOps is no different.
The reality is that DevOps is not a job title.
It is not something one person does, or a team does.
It is a cultural transformation on an organizational scale.
It is the practice of development and operations engineers working together during the entire
software lifecycle, preferably on the same team, following Lean and Agile principles
that allow them to deliver high-quality software stably and continuously.
It starts with learning how to work differently and embracing cross-functional teams with
openness, transparency, and trust as pillars.
If that doesn’t sound like your organization, then you are probably not practicing DevOps.
In this video, you learned that DevOps is a mindset that the whole organization adopts.
DevOps solves the problems caused by siloed teams.
DevOps is the practice of development and operations engineers working together during
the entire software lifecycle, following Lean and Agile principles that allow them to deliver
high-quality results.