
ServiceTitan Software Engineer Interview Questions
& Process
Real candidates share what happened, how many rounds they had,
and how the experience turned out.
Based on 69 interview experiences · FREE TO READ
Candidate interview experiences
First-hand accounts from people who interviewed at ServiceTitan.
Software Engineer
The hiring process started off fine, with a responsive recruiter and what seemed like a very organized approach. The initial screening went well. The live coding interview appeared to go okay, though there wasn't much feedback from the observer. I expected to hear back from the recruiter but had to chase them for a response. They gave a weak reason about not being quick enough for the 'required speed and problem-solving efficiency during the technical evaluation,' which is odd since I finished within the time limit, and even the proctor mentioned not finishing the optional part. The recruiter had previously said they consider candidates for roles above and below the one applied for, with a streamlined process to save time. They also mentioned hiring for many levels and roles, so applicants were considered for different positions concurrently. After the rejection email with the weak excuse, I was ghosted, which contrasts with their inclusive language in job postings about valuing diverse experiences and backgrounds.
- First live coding exercise focused on C# generics.
- Second live coding exercise involved extending the first problem using C# extension methods.
Software Engineer
It started with a recruiter call where they asked basic questions like 'Introduce yourself' and 'Why do you want to work for ServiceTitan?'. Then there was a coding round that took about 90 minutes. It was split into three tasks where you had to pass the first to get to the next. The first task was about figuring out the output of promises and timeouts, so studying the event loop, microtask queue, and macrotask queue is important. Task two was to implement promise.all() from scratch. Task three involved creating a higher-order component that handles promises. The second coding round was also about 90 minutes. You were given a basic React ToDo app and had to implement several features, such as adding and removing items and using local storage. After completing the requirements, you had to review your own code as if it were going into production. They might also ask about React rendering, hooks, and memoization. I didn't pass this round, but it was an okay experience overall.
- Tell me about yourself and why you're interested in ServiceTitan.
- What's the output when promises and timeouts are called?
- Can you implement promise.all()?
Software Engineer
The interview process began with a phone screen. This involved a HackerRank problem that had to be completed within 80 minutes. The task was to take a given scenario and write a calculation method to handle many different use cases. There were 13 unit tests provided to check the solution. The test was not monitored, and while internet use was permitted, they warned about software detecting AI tool usage. The candidate had trouble understanding some of the scenarios. The IT recruiter followed up within a couple of business days, which was a good response time.
- For the phone screen, there was a HackerRank problem to solve in 80 minutes where you had to write a calculation method for various use cases based on a scenario, with 13 unit tests available. Internet was allowed, but AI tools were forbidden by monitoring software. I struggled with understanding some scenarios, but the recruiter replied quickly.
ServiceTitan Software Engineer Interview Questions
Quoted word for word from ServiceTitan interview reports.
“Build a higher-order component that waits for promise props and passes the results down.”
Read reports →“What's the best way to check if two objects refer to the exact same instance in memory?”
Read reports →“Implement a FIFO queue that includes functionality for node expiration time. Provide the code.”
Read reports →“Could you implement a custom dictionary that allows a single key to map to multiple generic values?”
Read reports →“How would you implement weight-based ranking using Linq, specifically with select, orderby, and limit functions?”
Read report →“Could you code a multimap class inheriting from a generic key-value interface?”
Read report →“Could you implement a Multi Values Dictionary based on the provided interface?”
Read report →“Could you implement extension methods for the MultiMap, for example UnionWith, ExceptWith, and IntersectWith?”
Read report →“Could you build a basic restful endpoint to get a resource from a list?”
Read report →Formats, difficulty and experience
Across all 69 ServiceTitan interview reports.