
Compass Interview Questions
& Process
Real candidates share what happened, how many rounds they had,
and how the experience turned out.
Based on 605 interview experiences · FREE TO READ
Which role are you interviewing for?
30 roles · 605 reportsCandidate interview experiences
First-hand accounts from people who interviewed at Compass.
Software Engineer
First, I had a recruiter screen. Then, there were 3 rounds of in-person interviews on-site. The first round was a LeetCode problem, specifically Meeting Rooms 2. They wanted me to come up with my own test cases for it. The second round was with the engineering manager, where we talked a lot about my work experience. They also had a question related to each of Compass's core values. The third round involved debugging. I was given a buggy script for an emailing script that adds contacts to an address book, and I had to fix it. This script used a weird 2D array to track which contacts were opted out of receiving emails. I wish I had asked to do this in VS Code since I didn't have access to a debugger and only had print statements.
- Solve the LeetCode medium problem 'Meeting Rooms 2'.
- Develop custom test cases for the 'Meeting Rooms 2' problem.
Director of Operations
The interview had a few stages, starting with a recruiter and then moving on to meet with upper management and ownership. They discuss values and goals. It seemed like a friendly place, and I liked the recruiter. The process was quite thorough, involving writing down everything you aim to achieve in your career and life in the long run.
- What are your career aspirations?
- What do you aim to achieve in your career over the long term?
- What do you aim to achieve in your life over the long term?
Senior Android Engineer
This was one of the worst interview experiences. It took forever, like 2 months, when they initially said 2 weeks and that they were flexible. First, I had to do a take-home assignment, building an Android app that uses a service, saves data locally, and shows it. Then, a live technical interview where I had to code a calendar that prevents overlapping meetings and lists meetings in a date range, plus write unit tests for it. After that, the standard system design interview, where I had to design a basic WhatsApp-like chat app. The final stage was supposed to be about my past experiences, a behavioral chat, and going over how to find duplicate files and their locations. I passed everything except the last one. I got super nervous in that last interview, my communication just went out the window, and that's why they rejected me, ignoring all the prior steps. If my communication or English was really that bad, they should've cut me loose way earlier and not wasted my time. Scheduling was a nightmare; they were super rigid and wanted it on their time, no exceptions. They even canceled on me twice last minute. Seriously, they scheduled an interview on a US holiday and then bailed 20 minutes before. Plus, they took ages to get back to me with answers. The whole thing felt super disorganized and they really didn't seem to care about my time at all.
- Tell me about why you are looking to change jobs.
- Can you code a calendar application?
- Design a chat application similar to WhatsApp.
Marketing Coordinator
The interviews were pretty straightforward, with standard questions. No one made me feel interrogated or like they were trying to trick me. Everyone was super nice and friendly. The only downside was how long the whole process took for an entry-level job. It started with a recruiter call, then a video interview with two marketing team members, followed by another video chat with the hiring manager. After a two-week wait, I had an in-person meeting with someone higher up in marketing. Then, another two-week wait to find out they went with someone else. As much as I liked the people, the drawn-out timeline and long waits for a junior role really left a bad impression. It made me feel like my time wasn't valued, and honestly, I wasn't even sure if I'd accept an offer because of it.
- Can you tell me about your marketing background?
Compass Interview Questions
Quoted word for word from Compass interview reports.
“Given a dictionary like { "user1": "3", "user2": "1", "user3": "4" }, can you sort the users in ascending order based on their login count?”
Read reports →“What are the various parameters that can be passed to a URL, and what's the difference between a URI and query parameters?”
Read reports →“How would you perform a topological sort on a directed acyclic graph given in adjacency list format?”
Read reports →“Using console logs, how can you distinguish between a backend and a frontend error?”
Read reports →“Can you create a calendar class that allows adding appointments, which are custom structs? This class needs two functions: one to add an appointment, with the condition that new appointments cannot overlap in start and end times with existing ones, and another function to get all appointments within a given start and end time.”
Read report →“Can you explain various REST status codes such as 505, 400, 401, 200, etc.?”
Read report →“Describe how you would count the number of files or their total size within a file system.”
Read report →“Write a program in a language you prefer to get the last K activities for a user by querying a public API. Save the output as a CSV file.”
Read report →“Can you explain the Fibonacci sequence, including its time and space complexity, and implement it using both bottom-up dynamic programming and recursion?”
Read report →Formats, difficulty and experience
Across all 605 Compass interview reports.