Micro Focus is now part of OpenText. Learn more >

You are here

You are here

Hiring for DevOps: Look beyond the gurus and ninjas

Tony Bradley Editor-in-Chief, TechSpective.net

Because DevOps is a hot trend in IT, it makes sense that companies are seeking skilled DevOps talent and those looking for careers in IT are jumping on the DevOps bandwagon. These days you frequently see job listings looking for "DevOps experts" and résumés listing "DevOps" experience. But what exactly does that mean? What does a DevOps career path look like, and what skills are companies really looking for when hiring for DevOps roles?

DevOps is primarily a cultural shift that redefines how developers, IT operations, and other teams and individuals throughout the organization work together. That means the roles themselves already exist. While it makes sense on some level to say that you're looking to fill such roles with people who have experience in a DevOps environment or with DevOps-oriented tools, embracing the trend doesn't actually require creating or filling a role called "DevOps" anything.

Defining the term "DevOps expert"

"DevOps is a philosophy and a structure for improving development and operations," explains Tom Limoncelli, SRE at Stack Overflow Careers and co-author of The Practice of Cloud System Administration. "So, it really wasn't intended to be a job title. That said, companies are using it as one anyway."

Limoncelli says that the job titles commonly seen in advertisements on Careers.stackoverflow.com include:

DevOps engineer: A role previously called release engineering. This is someone who automates the process of building, testing, and releasing source code into production. Automating this process for the first time can take months or years of work. Maintaining it is a big job, too. A really good DevOps engineer doesn't just automate these things but creates and maintains a self-service system so that developers are empowered to do this on their own.

Site reliability engineer: Responsible for the operations of the service. People in this role keep sites reliable by minding performance, security, scalability, testing, deployment, and capacity planning.

One developer posed the question on Quora, "How can I become an expert at DevOps?" The responses weren't very helpful because they all seemed to come with an agenda pitching some specific training solution. The underlying theme, however, revolved around familiarity and experience with common DevOps tools and platforms. A developer is a developer, and an IT operations guy is an IT operations guy, but a developer or IT operations guy who is proficient with Chef, Puppet, Ansible, Docker, and other DevOps-oriented tools can ostensibly call themselves a DevOps expert and get away with it.

Sure, but what kind of DevOps?

TK Keanini, CTO of Lancope (recently acquired by Cisco), told me it's not that easy. He compared the search for a DevOps expert to the search for a guitarist to join your band. Lots of people know how to play a guitar, but there are a variety of styles of music that can be played on a guitar, and there's also the element of how well the individual guitarist meshes with the rest of the band. In Keanini's opinion, that is what is most important when it comes to filling a DevOps role.

Keanini says, "It is like asking an IT guy if they play DevOps. They should be able to describe to you their role, how they play, and what the music of the band sounds like. The trick here is that there are so many manifestations of successful DevOps teams that you really need to understand it in the context of the business they support, because ultimately that is how DevOps creates value. The customer base expects a certain tempo, and DevOps is the only way to deliver at that tempo."

While they can all play a guitar, there is a big difference between a classical guitarist, a heavy metal guitarist, a folk music guitarist, and a pop guitarist. Hiring a classical guitar "expert" to join a heavy metal band won't work, no matter how adept the guitarist is with the instrument. The same thing is true about filling DevOps-oriented roles.

Culture trumps roles and tools

DevOps really is more about the culture than the tools and technology. A group of traditional developers and IT engineers who understand and embrace DevOps culture can be successful, whereas a team of DevOps experts experienced with Chef, Puppet, Docker, and other DevOps tools that doesn't accept and adapt to the cooperative, collaborative nature of DevOps culture is more or less doomed to failure.

I wrote recently about which team or individual in an organization should be responsible for driving DevOps. In that article, I talked about the importance of letting go of traditional biases in order to work together effectively. Allow me to quote my own article: "The problem is that each department has its own perspective of the 'right' way to do things or what the top priorities are, and that can lead to conflicts. For example, can a DevOps initiative be led effectively by someone from QA without a 'test-centric' agenda creeping into the process? Possibly. It helps if everyone is conscious of the bias they bring to the table, though, and everyone can communicate openly."

Hiring DevOps talent

Does that mean you can't actually hire "DevOps experts" or find DevOps talent in the pool of available candidates, including your own staff? Not at all. It just means that you should know what you're looking for and why.

If you're an individual seeking a DevOps role, you should list your experience with the tools and technologies common to DevOps environments, but you should also be prepared to explain what DevOps culture means to you and why you would be a good addition to the team.

If you're an organization looking to adopt or expand DevOps and you're seeking developers or IT engineers to help build your team, be careful about how you word the job description. Don't just throw in a bunch of DevOps tool names and buzzwords and expect to find the best candidates. More important, as you sift through potential candidates, make sure you look past the ones that call themselves DevOps experts; don't automatically dismiss perfectly good candidates just because they don't call themselves DevOps gurus. And perhaps most important, make sure you give careful consideration to the current members of your staff. With your leadership, the talent you already have can become successful at DevOps.

DevOps is hot, and that means DevOps jobs are in high demand for both organizations and individuals. DevOps is also still a new and evolving frontier, so you have to take any claims of being a DevOps expert or DevOps guru with a grain of salt.

Image: Flickr

Keep learning

Read more articles about: App Dev & TestingDevOps