This year was when I learned the hard way how to to hire a Devops engineer. It was the end of Q1 2022, I had spent 3 months of the new year sitting through 20 meetings with recruiters, read 50+ resumes, and chatted through 30 half-hour screening interviews.
I was exhausted and drained after just the first quarter of the year! The mandate for me as a hiring manager was to take the fresh CAPEX for the new financial year and grow my team 3x. In early December 2021, this seemed more than doable. I had grown teams of Business Analysts, Project Managers, and Product Managers in less time. Now, in hindsight – to say that I was naive was an understatement.
The challenge that I faced and that I had not thoroughly planned for was that I was hiring for a skillset that I knew fairly well albeit from the business side, but not the technical side. On the surface, DevOps makes total sense to me. As an iterative-product methodology connoisseur I didn’t think it was that big of a leap for me to get my head around. But, to hedge my bets I’d rely on our recruiters to do some “technical vetting” of our candidates.
By “technical vetting”, we’re talking about finding keywords on resumes and then passing them through the internet tube and into my inbox. Now, don’t get me wrong. I see the value in recruiters and they have been an invaluable resource in the past. But when it comes to hiring DevOps and Cloud Engineering – it takes one to know one (so to speak).
Now, what I hope to give you in this article are just a few tips to help you avoid the struggles that I went through when trying to grow my DevOps team. Implement these tips to save yourself from the pain I went through!
How to Approach Hiring a DevOps Engineer
Table of Contents
ToggleWhen it comes to hiring a DevOps Engineer, make sure that you’re asking the right questions of yourself before stepping foot into the hiring process. The biggest mistake I made before I even read the first resume was not having a clear picture in my mind of the type of DevOps Engineer I was looking for.
So, what kind of DevOps Engineer are you looking for? someone who is focused on:
- Automation
- QA and Testing
- Monitoring and Visibility
- All of the above?
DevOps Engineers typically have a background in software development and knowledge of how to deploy, configure, and maintain systems in production environments. They are also usually familiar with scripting languages like Python, Java and/or Ruby.
Do you need someone who can write code for automation? Are they experienced with large-scale deployments? Do they know how to automate anything? These are all questions that you should be asking yourself before hiring a DevOps Engineer.
If you need someone who can write code for automation, it’s important to find someone who is experienced with large-scale deployments and mastering the art of automation. They should be able to write code for anything from small website tasks to large-scale enterprise systems and know how to automate most things.
So, first things first. Figure out what the missing piece of your team is. What type of engineer will round out your team’s skillset and help you achieve your objectives?
What Technical Skills Should They Have?
DevOps is first and foremost a technical role. We have outlined some critical soft skills for DevOps engineers in the next section. But without these technical skills, they won’t able to provide a lot of value to your team.
Coding and Scripting
To survive as a DevOps engineer, you need to have a basic understanding of coding and scripting languages such as Python, Ruby, and Go. Many DevOps engineers come from a systems administration background, so it is common to see DevOps folk coming up with Linux experience.
Networking
Your DevOps engineer candidate should have a firm understanding of network protocols and how they’re used for different devices to communicate on networks. This includes TCP/IP, HTTP and HTTPS, as well as UDP.
Cloud Providers
Your DevOps engineer should also be proficient in using cloud providers such as AWS or Azure for managing infrastructure resources. Ideally, they have a firm grasp of infrastructure management and be able to identify performance bottlenecks and any resource contention. Certifications with these cloud providers will give you insight into whether they understand the conceptual theory behind these cloud providers’ services and how they work, but you’ll need to dig some more to figure out if they have hands-on experience.
Containerization
A DevOps engineer should have some experience with containerization technologies like Docker to build scalable solutions for the business. This could include the migration of legacy on-premise applications to modern cloud infrastructure. With the rise of containerization technologies like Docker, it’s become an expectation of engineers to have experience with these tools to be able to build scalable solutions for their businesses.
Automation
Finally, a DevOps engineer needs to have an understanding of infrastructure as code using tools like Terraform or CloudFormation to automate the provisioning of resources for their organization. Automation reduces the manual burden of building, maintaining, and tearing down your cloud infrastructure. A good DevOps engineer will see the value in that and make it a priority to incorporate automation into your development workflow.
What Non-Technical Skills Should They have?
DevOps is a cross-functional role that requires a variety of non-technical skills working with other teams and not just technical prowess. While having strong technical skills is a must, they will go much further and make a much larger impact if they can bolster that technical knowledge with these soft skills.
Communication
In the DevOps world, communication is critical. The DevOps engineer spends a lot of their time working with teams, expressing ideas for improvements, and explaining the value of data from the development lifecycle. It’s not just important to be a good communicator in order to do these things successfully—it’s essential.So this is a critical skill if you want the DevOps culture to continue to grow within your organization.
Customer focus
A key to a successful DevOps process is customer satisfaction. DevOps professionals should ensure that every function they perform follows business objectives and delivers value.
Growth mindset
DevOps is continuously evolving year after year. So engineers need to adopt a growth mindset and be constantly looking for new ways to solve problems. According to Dr. Carol Dweck, a growth mindset is a belief that your skills and intelligence can be improved over time. This thinking is crucial for engineers because as technology evolves, so do the problems they’re solving.
Finding the right DevOps Engineer can be a long road, but with the right approach you can be efficient with your efforts and find the right candidate.
There is no right or wrong way when trying to hire a DevOps engineer, but with a simplified approach, you can be efficient with your search.
The first step is to know what you are looking for. What skills do they need? What experience do they have? How much are they asking for? Once you have a clear understanding of what you want, it’s time to start searching. You could try posting a job listing on popular job sites or reaching out to recruiters in your area, but there are also other ways to find talent.
If you want to skip the pain altogether, reach out to us and we can help streamline the whole process. We’re cloud experts and when it comes to hiring DevOps and Cloud Engineers – It takes one to know one!