Recruiter Screen: The process began with a standard recruiter phone call covering typical topics: previous work experience, motivation for joining ServiceTitan, and general background questions. This was a straightforward conversation with no surprises, following the usual format you'd expect from an initial screening call.
HackerRank Coding Assessment: The second step was a coding assessment on HackerRank that involved implementing a custom data structure based on a given interface - essentially a dictionary that maps keys to lists of values (MultiMap). The task was divided into two parts:
Second HackerRank Assessment (Concurrency & Parallelism): The next round was another HackerRank assessment focused heavily on C#'s Task Parallel Library, requiring implementation of a recursive asynchronous URL parser. The complexity of the problem itself is moderate - perhaps 1.5x harder when accounting for interview pressure - but the real challenge comes from an unusual restriction: the company prohibits using Google search or AI assistance to verify syntax, forcing candidates to manually navigate through .NET documentation pages instead. This policy significantly increases the time spent on looking up basic syntax and method signatures, time that could be much better utilized actually solving the problem and demonstrating problem-solving skills.
Final Round (Not Completed): I withdrew from the interview process before reaching the final stage, so I cannot provide firsthand details about this round. Based on typical patterns for similar companies and roles, it likely would have involved a system design or architectural interview - perhaps designing a large-scale system like a social media platform or similar complex application.
The second technical assessment centered around building an asynchronous URL parser that would recursively crawl and process web pages. The task required extensive use of C#'s Task Parallel Library to handle concurrent URL downloads while managing parallelism constraints (likely using semaphores or similar synchronization primitives).
You needed to implement the recursive logic to follow links, parse content from downloaded pages, and coordinate multiple async operations efficiently.
The following metrics were computed from 4 interview experiences for the ServiceTitan Senior Software Engineer role in Canada.
ServiceTitan's interview process for their Senior Software Engineer roles in Canada is extremely selective, failing the vast majority of engineers.
Candidates reported having very negative feelings for ServiceTitan's Senior Software Engineer interview process in Canada.