5 Interview Questions for a Dev0ps Engineer
HR Tips Kathrine Nicolaisen
DevOps is a pretty new term, which makes hiring DevOps engineers a little challenging. The term “DevOps” first appeared in 2008, as part of a movement to bring greater collaboration between developers and IT professionals while improving software delivery.
“How do I interview DevOps engineers” is a one of the most common questions we get at Honeypot HQ. The five questions below serve as a starting point for a general, non-technical interview of DevOps candidates. Feel free to build and test your own (yes, thats a DevOps joke!)
In your opinion, are there any limitations to the application of DevOps to companies of different sizes?
Originally DevOps was associated with smaller companies, startup and entrepreneurial businesses - not enterprise! The leading argument for this has been that a lean and agile methodology would not be applicable on a larger scale. Thus, the quick answer to this might be “no.” However, a candidate with a broader understanding of DevOps may note that large corporates, from Toyota to Motorola to L’Oreál, have begun to fully embrace an agile work approach and taken up DevOps.
What is your experience with the tools Chef, Puppet, Ansible and Salt?
The palette of tools and skills available to DevOps is extensive, and naturally personal preferences and work experience have a great impact on the specific skillsets of individual DevOps engineers. However, there are certain tools, with which all DevOps engineers ought to be familiar: Chef, Puppet, Ansible and Salt.
These are all tools enabling the scalability of server configuration and management through automation, which allows the orchestration of hundreds - even thousands of servers. Of course, not being an expert in all tools doesn’t mean you don’t have a great DevOps engineer on your hands - but if he/she have no experience with at least of them, your spider senses should be tingling.
What is your experience with continuous integration?
Continuous integration is a key element of DevOps, as it refers to the process of continually merging the source code of all developers in a team, which enables the detecting and fixing of any mismatches and errors at an early stage. This encourages alignment before continuing with writing new code, which ultimately leads to a speedier, more responsive process.
While the previous question addressed specific tools, this question relates to workflow processes, and there are many tools which may be used for continuous integration, including Travis, Jenkins, Bamboo, Circle and Team City.
Using one unique example, can you explain what a vulnerability is? - and how may it be prevented?
A vulnerability is a system flaw or weakness, which has the potential of being exploited by a hacker. It isn’t necessarily a security risk, as that would indicate a “loss”, rather it refers to any kind of asset (value or no value) that could be affected by an outside attacker.
The perhaps best known example is the “Heartbleed” incident from 2014, where a security bug was inclosed in the OpenSSL cryptography library, which in summary meant up to half a million secure web servers - both servers and clients - were at risk of “buffer over-read” aka the potential theft of private keys, passwords and user session cookies.
There are tools which can aid the detection of vulnerabilities but, however to truly prevent system flaws, careful system maintenance, best practices in deployment and auditing must be executed diligently. A good DevOps engineer should know this!
In your opinion, what would be the best definition of DevOps?
Being a relatively new discipline, an agreed definition of DevOps is lacking. There seems to be general confusion as to what DevOps really means - and which tasks and functions they perform.
Before the interview you should have a clear idea in mind about what you are looking for in your DevOps candidate. This question will reveal the scope of understanding of the candidate of his role and duties (deployment lead time, automation, test environments etc.), as well as of the role of DevOps engineers more generally.
Hopefully, this list of interview questions has given you a better understanding of DevOps, and however, if you’re still not feeling 100% confident with the concept of DevOps, head on over to our blog post “What is DevOps?”.
Join Honeypot today and connect with top, pre-screened developers. Make 1 hire per 10 invites sent.
Searching for a Tech Job? Join Honeypot!
Let companies in Europe Apply to You!