Hiring DevOps engineers plays a crucial role in driving innovation, enhancing developer’s efficiency, and ensuring seamless software development and operations. However, for young startups that want to move fast, hiring a skilled DevOps engineer can present unique challenges. Startups often know how to hire for engineering and business roles, however as DevOps skills are rarely part of the founding team, they lack the experience needed to secure the right DevOps talent.
In this blog post, I'll explore the main misconceptions and obstacles young startups face when hiring a DevOps engineer, offering tips and strategies to overcome them.
When hiring the first DevOps engineer in your company, it is often tempting to hire a junior. In an ever-growing market junior engineers are more common, they cost less and demonstrate high motivation when entering their initial position. While these reasons should be considered, and are understandably appealing to a beginning company, well-seasoned engineers can often offer a better long-term investment. Choose to hire a senior engineer and from the get-go they’ll create an accurate design and structure of a foundation that will be able to support your platform’s needs.
Many times I have seen companies struggle to develop their platform due to architecture mistakes done by inexperienced engineers, which leads to bigger issues that later on are harder to reverse. For example, rushing to solve problems by implementing in-house solutions before exploring bigger context and searching for structural changes in architecture—which can make the problem itself irrelevant. It goes without saying that a junior engineer will need professional guidance, and failure to provide them with this could lead to frustration, pushing them away from the collaborative environment they need in order to grow and flourish professionally.
Over the years, I have seen a few clients that have had a manifestation of this problem. A junior engineer joined the team, received no training, had a challenging time while learning on the job (and the company suffered from slow infrastructure progress), then after a year, left for a better position somewhere else. Generally, hiring junior engineers makes sense if you already have an established team lead that can dedicate the time to train and support the junior engineer. This is usually true for bigger startups and much more mature companies.
In a global era, post Covid-19, remote work is becoming more and more common, giving your company access to more experienced talent than the local market can offer. While it is not easy to transform an organization to work with remote engineers, it is worthwhile—opening up opportunities that were not available before. This is especially true for startups that need to hire fast or in many departments and areas. Instead of compromising on the quality and availability of local talent, hiring remotely allows companies to hire the best people for the job, at the small cost of not working together in the office.
If you do decide to hire remotely, try to carryout the interview and hiring process with the tools you’ll use to manage the remote work routinely:
When it comes to interviewing potential engineers, there is a tendency for young startups to go too deep into a specific technology internal (e.g. “explain how DNS works”), instead of asking more practical day-to-day questions. Personally, I recommend using practical questions and tasks rather than theoretical ones. For instance, most of our clients use Terraform and Kubernetes, therefore it makes sense for us to dive deeper into these technologies and ask the candidates to complete one or two tasks taken from one of our client sprint boards.
“Create a Terraform module to deploy a simple EKS environment with autoscaling that will mostly run short-term jobs scheduled via an external backend application.”
“Setup Ingress Controller (Nginx, Kong or alternative) with basic DoS rate-limiting rules”
Ultimately, you’ll want to hire an experienced DevOps engineer as your first hire, meaning it’s ok to ask more architectural and design related questions—providing you keep them close to home.
“Running a microservices based application on Kubernetes, what would be the best approaches for implementing encrypted communication between the services? What are the challenges of each approach?”
Remember, it’s ok to get inspiration from articles like ‘top X DevOps interview questions,’ but try to avoid the temptation to ask broad questions like “how is DevOps different from Agile technology?” Where possible, adjust questions to cover current and soon-to-be challenges in your infrastructure, and please don’t use the questions directly mentioned in these articles!
Opsfleet has been hiring DevOps engineers globally for the last 8 years. We are by no means perfect, however experience has told us that our worst hires happened when we rushed the process and didn’t pay enough attention to the yellow flags raised during the hiring process. From the first interview, to how and where the candidate writes and saves their README, everything in the hiring process is important.
For example, a candidate sending us a txt README file in a zip archive isn’t the best approach considering Github's markdown support is great. In this instance, we might not rule this candidate out altogether, but would want to spend some time in the later stages of the hiring process identifying whether or not they can work with the modern tools and processes that our team uses.
Hiring a DevOps engineer for a young startup is undoubtedly a challenge, but it's not insurmountable. By understanding and addressing the unique obstacles faced by startups, you can position your company as an attractive destination for talented DevOps professionals and be well on your way to building a successful DevOps team that propels your startup to new heights.
To learn how the team at AxisSecurity overcame their hiring challenges by working with DevOps experts introduced by Opsfleet click here.