You're doing DevOps wrong
Stock Snap

You're doing DevOps wrong

I cringe a little everytime I see a posting for a "DevOps Engineer".

I admit it, one of my pet peeve’s is the term “DevOps” Engineer. DevOps is a cultural mindset about how to enhance the Software Development Life Cycle by more tightly integrating the “Dev” and “Ops” personnel. In other words, you are a developer that uses DevOp practices, or a sysadmin that uses DevOp practices. Designating a position of “DevOps” illustrates an anti-pattern towards the culture of DevOps.  

Now I know you will say, there is no one right way to do DevOps. That is true. However, doubling down on the old way of doing things is not a great solution either.

DevOps (the movement and culture) was implemented to alleviate issues resulting from the “just throw it over the wall” approach of Dev and Ops interactions. It was designed to create empathy for each side, to have each side work more collaboratively and to make decisions in unison instead of isolation. In other words, Ops would become more “Devvy” and Dev would become more “Opsy” and could plan and make decisions jointly. This forced both sides to embrace continuity and dismantle isolated silos. The goal is to empower individuals to be accountable for the design, development, deployment, monitoring and enhancement of a product. To restate, the goal is to make individuals accountable for a PRODUCT, not a code class, not a helper library, not DNS records, not a load balancer, a PRODUCT. The Devs or Ops personnel may be only slightly ingrained in the alternate space, or they may be fully immersed in it. ( I lean more towards immersion to prevent communication loss between every stage of the tech stack)

So why does the term “Devops Engineer” indicate an anti-pattern?

This could easily be considered an overreaction. Conversation is littered with semantically incorrect statements all the time that still convey the correct and intended intent. In this case, however, the implementation details demonstrate the inherent problems.

Unfortunately, the “Devops Engineer” designation has in fact led to the following organization in many cases.

No alt text provided for this image


Ops and Dev have been able to further isolate themselves from each other by justifying another barrier between them in the name of progress. Further compounded the problem, is this “Devops Engineer” is frequently neither Dev nor Ops but rather a kind of Jenkins/Test engineer.  

This type of arrangement usually results from a company wanting to embrace modern buzz words but failing to adopt the right culture needed to truly transform the company. 

Now, there is nothing wrong with Continuous Integration. Jenkins and automated tests are key and crucial. However, hiring someone to run your Jenkins and automated tests does NOT alleviate OPS nor DEV from solving problems together to deliver the most appropriate PRODUCT.

You should take a real an honest look at yourself and your company and see if Devop-anti patterns are curtailing your growth and creativity...

DevOp Anti-Patterns


Brant, thanks for sharing!

Like
Reply

Great thoughts Brandt. I love the “outcome” oriented mentality you point out here.

Like
Reply

To view or add a comment, sign in

More articles by Brant Snow

Others also viewed

Explore content categories