Round 1: past project deep dive. Not much to say about this kind of subjective round. I feel like I explained it well, but that doesn't mean I won't still get rejected.
Round 2, coding: we spent 25 minutes going over my resume. The coding question was: given an integer, find the next palindrome integer greater than it. I'd never seen this before. The question is pretty abstract — you can't even eyeball what the next palindrome number would be. The interviewer wasn't willing to give an example either. It took me over ten minutes to work out a solution, and I used the rest of the time to code something that mostly worked — it ran, but had some bugs. My guess is I failed this one.
Round 3, coding: given a number stream, pick a clustering algorithm of your choice and implement it. I'm not an MLE, so I'm not sure why they're testing this. I finished writing the code and got to the testing phase, but printing in Java was too much of a hassle so I didn't finish testing in time. The question was hard, but the interviewer was engaged throughout and gave hints.
Round 4: leadership. A subjective round. I talked honestly about my experience handling multi-team alignment.
Round 5, system design: the Google Maps address bar. There were a lot of cases to cover — entering a specific address, entering a place name, fuzzy match, typos, location awareness, sorting by popularity. At the start there was so much to think through that I got a bit overwhelmed, but by the end I managed to just barely cover all the pieces.
I did my best throughout the whole process — there's nothing I could have done better. It's just that interview time is limited, and when you hit a question you haven't seen before, after only ten-some minutes of thinking, there's basically no way to answer that round perfectly.
Discussion
Loading comments…