
Synthesized from 10 candidate submissions for ALL.
Compass’ hiring process is rigorous and multi-staged, with a strong emphasis on technical depth, problem-solving, and system design across all roles. Successful candidates typically demonstrate expertise in algorithms, data structures, and scalable system design, while also showcasing leadership principles and adaptability during managerial rounds. The process often includes third-party platforms like Karat for initial screening, followed by rounds tailored to role-specific expectations, such as front-end challenges for senior roles or low-level design for SDE-2 and SDE-3.
The interview consisted of two rounds: a technical round focused on implementing a calendar manager class with unit tests, and a system design round focused on designing a messaging app like WhatsApp. The difficulty was rated as average.
Candidate was asked to design and implement a calendar manager class along with unit tests.
Design and implement a calendar manager class with unit tests
Candidate was asked to design a messaging application similar to WhatsApp.
Design a messaging app like WhatsApp
The interview was conducted smoothly on the Karat platform with a friendly interviewer. The overall experience was positive, and the platform's features like auto-fill and suggestions were appreciated.
The interview was conducted on the Karat platform and lasted 60 minutes. The format included an introduction, technical questions on selected topics, and coding problems.
Debug a CPU and RAM usage graph to identify issues like memory leaks and explain the debugging approach.
Debug a multi-threaded application experiencing thread insufficiency by analyzing thread dumps for blocked threads or deadlocks.
Determine if a service handling 1 RPS can scale to 1000 RPS by using load testing tools like JMeter and analyzing system thresholds.
Explain the difference between composition and inheritance in object-oriented design, including use cases for each.
Two coding questions were asked, focusing on string manipulation and grid traversal.
Given a list of words and a string, find the word whose anagram is present in the string.
Given a grid of characters and a string, find the path of the string in the grid by traversing only right or bottom directions.