Cheatsheet (Interviewer)
This is a straight-to-the-point, distilled list of technical interview Do's and Don'ts for interviewers, mainly for algorithmic interviews. Some of these may apply to only phone screens or whiteboard interviews, but most will apply to both. I revise this list before each of my interviews as an interviewer to remind myself of them and eventually internalized all of them to the point I do not have to rely on it anymore.
If you are a candidate you probably do not need to know this section well. You may read this to get a better sense of what an interviewer is supposed to do during an interview.
Legend
- ✅ = Do
- ❌ = Don't
- ⚠️ = Situational
Before interview
Things | |
---|---|
✅ | Make sure your surroundings are well-lit. |
✅ | Find a quiet environment with good Internet connection. |
✅ | Ensure webcam and audio are working. Test that your VC app is working well. |
✅ | Prepare two to three questions and be familiar with the different approaches for solving the questions. Good questions have multiple solutions each with different tradeoffs. |
✅ | Choose questions from different topics to identify possible knowledge gaps. |
✅ | Familiarize yourself with the coding environment (CoderPad/CodePen). Set up the coding shortcuts, turn on autocompletion, tab spacing, etc. |
Introduction
Things | |
---|---|
✅ | Check if candidate wants to use the restroom or take a break. |
✅ | Give an overview of the interview format (introduction, duration, programming languages available, 5 min at the end for Q&A). |
✅ | Do a self-introduction and get the candidate to introduce themselves. |
✅ | Explain to candidate that there will be multiple questions (where relevant), they do not have to finish all questions and you might interrupt them abruptly. |
❌ | Allow the candidate to spend too long introducing themselves. |
Upon delivering the question
Things | |
---|---|
✅ | Ask if the candidate has seen the question before. |
✅ | Give a small example for the question and the desired output. |
✅ | Get the candidate to talk through the solution first before diving into coding. |
✅ | Provide hints where appropriate. |
✅ | If candidate is still stuck after providing hints, provide the solution and move to coding so that you can get coding signals. |
During coding
Things | |
---|---|
✅ | If whiteboard interview, stand alongside candidate but also giving them space, instead of being distant, e.g. seated down. |
✅ | Take note of all the positive and negative signals. |
✅ | If you have multiple questions, don't let the candidate spend too long on one question, especially if the first question is an Easy one. |
❌ | Check the time in an overly-obvious manner. |
After coding
Things | |
---|---|
✅ | Ask for candidate to provide test cases and run through the code with them. |
✅ | Identify edge cases the candidate missed and ask the candidate to address them. Ask the candidate "What if X was the input? What would your code produce?" instead of pointing the issue out directly. |
✅ | Take note of the duration the candidate spent on each question to include in the feedback. |
✅ | Ask for time complexity and space analysis. |
✅ | Preserve the code somewhere - take a picture or copy the code out. |
✅ | Stop the candidate when there is 5 minutes left. e.g. ("I'll stop you here and let's go to the next section") |
Wrap up
Things | |
---|---|
✅ | Allow candidate to ask questions and answer them to the best of your ability. |
✅ | Thank the candidate and wish them all the best. |
Post interview
Things | |
---|---|
✅ | Write feedback as soon as possible to not forget details. |