This is Part 3 of a multi-part series covering some of the topics introduced in our RailsConf 2018 Interviewer Skills workshop.

Part 1 covered how to know what would make a candidate the right addition to your team, and why single-word descriptions like “independent” or “smart” can imply different behaviors to different people.

Part 2 covered how to create effective interview questions that would allow a candidate to show you whether they exhibit the behaviors and characteristics you’re looking for in a new teammate.

You’re hiring - yay!

You have a list of 4-6 descriptive attributes that describe the ideal candidate - double yay!!

And you have a list of questions to show you whether a candidate has displayed the skills and characteristics you’re seeking in your new teammate.

You’re all set for the interview! What happens when you bring all this preparation and your carefully created questions into the reality of the interview room?

You: Can you tell me about a time when you gave feedback on not-very-good code?

Them: Yes, I definitely agree that feedback on all code is a very important part of the development process. When I was at $prev_company, we had a process for making sure all code received feedback.

Whoa, what happened?? and more importantly – what do you do?

Base assumptions

First, assume the candidate is not deliberately malicious. There are so many more likely reasons for why the candidate went off on a tangent.

  • They’re probably nervous.\
  • Maybe they misheard you.
  • Maybe they are trying to guess at what you’re looking for, and guessed wrong because they can’t read your mind.

Work with them! remember, this candidate is possibly your future teammate – are you able to learn to adapt to each other’s communication styles? Maybe the answer is no, but you won’t know whether it’s definitely a “no” the first time there’s a misunderstanding. Keep trying to establish communication with your candidate, and assume the candidate is doing their best to answer your questions.

If by the end of the interview you still couldn’t find the answers you were looking for, and you tried your best to communicate your goals to the candidate, then at that point it doesn’t matter if the candidate was deliberately or unintentionally misunderstanding your questions. At that point, after you’ve tried your best to communicate what information you’re looking for, you will know definitively that you shouldn’t hire the candidate because there will always be problems communicating. But until that point, keep trying! Give every candidate a chance to learn and adapt to your communication in your interview.

How to give your candidate opportunities in the interview

What do you do when the candidate goes off on a tangent? Should you wait patiently for the candidate to finish their not-helpful-to-your-hiring-decision storytelling?

Your job as the interviewer is to contribute to the hiring decision around a given candidate based on your experience in the interview. This means you have a responsibility to the candidate: it is your job to give them the opportunity to provide you with all the information you need to make an informed decision. Out of you and the candidate, you are the one who knows your team’s values best, and you are the one who knows what behaviors and characteristics you’re seeking in your new teammate. The person across the table from you might be that future teammate. Would allowing them to ramble on an irrelevant-to-the-hiring-decision topic be the best use of their time in showing you how they could be the next addition to the team?

It’s tempting to think “this will only take a few minutes and then we can continue”. If you have thirty minutes for your interview, a five-minute diversion is over 15% of your total allocated time. That’s time that could be spent learning how the candidate could contribute to the team. That’s time that could be spent for the candidate to learn more about your team. If you don’t interrupt the candidate, will you know enough about them to be able to recommend hiring them?

The kindest thing you can do for a candidate is to give them the opportunity to shine. Sometimes that does mean interrupting and redirecting them. How do you do that?

Closeup of a pocketwatch lying on a sandy beach

Time management techniques

Proactive signal techniques

Setting expectations with the candidate about what you’re looking for as part of your question is the best way for the candidate to know what kind of answer to give you. You can do this by signaling to the candidate what you’re looking for.

  • “I have several questions I hope we can cover today. Can you briefly tell me about…“ Signal how detailed of an answer you’re looking for. Are you looking for a brief answer in a few minutes? or are you looking to deep dive into the topic for the next twenty minutes? Would it be appropriate for the candidate to pull out visuals like drawing a diagram or sketching some pseudocode?
  • “I want to spend a few minutes digging into $x. Can you tell me…“ If you’re looking to dive in deeper, share that intent.
  • “I see from your resume that you’re currently working on $x. If I were a new dev on your team that you were handing off responsibility for $x, how would you do so?” Even better, signal how the candidate should approach the answer. How we explain ideas changes depending on the audience. Is the audience the project’s PM? a distant exec? a technical peer? different audiences require different levels of communication. Saying “if I were a new dev on your team” signals that you are looking for a technical walkthrough that includes higher-level business motivation as well.

How do you know what to signal? Make yourself an interview agenda.

Interview agenda

To make an interview agenda, start by allocating time for introductions at the beginning of the interview and time for questions from the candidate at the end of the interview.

10:00 - candidate handed off from previous interviewer to me, introductions 10:03 - 22min of ?? 10:25 - save time for questions from the candidate 10:30 - hand off to next interviewer

How much time do you have left? 22 minutes? 39 minutes? Whatever answers you’re looking for need to fit into this space.

Pick which questions you’d like to ask, and as you do, think about how much breadth and depth you’re looking for in the candidate’s response. Allocate time for each question based on how long of an answer you’re seeking. Think about follow-up questions you may want to ask if the candidate gives you a shorter answer than you’re looking for.

10:00 - candidate handed off from previous interviewer to me, introductions 10:03 - 5min question on Topic #1 10:08 - 8min - longer question exploring Topic #2 10:16 - 3min - followup questions on Topic #2 10:20 - 5min - final question on Topic #3 10:25 - save time for questions from the candidate 10:30 - hand off to next interviewer

Then during the interview, before you ask a question, think about how much time you have remaining in the interview. Remind yourself what questions you have remaining (writing out your agenda helps here!), and how much time you’d like the candidate to spend on your next question.

It’s 10:18. We could dive deeper into Topic #2 and eat into time for Topic #3, or I could spend more time on Topic #3 and candidate questions now.

Use that information to signal to the candidate if they should dive deep or move quickly through their answer.

Reactive interruption techniques

Sometimes, whether you proactively signaled or not, the candidate launches off in a different direction than you’d hoped for. How do you bring them back without seeming like a jerk?

Practice, practice, practice! It may feel weird, awkward, or downright rude the first few times you interrupt, and practice helps you be able to get through those feelings. Learn a few phrases you can use in that situation, and practice them with a friend or colleague before your interview:

  • “I’m sorry to interrupt; I’m really curious about $x.”
  • “Oh, before you get too deep into this, I’d really like to hear about $x.”
  • “This is interesting, but I’d really like to talk more about $x”

Here’s an example:

You: <I want to know if the candidate can communicate about their technical work with a peer.>

You: “If I were a new dev joining your current project, how would you describe it to me?”

Candidate: “I would probably give you a little background on the project, then show you the list of issues, and I’d also want to make sure –”

You: “– sorry to interrupt, could you pretend I’m a new dev on your team, and it’s our first meeting? How would you onboard me to the project? We can use this whiteboard if you need one.”

As you practice interrupting a candidate, there are a few non-verbal interruption techniques that can make interrupting easier:

  • Wait for the candidate to take a breath, and jump into that moment as they pause
  • Give a physical cue that you wish to speak: make tentative-looking hand-raising motions, open your mouth as if you want to speak. These can work well both in person and in remote video calls.
  • Emphasize these visual cues with sound:
    • As you raise your hand, brush or gently knock it into the bottom of the table
    • Make a soft popping noise as you open your mouth

Finally, there are a few more advanced techniques you can use to make the candidate feel better about your interruption. There’s a lot of subtle cueing with your tone and projected emotion that can change how the candidate feels about the interruption. Don’t worry about getting it right the first few times; subtle techniques take more practice.

  • Acknowledge and express appreciation for what they were saying
    • “This is interesting, but…”
    • “I wish we could talk about this more! But…”
  • Speak with warmth: let your interest in their answer show
  • Speak with respect: “I’m sorry to interrupt”

As you start learning to interrupt, focus on getting the job done: interrupt and redirect the candidate. As interrupting gets easier and starts to feel less terrible, try out some of the more advanced techniques to help your candidate feel better (maybe even grateful) for your interruption. Be patient with yourself and keep trying new things.


If interrupting a candidate feels terrible to you, it might never feel entirely natural – but you will get better at it. And as you improve at interrupting, you’ll start to see candidates’ responses provide you with more relevant answers to your questions. These more relevant answers will guide you in making the right hiring decision for the candidate. Learning to interrupt your future co-worker with kindness and respect will help you launch a strong working relationship together.

Older post

Evolving process for evolving teams

Like many of you, we hold standups to sync up on what people are up to, surfacing and supporting through blockers, and getting in a little regular facetime...

Newer post

GraphQL and Rails - A Brief Introduction

Over the past 9 months, we've applied GraphQL and Rails as the API platform on client projects. Most of these projects rely on rapid iteration across both th...