There is nothing like a “perfect” DevOps engineer!

In my last post I wrote about the “T-shape” model of a “great DevOps engineer” – but does that person actually exist?

I understand the DevOps team that builds & operates “something” in a complex environment. This includes the required software development aspects of it, the CI/CD pipeline, the monitoring tools required, the database or persistence layer, the infrastructure, … – everything that you need to be able to successfully operate what you have built as a team.

Wait… is it only that?

Everything mentioned above is technical, isn’t it?
The “software development” might be Java, Typescript or Go code (or anything else), the CI/CD pipeline is a technical thing. – but is this “enough” for the DevOps team?
I think that we need to add a business view into the team aswell – at the end, anything the DevOps Team builds needs to produce business value or needs to be compared to it.
A “defect” needs to get a dollar value, a new feature needs to produce new revenue and an update to our tools (e.g. monitoring) needs to be translated to costs or time&effort saved.

So what is the perfect DevOps engineer?

Skills shape

=>

A “T-Shaped” DevOps engineer would need to change his skills to have a “Square-Shaped” Skills matrix!

What else does he need?

In additon to the “technical skills”, he will also need to have the business view on the microservice or component he and his team owns.
In an outage, he also needs the communication skills to be able to talk and communicate to clients and a sense of the urgency of the problem.

While I believe that there are a lot of great DevOps engineers around, I have not yet met one that was close to the “target” of being “perfect” in all of the points mentioned – and I am sure I forgot a few…. Feel free to comment!

A perfect DevOps engineer does not exist. It’s the perfect combination of different T-Shaped engineers that act as one team that makes a great DevOps team.

Johannes, March 2022

What are key enablers for a great DevOps team?

Everyone in the team has its skills he is really good at. The really good DevOps engineers are able to “bend” their T-Shaped skills to something that is closer than to the square – maybe not in “all” parts of it but in a few of them.

But what a “great” DevOps team needs, more than anything else is Vision, Trust & Collaboration.

Recent experience from my professional career

Telescope, Insight, Outlook, View, Binoculars, Optics

In my professional career I recently joined a newly formed Development Team as part of a project. We quickly got up to speed with each other and created an atmosphere of trust in all of our (remote-only) meetings.
This made it easy to start collaborating and jointly work on the tasks we had in our backlog.
What we did not have right from the start was a vision, on what we wanted to achieve as a team. Once we had one, or at least a sprint goal for the next two sprints, we where able to quickly deliver value.

A team needs visionary engineers

Hitech, Art, Concept, Digital, Psychedelic, Design


If you want to create a great DevOps team, you will also need visionary engineers, that are brave enough to try out new things by themselves and empower the rest of the team to follow them towards their ideas.

What do you think about how to form a great DevOps team?
Please share your throughts in the comment section!

DevOps and the T-Shape expert

Last year I attended and internal meeting with our UX team and while talking to the team, we touched on a very interesting question:

How do you define a “great DevOps engineer”?

If you ask five different people, I am sure you would get at least six different answers 🙂

So, without trying to “answer” the question but still covering parts of it, let’s try to look at what DevOps actually is and means. 

The conversation on the meeting started with a colleague asking for some support around “DevOps” tasks that were needed to perform certain activities around release activities. I pushed back on him, pointing out that for me, everyone should have a little bit of “DevOps” knowledge – but re-defining these “DevOps” tasks as being “Automation Tasks”.

I very much enjoyed the conversation, and it reminded me of something that I’ve leared during my DevOps master certification in 2019:

A “great DevOps engineer” has a T-shaped skills profile.

So what does that mean?

A “T-shaped skills profile” is easily explained: Think about the “old” traditional way of combining an engineering team, you had “Analysts”, “Programmers” (Developers), “Test Engineers”, “Web Designer”, “System Engineer” (build automation, scripting, etc.).

In that case, you had the problem that you hit the “bottle neck” with certain skills during different phases of the project, e.g. the “Test Engineers” needed to work vey long hours right before the next release of your piece of software. That was obviously bad for the overall outcome of the team.

However, if you manage to compose your team with people that have a very broad knowledge base for different skills and a small amount of skills where they are experts, your team becomes more efficient because you can support each other in these “clunchy situations”, e.g. “developers” can pick up a bit of “QA work” right before the release date.

1*vVaOjA-Ty1rPRccNsHCb2w.png (444×251)

So, what does this mean for you?

  1. Be aware of your “expert” skills
  2. Practices the skills, where your team is “weak” at, to become better at it and broaden your teams capabilities

Why do we need teams that consist of “T-shape-skilled” engineers?

Because in the “DevOps culture”, its all about “collaboration” – and that is easier, if every team member understands what the “expert” is talking about, at least high level.