
ServiceTitan Staff Software Engineer Interview Questions
& Process
Real candidates share what happened, how many rounds they had,
and how the experience turned out.
Based on 5 interview experiences · FREE TO READ
Candidate interview experiences
First-hand accounts from people who interviewed at ServiceTitan.
Staff Software Engineer
Started with an internal recruiter chat, then went through two LeetCode-style coding pairs, with the second one being noticeably harder than the first. The final stage was a system design and general technical chat. They give you 90 minutes for the old-school LeetCode tests, but secretly filter for completion within 60 minutes. It's super misleading because if you use the full time to show your thinking and skills, even if you finish correctly with passing tests, you might not get picked. Also feels like there might be some bias going on.
- Complete the C# interface implementation for a custom dictionary.
- Create a multithreaded HTTP downloader that fetches page objects from URL links and recursively follows all links found on those pages.
Staff Software Engineer
After speaking with the recruiter, I was set up for a technical interview. The technical interview was, in fact, conceptually quite simple. I had anticipated something very challenging, perhaps a difficult algorithm, but it simply involved a multi-value dictionary. The implementation is straightforward for any experienced developer. However, the coding environment itself is buggy, and intellisense was non-functional, forcing me to look up documentation for common types. Despite these issues, I managed to complete the exercise within the time limit, although I was thrown off by the environment. The instructions indicated that using documentation was permissible, but it appears that this, along with possibly not being comfortable with the coding environment, could lead to disqualification.
- Could you implement a multi-value dictionary class?
Staff Software Engineer
So, the interview had a couple of coding rounds, like two of them, one that was pretty easy to weed people out and then a harder one, medium to hard. Then there was a system design part, mainly about distributed systems, and a behavioral interview too.
- Can you tell me about async programming in C#?
- How would you design distributed systems?
ServiceTitan Staff Software Engineer Interview Questions
Quoted word for word from ServiceTitan interview reports.
“Create a multithreaded HTTP downloader that fetches page objects from URL links and recursively follows all links found on those pages.”
Read reports →“Implement a custom list”
Read reports →“How would you implement a Dictionary that allows multiple values for the same key?”
Read reports →“Could you implement a multi-value dictionary class?”
Read reports →“Could you implement a search algorithm that considers weighted results?”
Read report →“Can you tell me about async programming in C#?”
Read report →“How would you design distributed systems?”
Read report →Formats, difficulty and experience
Across all 5 ServiceTitan interview reports.