Machine learning (ML) is having its moment. Here's how to objectively identify candidates with real skills.
Talk of machine learning (ML) is everywhere these days. And it’s easy to see why: you feed an algorithm a jumbled mess of data and get back an intuitively understandable, statistically robust result. With all of the buzz surrounding this quickly growing field, you might be considering bringing an ML engineer or two onto your team.
The US Bureau of Labor Statistics anticipates cutting-edge information technology will see growth of about 21% between 2021 and 2031, beating out growth in hardware engineering and programming. And for good reason: according to a McKinsey report, harnessing AI could potentially inject around $13 trillion into the global economy by 2030. The demand for engineers proficient in ML, just like the demand for those familiar with other applications of AI, seems unlikely to stop increasing any time soon.
Fortunately, with the demand for machine learning on the rise, the pool of ML talent has also been growing. However, that makes it difficult to tell which candidates have the skills your team needs. It may seem even more daunting to find the right candidate for your company given the diversity of ML roles and technologies used,
My work in recruitment has allowed me to identify the following areas that can help teams gain confidence in interviewing for ML engineering positions.
Structuring the interview
The first step in developing a great interview protocol for an ML engineering role is to make sure you have effective screening tools in place. This ensures that only qualified candidates make it to your on-site or panel interview stage.
Whether you use live or asynchronous early-stage tech screening in your recruiting process, framework-based evaluations are a proven way to evaluate technical skills objectively and at scale. These evaluations use standardized guidelines to effectively measure candidates’ job-relevant capabilities, creating a more reliable indicator of real-life performance than resumes. When using a framework-based evaluation for an ML engineer role, look to assess key areas of ML knowledge, like data manipulation and algorithm implementation.
Of course, that doesn't mean abandoning face-to-face interviews later in the recruiting process. Live, on-site, and panel interviews give context and frame technical evaluations in light of the candidate's ability to work with your team. Context is important because diverse backgrounds and experiences are proven to help strengthen teams, bolster positive responses to conflict, and enhance problem-solving.
Use framework-based evaluations in conjunction with on-site interview tools to gain a more holistic understanding of a candidate's readiness for the role.
Asking the right questions
A good ML engineer interview will begin with the basics and gradually increase in complexity.
The goal of the interview is to evaluate the skills a candidate will need for the day-to-day of the position, including routine setup and cleanup tasks. Proficiency with niche algorithms is definitely impressive, but a complete view of a candidate's preparedness starts by assessing more fundamental ML skills.
1. Start with the fundamentals of machine learning
Strong skills come from solid foundations. For ML engineers, this foundation is an understanding of the theories behind common ML algorithms, models, and concepts. It is essential that they are able to then apply these concepts to solve a problem.
An engineer can have fantastic practical skills with a specific complex algorithm, but this needs to be balanced with an understanding of why ML is relevant and how it works on a rudimentary level. Otherwise, the outputs of those complex algorithms have no context and little practical application. Candidates should be prepared to talk about topics like neural network fundamentals, L1 vs. L2 regularization, and reasons for overfitting.
At the beginning of the technical interview, you’re looking for broad knowledge and not yet talking about nitty-gritty specifics. I recommend asking general questions in this portion of the interview process. This gives a candidate the opportunity to demonstrate a wide base of knowledge without getting hung up on the details.
2. Dive into data cleaning and manipulation skills
Once you've established the fundamentals, it's time to look at a candidate's proficiency in data cleaning and manipulation. A qualified ML engineering candidate should be adept at working with and making sense of large datasets, as well as operations like splitting numbers into digits, concatenating strings, and reversing arrays. Strong, basic data skills like these help a candidate prepare a data set for cleaner and more efficient algorithmic processing.
The good news here is that evaluating proficiency in data manipulation is much the same for ML engineer roles as it is for other technical candidates. Here, it can be helpful to assess their knowledge of data structure concepts, for instance splitting a string into substrings and modifying the substrings. For further insights into skill sets, assess candidates' abilities to use nested loops and iterate over an array.
3. Evaluate machine learning algorithm knowledge
With all this talk of basics and foundations, we can't forget about the ML part of this role.
Every individual product and use case will require a different ML approach to get the best results – this is why assessing for core skills rather than specialized knowledge is so important.
However, candidates do need to have an understanding of some common ML algorithms.For instance, most people interested in ML will be familiar with k-nearest neighbors and k-means clustering. Candidates can also be expected to have a high-level understanding of Gaussian mixture models, matrix normalization, and forward propagation. Above all, ML candidates need to be able to build a machine learning model, estimate its accuracy using relevant statistical concepts, and clearly explain what can be gleaned from the data.
Just remember that knowledge of common algorithms is not the same as practical experience with pre-built libraries or niche specialized solutions. Your team might want to use scikit-learn, Tensorflow, or other specific technologies, but assessing for that specialized knowledge in the hiring process may produce false negatives and disqualify candidates who are actually qualified for the job. Candidates who score successfully in other parts of the interview are likely to pick up these specific skills quickly if needed. On the flipside, those who have a ton of experience in a pre-built library but no understanding of the fundamentals could overrepresent their readiness for the role.
Takeaways for great interviews
A great interview process for an ML engineer role will combine tools like framework-based screening evaluations and live on-site interviews to gain a holistic view of whether a candidate would thrive on your team.
Framework-based evaluations work because they measure each candidate’s skills objectively with job-specific questions. Get the most out of these early-stage evaluations by asking questions that test a candidate’s understanding of key concepts pertinent to ML engineers.
Candidates should first show a strong understanding of the fundamentals of ML, including basic knowledge of neural networks. Next, it's important that they're able to demonstrate robust data manipulation skills, tools they will routinely need to use to prepare a dataset for algorithmic processing. Finally, assess their ML algorithm knowledge, evaluating their high-level understanding of common algorithms like k-means clustering.
Bringing on ML engineers is becoming more and more appealing. This role is all about sifting through the noise to get a strong signal – and in the same way, the interview process is about bringing the best candidates to the fore. Break the role down into its key elements and evaluate candidates for increasingly complex, job-relevant skills to make the interview process more efficient and fair for everyone involved.