A Guide to the Backend Interview

Congratulations! We’re extremely excited to move on in the application process! We’ve put this guide together so you know what to expect during your interview. Interviews will be 45 minutes long, and we’ve attached a signup sheet with your email!

Interviews consist of two different sections, system design, and a technical question. All sections are weighed equally, and at the end of the interview you’ll have some time to ask any questions that you might have for us!

System Design

This section is a great opportunity to show that you can think about the bigger picture. Generally, we will ask you how you would design a backend for a particular application. Be prepared to draw diagrams, and talk through your thought process.

General Tips:

  • This question is meant to open ended, so think of it as a brainstorming session!

  • Reviewing database concepts is helpful. Understanding how to model data and relationships is the primary focus of this section.

  • Talk about tradeoffs your design might make. We want to know the reasoning behind your design decisions.

  • No design is perfect! We might ask you the drawbacks of your design. This doesn’t mean your solution is wrong. Being able to recognize the pros and cons of different designs is very important when designing a backend.

Technical Question

This last section is your typical whiteboard coding question. You will be asked one or two coding questions (depending on time). You can use the language that you are most comfortable with such as Python, Java, etc.

Steps for a successful technical interview:

  1. Take a moment to make sure you understand the question. Ask any clarifying questions.

  2. Think of a solution or the approach you will take. Think out loud! Talk through your reasoning so we know what you’re thinking. If you have no idea where to start, don’t be afraid to tell us. We’re here to help!

  3. Write your code, while talking us through each line.

  4. Walk through your code and run it on an example to test correctness.

  5. Think about if any improvements can be made or any edge cases you might have missed.

General Tips:

  • After you code up your solution, we will ask you about the time complexity so be mindful.

  • A brute force solution is better than no solution! We can try to optimize after.

General Advice:

  • Focus on the approach rather than the solution. We’re more interested in seeing how you approach problems rather than simply whether or not you can solve a given problem.

  • Be yourself! We’ve designed the interview to best simulate the work you’d be doing on the team, in a 45 minute interview. Ask questions if you need clarification, our goal from the interview is to know what it’d be like to work with you!