What It Takes To Be A DevOps Engineer in 2018
The Demand Keeps Growing
If you found this page because you’re looking for information about DevOps skills, then you are in the right place.
Because in this definitive DevOps guide you’ll learn what it takes to be a well-rounded DevOps Engineer.
Since 2007, my life has been constant IT projects:
- Building private clouds with vSphere v3 – 6.5 and Xen v5 – 7.
- Deploying and migrating apps to Azure and AWS public clouds.
- Data Center migrations requiring fork lifting 1000s of servers.
- Automating anything not nailed down.
All this and more, while still trying to innovate and stay up with new technologies.
If you’re in IT this all probably sounds familiar, right?
Times are changing for the traditional SysAdmin.
The lessons learned that stands out from these experiences is this:
A different breed of IT talent is needed if you plan to advance your business beyond the typical IaaS (infrastructure as a Service) model.
So if you’re a Hiring Managing looking for information or a Systems Admin/Developer looking for guidance, like I said, you’re all in the right place…
We’ll cover what it takes from end to end.
In a moment, I’ll share what I’ve discovered through my trials and tribulations over the last decade and give you the details on the best 10 DevOps skills.
So stick with me, and I will share the secret recipe of skills that will help you identify the elusive DevOps Engineer talent whom can successfully get your applications running “RIGHT” in the cloud.
And for 2018, I’ve updated the FAQ at the end of this guide because blockchain is now a disruptor that we need to start considering.
I’ll also warn you up front; it’s going to take more than knowing VMware vSphere and Linux to even get you out of the gate…
My Own DevOps Definition
Let’s start with a clear and concise DevOps definition.
Because if you searched the Internet today, you would find there aren’t many definitions for DevOps…
…and, your guess is as good as mine which one is right.
So here’s how I like to think of it:
“DevOps is the culmination of behaviors, community, culture and technical talent colliding to improve user experience through tools, technologies, trust and people.”
How was that for a DevOps definition? And here’s where you can find a concise DevOps strategy…
Share your thoughts in the comments.
Creating A Perfect DevOps Engineer Job Description in 2018
Before we get to the meat of this post, let’s figure out what a DevOps engineer job description should consist of:
First, let’s begin with a DevOps Engineer job search. Go ahead, check them out then come back.
Do you see what I see?
They’re all the same job description except for a few unique scripting skills.
I plan to give you the secret sauce if you stay with me until the end. Here we go…
10 Best DevOps Skills To Look for in Job Applicants
#1 – An Impeccable SysAdmin
Must be a senior level Windows/Linux Administrator (Either/Or/Both depending on your shop) with 5 – 10 years of experience. Why? Because they need to be able to build and administer servers in their sleep. But that’s not the only reason, a lot is riding on someone to automate server deployments because this is a big problem in most IT shops.
#2 – Virtualization Experience
Must have 3 – 5 years of virtualization experience with VMware, KVM, Xen, Hyper-V, or whichever favor hypervisor you are running in your private cloud. Now, they may never get involved in the day-to-day support of the infrastructure work, but they darn-well better understand it because most public clouds are running multiple flavors of virtualization.
#3 – Broad Technical Background
Along with virtualization experience, they must understand storage and networking. Why? Because gone are the days when network and storage are silos. You need people who can design a solution that scales and performs with high availability and uptime. Applicants also need to understand fault tolerance and failure domains so they are not putting all the eggs in one basket.
#4 – Scripting Guru
#5 – Borderline Developer (more is better)
Have I said they need to code in C+, C++, .NET, ASP? No, I am not repeating myself. I am talking about writing scripts that will fire off and orchestrate the complete deployments of DEV, QA and Production environments via tools such as Chef, Puppet, CFEngine or other tools of this kind. Why? Because gone are the days when someone installs Windows or Linux from a CD. Nowadays, you fire off a command that shoots out a server build, then triggers another script that installs applications, then licks its lips and shoots off yet other scripts that do configurations and validation checks. Whom do you think is going to write all this code? Not a SysAdmin. DevOps Engineers will.
Some would argue he/she doesn’t exist but I disagree. The DevOps Engineer is a new emerging role you soon won’t be able to be without.
#6 – Chef, Puppet or other Automation Tool Experience
I think I already mentioned automation tools such as Chef, but there are others such as Ansible, Fabric, and GIT that all have their place on the keychain too. Finding a DevOps Engineer with all this talent will not be easy or cheap. But let’s keep going while I have your attention.
#7 – People Skills
There used to be a free pass for people who were geniuses but they just couldn’t get along with anyone. Call them JERKS or other four-letter words, but they were tolerated because nobody else could do what they did. Not the case in today’s world. Fault tolerance and scalability happens at the people level too. And you need people others can go to for assistance without someone taking off their head with insults. Do your best to find people who can communicate with emotional intelligence (basically, they stay composed in stressful situations). This also segues into the next DevOps skill related to being human…
#8 – Customer Service
If you have watched Gene Kim’s video on YouTube, then you have heard how important the feedback loop is. Finding people with all the technical skills I have listed will be hard enough, but now I am adding customer service to the list. Here’s a thought. If applicants have owned a business, then they are probably good at customer service. Finding people who care and can drill down into a conversation with the developer or customer is key to solving problems. It really does take a special person to listen to feedback, especially when the developer or customer is calling someone’s baby ugly. I wish I had a dollar for every time a developer blamed my infrastructure for why they were late on a project, or why their app was slow.
#9 – Real Cloud Experience
We’re almost there. The ninth DevOps skill you want is experienced deploying applications in Amazon AWS, Google or Azure. Real stuff that was measured in successes. Why? Because there’s a shortage of people who understand IaaS versus PaaS; stateful versus stateless, and something is known as loosely coupled apps. It’s no longer about fork-lifting existing servers and applications to the cloud, now it’s about designing and deploying applications using the “best of the best” Amazon, Azure and Google have to offer. We’re talking doing what the people building clouds are doing. Which is leveraging software-defined data centers to code true PaaS environments. We’re talking compute, networks, and storage resources at developer’s fingertips.
Number 10 – Someone Who Cares
So as we come to the last skill which is dear to my heart, I want to say it’s not common. Why? Because most IT people are – well – IT people, and want to be left alone in a dark corner. Finding someone with all this skill is rare and worth every dollar. But now I am talking about someone who cares and can mentor others. Someone who is willing to share their ideas and scripts with the team. Someone who can lead people and get people thinking together about solving problems. Far too often the real problems with IT are because IT people don’t talk, or should I say, they don’t listen!
The Search is Over or Should I Say is Just Beginning?
These are the 10 DevOps skills to look for in applicants while you screen resumes and people for the elusive DevOps engineer position you have posted on Dice or LinkedIn.
It won’t be easy to find applicants, and you will most likely need a strategy to create the right set of DevOps interview questions.
Because there aren’t many managers or recruiters around with the right mindset to write them…
…and even less who understand what DevOps is.
The other option is to develop DevOps skills in-house which in some cases is less disruptive.
The $ecret $auce (Hint)
Finally, I want to cover what a DevOps Engineer salary may be.
Let’s look at this salary graph.
On the top end (we’re talking seasoned) the range might be a little low, while on the low-end the range is excellent.
DevOps Salary Graph Compliments of SimplyHired
Think about what I just covered in this post.
We’re not talking a network or server engineer who might make anywhere from 85 – 110K.
We’re talking an elusive skill set not many people in the world currently have.
Finding someone with 6 out of 10 of the skills listed above would be a prize!
So now I am going to share the secret sauce.
How important is it to you to do things right the first time?
Or should I say, how much are you willing to pay to do it a second or third time, or until someone gets it right?
You see, what I have learned in the last 7 years is businesses can always afford to pay twice, yet they never understand the value of spending enough for the right people to do it right once.
Championships are won by the right people and leaders who leave it all on the field, or court when it counts most.
Rule of thumb:
A DevOps Engineer Salary is more than enough but less than having to pay twice or three times the amount to do the same work over…
Better yet, sometimes people with the best DevOps skills don’t necessarily cost the most, yet they bring the most value to the team.
Something Special Just For Windows Admins…
If you’re a Windows SysAdmin and you’re not sure where to start, check out my NEW Ultimate Guide for Microsoft DevOps.
More Useful DevOps Guides:
- Read all about my DevOps Journey in this Free DevOps eBook
- DevOps Toolchain: Download 3 Free Tools Used By Pros (Ansible, Git, Jenkins)