Interviewing at Calm as a Software Engineer

Learn more about our values and open roles on our Engineering Jobs page!

At Calm, we're committed to creating an environment where every day we feel like we're doing our best work, and we want to ensure folks interviewing with us have the chance to give their best interview. When you interview with us, we want you to know “everything except the questions.” You won't spend your time at Calm answering trick questions or giving surprise presentations, and we don't want our interviews to work that way either.

This page explains our interview process for Software Engineer roles. If you have any questions that aren’t covered in this guide, please reach to your recruiter or hiring manager at any point during the process.

At a high-level our process is:

  • Resume review. You apply to an Engineering job at Calm. Calm's recruiting team will review your application and update you via email
  • Recruiter screen. We schedule a phone call between you and an engineering recruiter
  • Programming screen. We schedule a Zoom call between you and an engineer you might work with, and you solve a non-algorithmic programming question in the language of your choice.
  • Interview loop. You participate in our interviews, getting to know the team and company while we get to know you
  • Hiring decision. After you interview, we submit written feedback independently, and then discuss that feedback collectively. This discussion usually happens the same day you interview, and from that discussion we decide on whether to move forward with a job offer
  • References. You'll introduce us to three folks who've previously worked with you, and we'll talk with them
  • Offer. We'll extend you an offer to join Calm, you sign it, and off we go!

Going beyond this overview, we want to give you as much information as possible to help you succeed in our interview process. Towards that end, we've written up what each interview focuses on and how we evaluate success within them.


Screens

Our process starts with phone screens, so we'll start there too, followed by more about our longer interview formats.

Recruiter Screen

Our recruiter phone screen is usually thirty minutes long. It focuses on explaining our process to you, and ensuring that there's a good match between what you're looking for and our current opportunities at Calm. If there are multiple opportunities you're considering at Calm, apply to the one you're initially most interested in and then use this phone screen to narrow in on the right one.

Programming Screen

You will work through a programming exercise similar to one of the real-world problems you may encounter while working on a typical project at Calm. You'll be using Coderpad and the programming language of your choice. JavaScript and Python have been popular choices.

This will NOT be an algorithm memorization type of problem, so no need practice memorizing sorting algorithms. Similarly, you're welcome to search for any questions that come up during the interview, and your interviewer is also available to answer questions.

You will be interviewed by one or two engineers who you'd work with in the role.

The rubric for the Role-specific Programming interview focuses on:

  • Completeness. Does the solution address the problem at hand? Does it account for edge cases? Does it address tradeoffs like cost, performance, scalability?
  • Readability. Is the code easy to understand? Does it have a consistent structure?
  • Testability. Does the apporoach support testing? How feasible is the test plan?

Interviews

Once you've gone through our phone screens, the next step is conducting our interview loop. The details of the loop will vary a small amount if, for example, you're interviewing for a Frontend position instead of a DevOps one, but they'll all use the interviews described here with some light adaptation for the particular role.

You’ll participate in four interviews, each of which will be 45 minutes long. Every interview will have time for questions at the end, and we love folks who bring thoughtful questions. While we don’t have an explicit break scheduled between interviews, we’re always glad to pause and let you take a few minutes to take a break, gather your thoughts, or get a coffee. We can also distribute these interviews across multiple days: Let your recruiter know how we can best set you up for success.

Programming, continued

In this interview, you'll start from your Programming Screen project, and then refactor and extend the code to support additional functionality. You'll once again be using Coderpad and the language of your choice. Similarly, this is not an algorithmic question, instead it's focused on refactoring and generalizing your implementation to support new requirements.

You're welcome to search for any questions that come up during the interview, and your interviewer will be available for questions as well.

You will be interviewed by one or two engineers who you'd work with in the role.

The rubric for the Role-specific Programming interview focuses on:

  • Completeness. Does the solution address the problem at hand? Does it account for edge cases? Does it address tradeoffs like cost, performance, scalability?
  • Readability. Is the code easy to understand? Does it have a consistent structure?
  • Testability. Does the apporoach support testing? How feasible is the test plan?

Partnering

You will discuss your experience working with peers and partner teams. How have you handled various situations that have arisen in the past?

You will be interviewed by a cross-functional partner (usually a Product Manager) and engineering manager that you'll work with in the role.

The rubric for the Partnering interview focuses on:

  • Communication. Does the candidate set clear expectations in their partnerships? Do they proactively communicate schedule changes? Do they provide context around why the changes are happening?
  • Business orientation. Does the candidate ground their cross-team and cross-org commitments in business outcomes? Do they adapt commitments to fulfill business needs while accounting for new challenges?
  • Managing commitments. Does the candidate take responsibility for their commitments? Do they shift blame to other members of their team or organization?

Values Alignment

You will discuss what interests you in Calm and in the role. Where do you hope your time at Calm takes your career? Do you feel aligned with our vision of a highly collaborative engineering organization?

You will be interviewed by one or two engineering managers that you'll work with in the role.

The rubric for the Values Alignment interview focuses on:

  • Communication. Does the candidate answer questions directly with relevant examples? Are they concise speakers?
  • High EQ. Is the candidate self-aware? Do they demonstrate learning from misteps? Do they take responsibility or shift it to others? Do they acknowledge contributions by other members of their team?
  • Growth Mindset. Does the candidate continue learning and improving their approach to their role?
  • Interest in Calm. Has the candidate prepared for the phone screen by getting familiar with Calm's product or mission?

System Design

You will discuss the requirements for a mid to large size project, and then you will be asked to come up with a system design for the project and discuss implementation details, options, and tradeoffs. This is not a programming interview.

You will be interviewed by one or two engineers who you'd work with in the role.

The rubric for the System Design interview focuses on:

  • Communication. Did the candidate ask clarifying questions? Did they understand the challenge before solving it? Was the design communicated clearly?
  • Structured approach. Does the candidate uncover the key requirements for the project? Did they have a structured approach to uncovering them?
  • Tradeoffs. Does it address tradeoffs? Does it balance business and technical requirements effectively?

Meet Senior Leadership

After you've met with the engineering team, if there's interest from you and us, you'll meet at least one member of senior leadership - usually our founders, Alex Tew and Michael Acton Smith. They'll tell you more about the company and ask you some higher-level questions about your interest in Calm and how you work with the team. You'll have the chance to ask them any questions you have about Calm.


Interested? Apply to an Engineering job at Calm!