HiveBrain v1.2.0
Get Started
← Back to all entries
patternMajor

Why shouldn't I try to hire a 'DevOps Engineer'?

Submitted by: @import:stackexchange-devops··
0
Viewed 0 times
engineerwhyshouldnhiredevopstry

Problem

The idea of having a DevOps Engineer has become quite popular recently, and it seems appealing to just have a person who can slot in and provide many of the benefits of DevOps, as described in the Puppet blog:


Organizations using DevOps practices are overwhelmingly high-functioning: They deploy code up to 30 times more frequently than their competitors, and 50 percent fewer of their deployments fail, according to our 2015 State of DevOps report.

However, I've noticed a lot of vocal opposition to the idea of a DevOps Engineer to try and make these improvements:


Even with broad agreement about core DevOps attributes, controversy surrounds the term “DevOps engineer.” Some say the term itself contradicts DevOps values. Jez Humble, the co-author of Continuous Delivery, points out that just calling someone a DevOps engineer can create a third silo in addition to dev and ops — "...clearly a poor (and ironic) way to try and solve these problems."

Why might it not be such a great idea for a business to hire a DevOps Engineer to try and 'implement DevOps', as opposed to the organisational change advocated by blogs like this? Will the benefits be negated by just having an isolated DevOps role?

Solution

TL;DR: You should never try to hire a DevOps Team

There are essentially three most common roles to hire for:

  • DevOps Architect / Evangelist



  • DevOps Engineer



  • CI/CD Engineer



These roles are distinct from your 6 essential software development roles that traditionally compose the software engineering organization:

  • Product Management



  • Software Development



  • Tools Development



  • Security and Compliance



  • Quality and Testing



  • System Operations (SRE)



Lets go through the three roles one by one and see how they fit

DevOps Architect or Evangelist

  • Why: If you are lost, slow, broken and don't know what to do.



  • When: At the start of the process in planing stages.



  • What: Management level role to guide all managers and leads in the entire Software Engineering org. This person will plan the entire transformation of your engineering organization to a highly functioning state.



  • Who: Consulting member well versed in theory, management practices, culture topics and operations who reports directly to VP of Software Engineering.



In some cases and for smaller and mid-sized companies you might start the process instead with hiring a consulting organization, like DORA.

DevOps Engineer

  • Why:



  • To bridge the gaps between teams if they are organized along the functional roles mentioned above to ensure cross functional level cooperation.



  • To embed with product oriented teams, which have each of the 6 traditional roles included in the team, to help bridge the knowledge gaps and to help with implementation and adoption of the novel practices and tools.



  • When: Once you've laid out your plans and the organizational transformation starts and the entire management team is on board.



  • What: Enable cross function cooperation, ensure that team boundaries are broken down, that local optimizations inside teams are not creating a barrier to high throughput of work throughout the value chains all the way from customer wishes to customer deliveries.



  • Who: Experienced engineer with skills both in software development and system operations. He should be skilled in the best practices, process and culture changes related to DevOps transformation.



CI/CD Engineer

  • Why: To help implement CI/CD pipelines, integrate your tool chain, bring in the tools that will enable better working of the company.



  • When: During the transition in larger organization, while the above roles have been already filled.



  • What: Engineer, which is essentially part of the tools team that will be able to setup CI/CD pipelines and start integrating internal systems in a way that will remove friction from the throughput of work.



  • Who: Engineer experienced with Tools, Integration process, Release Management and DevOps practices. Someone who understands they are replacing human gating in release process by Automation.

Context

StackExchange DevOps Q#797, answer score: 26

Revisions (0)

No revisions yet.