In my last post, I talked about DevOps as a culture and as a role. These days, a lot of companies are looking for a DevOps engineer to be a part of their DevOps teams. I know labeling someone with this term contradicts DevOps values a bit, but what exactly is a DevOps engineer? And why are so many companies looking for them?
Let’s start with the first part of that question. There is no training or educational path to become a DevOps engineer. Typically, DevOps engineers are senior developers or sysdamins who have skills in business, organization, configuration, automation, operations, and leadership.
In other words, it’s typically people who are confident in their current skill set and have branched out into other roles. They are hired because they have deep knowledge about the field and have lots of hands-on experience. You won’t find a job posting on LinkedIn that isn’t asking for at least 5 years of experience before applying (but then again, that’s pretty much any position).
They want someone with DevOps skills because companies that implement a DevOps culture have better results! Puppet’s State of DevOps report showed that high performers spend less time (28%) on configuration management, deploy more frequently, and recover faster after implementing DevOps practices. And these are just some of the many advantages.
It’s not that companies are specifically looking for DevOps engineers, but anyone with DevOps skills. If you go to LinkedIn or any job listing site, there are many different types of DevOps positions.
According to Puppet, these are the three top skills that DevOps engineers need:
Process re-engineering is probably the most telling skill. Engineers are not being hired to write code from scratch as much, but to find the best open source tools that can function with a company’s current platform and operating systems.
After searching through many DevOps engineer positions, these tended to be the common skill set requirements:
Since DevOps can be interpreted in so many ways, it can be hard to determine what counts as having a senior level of DevOps knowledge. Mainly, if you want a DevOps role you must know your stuff better than anyone else. You must cross train yourself because not every company is going to hand you the skills that improve your “DevOps skill set.” That means embarking on projects that allow you to get familiar with automation, scripting, configuration, leadership, etc. You must learn to market your skill set and show others that you know what you are doing. Don’t know how to get started or how to show off your skill set? Here are some places to start: