The phone screen just asked a few casual questions, then they sent an OA on HackerRank — 3 questions, an hour and a half total. After I finished it I got the interview, and what was pretty ridiculous is that the guidelines they sent and what the actual interview turned out to be were completely different. The intro said 3 rounds: one coding round, one "Advanced problem-solving coding" round, and a final round where you'd present a project. But when the schedule actually came out it was just two rounds of algorithm interviews. I emailed the person coordinating the interview asking how many rounds there actually were, and they only replied after the interview was already over.
I got the first question wrong and the second one right. Two days later I got rejected.
The first question was a process simulation. You're given a list of many processes, each with a start time, end time, and memory usage. You need to find the peak memory usage across the list, and the start/end time of that peak. You had to implement your own Process class and return class-based results — this was ACM-style input/output, not the simplified "just write the core function" mode. You also had to be careful to handle the case where multiple processes start or end at the same time.
The second question was LeetCode 1514, verbatim. It simulates a LAN with multiple endpoints as an undirected graph, where each point has a success probability to each neighboring point, and you're asked for the maximum success probability path from one point to another. After I finished, they asked about implementation details and time complexity. This felt like one of the harder ones I've run into — you need Dijkstra plus a max-heap.
Discussion
Loading comments…