Interview prep

Signed up for one of our interviews? Here's what to expect.

Interview prep

Signed up for one of our interviews? Here's what to expect.

What you need

In order to take our interview, you will need:

  • A working webcam. Our interview is done via video call, and you'll need to be on video for most of the call. (We know this can be anxiety-inducing, but it will likely be the case for interviews with companies as well.)

  • A dev environment with a command line or console I/O ready to go. The coding section of our interview requires you to write code that takes console I/O (so for example, we will not ask you to make e.g. React components). In particular, if you're using JavaScript, make sure you have Node set up to take console I/O.

  • The ability to share your screen. During the coding section of our interview, we'll ask you to share it as you write your code. You can (optionally) also use it to draw our diagrams during conceptual questions or the system design section if you wish.

Interview sections

Our interview contains three sections, each of which takes about 25 minutes:

Coding

We'll ask you to build a small program in the command line. Think something like Leetcode, except that our problem does not require knowledge of any particular algorithms. Our goal here is to test your ability to convert written English into working code quickly.

You can find a practice problem here if you'd like to calibrate on whether you're ready.

Coding

We'll ask you to build a small program in the command line. Think something like Leetcode, except that our problem does not require knowledge of any particular algorithms. Our goal here is to test your ability to convert written English into working code quickly.

You can find a practice problem here if you'd like to calibrate on whether you're ready.

Conceptual questions

We'll ask you conceptual questions in three areas: classic algorithms, full-stack web development, and security/low-level development. We're looking for ability to dive deep and give thorough, contextualized answers that explain the why and not just the what.

Conceptual questions

We'll ask you conceptual questions in three areas: classic algorithms, full-stack web development, and security/low-level development. We're looking for ability to dive deep and give thorough, contextualized answers that explain the why and not just the what.

System design

We'll give you a business requirement and ask you how you'd build it. We're looking for your ability to make specific selections and justify them, and to identify and articulate trade-offs and important traits of the system, not just list technologies.

System design

We'll give you a business requirement and ask you how you'd build it. We're looking for your ability to make specific selections and justify them, and to identify and articulate trade-offs and important traits of the system, not just list technologies.

Other things to be aware of

You may use any language you like on the coding problem. In general, we recommend you use the language you're most familiar with. You can use your normal IDE, but LLMs /genAI (including having Copilot write full functions) are not allowed on the interview.

The coding task involves console input and output, so make sure to refresh on how to do that if you haven't for a while.

We don't recommend guessing during the conceptual questions without saying that's what you're doing. "I don't know" is a better answer than a confident wrong answer.

What to expect afterward

Within a short period of time (typically at most a few days, often less than that), we’ll get back to you with the results. These results will include candid feedback. Our goal is that you should always walk away from our process with something useful.

If we invited you to interview and you did well, we’ll recommend you to our client companies to move forward with their hiring processes. You’ll typically hear back about that within a few days, and they’ll typically skip you to the later stages of their hiring process.

We’ll keep your interview results on file for at least two years (unless you ask us not to), and you can reuse them with other companies that hire through us. If you did very well and you’re from a non-traditional background, we may also ask you to (with your permission and only with your permission) feature you publicly, both to get more eyes on you in the hopes of getting you a job and to show employers how working with people without traditional backgrounds can find skilled people.

If another company invited you to do a first-round interview with us and you did well, we'll let them know that we'd recommend that they move forward. The final decision is up to them, however; we only make a recommendation. If you don't end up with an offer there, we may be able to make recommendations to other companies that are hiring through us (but we can only do that once you're done with the company that invited you - understandably, they don't want us introducing people they're trying to hire to other companies until they've made a decision!).

If you didn't pass, you can try again in six months (however, we generally find that it is fairly rare for the outcome to be different except in exceptional cases).