Before crafting the interview questions, you need to have a clear understanding of the role you are hiring for. Is this a pure programming role, a data science position, or a hybrid? Will the individual work closely with a team or in a more isolated capacity? What are the tools, programming languages, and systems this role will involve? If it is a data science role, what kind of data will they be handling? Are there any specific machine learning models or statistical techniques they should be familiar with?

Once you have a good grasp of the job description, this can be translated into a set of skills and competencies that the ideal candidate should have. The job description should therefore inform the questions that directly relate to the day-to-day tasks the candidate will be undertaking.

Technical Questions

Technical questions are an opportunity to assess a candidate’s knowledge and proficiency in relevant areas such as data analysis, programming languages, or algorithm development. While creating these questions, avoid making them so overly complex that they deter capable candidates who may excel in real-world scenarios, as opposed to interviews where candidates put undue pressure on themselves. For example, instead of asking them to write a complex algorithm on the spot, consider presenting a scenario or problem that they might encounter on the job and ask how they would approach it.

Problem-Solving Questions

These questions allow you to evaluate a candidate’s ability to think critically and solve problems. Questions could involve situational problems or hypothetical challenges related to the role. For example: “Can you describe a time when you had to troubleshoot a coding issue? What steps did you take to resolve it?”

Behavioral Questions

Behavioral questions offer insights into a candidate’s interpersonal skills, adaptability, and potential cultural fit within the team. Questions can be designed to gauge their approach to collaboration, conflict resolution, or managing work under pressure. For instance: “Can you share an instance when you had to navigate a disagreement within your team?” Fred Hutch’s recruitment team demonstrated behavioral-based interviewing at the 2021 Fred Hutch DEI Summit.

It’s also crucial not to overlook the importance of social skills. Computer programmers and data scientists often work in teams, so skills like communication, problem-solving, collaboration, and adaptability are often just as important as technical skills. Consider including situational or behavioral questions that can help assess these soft skills. For instance, you might ask the candidate to describe a time when they had to explain a complex technical concept to a colleague.

Appropriate Question Pacing

Start with simpler questions to make the candidate comfortable and to assess their foundational knowledge. As the interview progresses, gradually increase the complexity of the questions. Complex questions can not only test the depth of the candidate’s knowledge and their problem-solving ability, but also their resilience and how they perform under pressure.

Make sure the questions are relevant to the job role and not tricky for the sake of being tricky. Remember, the goal is to understand if the candidate can perform the job, not to make them stumble.

Remember to allow room for creativity and independent thinking in your questions. The way a candidate approaches a problem can be just as insightful as whether they get the ‘correct’ answer.

Inclusive Questioning

Asking about candidates’ experiences with diversity, equity, and inclusion can emphasize the importance of these values in your organization. Questions like, “Can you describe how you’ve contributed to fostering an inclusive environment in your previous roles?” can provide useful insights.

Future-Oriented Questions

These questions can help you understand a candidate’s growth potential, ambitions, and longevity with your organization. For instance, you could ask: “How do you hope to grow in this role, and what skills are you looking to develop further?”

Providing Room for Questions

Always provide candidates with the opportunity to ask their own questions. This not only allows them to clarify any doubts but also demonstrates their interest and engagement. It’s essential to answer these questions honestly to ensure clarity and mutual understanding.

Respectful and Equitable Interviews

Remember, an interview is a two-way process and a candidate’s first real insight into your group. Keep the conversation respectful and encourage open, candid responses. Show genuine interest in the candidate’s responses and avoid any unconscious biases that might impact your evaluation.

Be Consistent

Don’t wing it! Approach the interview process scientifically by asking the same questions in the same order across candidates. These questions should be based on the core competencies that you’ve outlined for the role. Focus on the questions you’ve outlined, but don’t hesitate to ask follow-up questions and go into more depth.

Developing Questions Outside Your Area of Expertise

If you are looking to hire for technical skills outside of your expertise, you’ll need to consult with technical colleagues to help evaluate candidates. However, you can still develop questions given your knowledge of the problems you’re trying to solve with this hire. For example:

  1. Write down a question you want answered (not technical yet), such as: “how many patients are on treatment x.”
  2. Ask the candidate to describe how they would answer that question if the data were available to them in a file, database, or a website.
  3. Reach out to someone with technical expertise to evaluate whether it is a good answer.