Interview Process

Interviewing sucks.

It’s a tremendous drain on your time. People ask you to do free work and demand a large amount of your time for a chance at a reward that the average applicant realistically only has a small chance of getting. We don’t want to pretend like we don’t know that. People who actually enjoy the interview process are few and far between.

We don’t want to pull punches here or pretend like we don’t know all that. We are pretty careful in our hiring and look for talent and good fit. Combining that with our knowledge of how un-fun interviewing for work can mean we spend a lot of time trying to optimize our process. It’s not perfect yet, but it’s getting shorter every day.

Example: Hiring steps for a Senior Software Engineer:

1. Application Review

We’re seeking an experienced and zealous Principle Software Engineer who has experience scaling frontend and backend code, understanding complex technical areas and building efficient, reusable systems that drive complex web and mobile applications. You would be running our full software development lifecycle, from problem definition and design to development, testing, demoing and supporting production use of features you own.

This first step of the interview process involves us looking at anything and everything you’ve shared that demonstrates your experience and ability to do all those things. We want to make sure you are a good fit for us and that we are a good fit for you, so we read deeply to try to learn everything we can.

2. Short take-home test (˜1h)

In our engineering recruiting, we go directly to a short take-home test. We front-load this in the process because it’s often a make-or-break step, and we want to make the best use of your time before putting you through a series of interviews. This take-home test gives you a choice between a frontend or backend exercise, then cuts you loose to show us how you work.

3. Team Interviews

Once the take-home test is cleared, we immediately put you in an interview with a few team members, then a hiring manager.

In those interviews you will:

  • Get hands-on during a live coding session (1st interview)
  • Have a follow-up discussion on the work you submitted in your take-home test (2nd interview)

In the Hiring Manager interview:

  • Dig deep into a technical problem you’ve encountered in the past, and how you’ve approached it
  • Talk about how you lead and manage teams, approach hiring, and build high-performance culture for teams delivering high quality at unreasonable speed

Usually, we manage to get all of these interviews done in just a matter of days.

4. Offer

If everything looks good at that point, we make an offer as soon as we can - often same-day.

Regardless of what hiring process you are going through (they are a little different for each position), we try to be as respectful of your time as we can be at each step. If it ever looks like we don’t have a great chance of bringing you on, we tell you right away.

We aren’t saying this is perfect - far from it. But we try to get the information we need as quickly and painlessly as we can and front-load the most information-loaded stages as much as we can. Beyond that, we keep our eyes open for ways we can make the process even shorter. Our goal is to find hacks and methods that let us shave off entire stages of that process.

Until then, the promise we can make is to take the bare minimum amount of your time we can while we get to know you and make sure you’d be happy here. We know interviewing sucks, but we will do our best to make it as painless as we can.