Google Onsite (No Offer) | Nuro Phone Screen (Reject) | Microsoft Onsite (Offer)
Anonymous User
5572

Hi Everyone, I have been a member of leetcode premium since December 2020 and wanted to share my experience in the interview process.

Background info - I am going to complete my 3rd year as a software engineer in October.

TLDR; Google Onsite for Embedded Software Engineering= No Offer, Nuro Phone Screen for Software Engineering = Reject, Microsoft Onsite for Software Engineering = Offer Accepted

1. Google Onsite (January)
I. I prepared for 3 weeks using leetcode - I brushed up on the basics in C++ (arrays, vectors, stacks, deques, queues) and really went to town on self-balancing trees, N-trees, tree traversal, graph traversal using BFS and also brushed up on real-time OS, semaphores, mutexes, etc (it was for an embedded role).
II. Overall, result was that things went well but was not fast enough - so these are all good topics to cover but probably needed more time or more practice sets to recognize the patterns MORE QUICKLY.
III. Interview 1 - Receiving messages and storing those only within X phases, otherwise you dump them from your container (used a queue to push and pop with a separate 'timer' to count phase)
IV. Interview 2 - Given points on a graph, find the largest area possible. Follow up question - if points are removed, how to make sure you alway have the max area (used a min-max heap)
V. Interview 3 - Implement a messaging system with shared memory (there was little interaction with the interviewer) so this was mostly testing if I understood how to write/read from memory in a multi-threaded system. Follow up- how to ensure messages are being received without causing deadlocks.
VI. Interview 4 - THis one is hard to explain but there are a graph of numbers and you have to find the max sum in the vertical. If you start a matrix[0][0] (lets say its 10)and you then add matrix[1][0] (lets say its 8), you get 18. If you choose to say add matrix [1][1] as it's 12 lets say, you are docked -1 since you moved to the right, ONCE. so you get a max sum on 10 + 11 = 21. This one was a DFS problem and I could not solve this in time and was the most challenging.
VII. Behavioral :)

2. Nuro Phone Screen (March)
I. Prepared another 2 weeks using leetcode (mostly tree traversal, self balancing trees)
II. DFS problem that I totally bombed using BFS.

3. Microsoft (May)
I. Prepared yet another 2 weeks using leetcode (I especialllllyyyyy studied DFS problems lol, my friend shared this resource with me which made everything make sense: Kenny Talks Code: )
II. Phone Screen - technical problem with team lead; finding all factors of a number with no duplication
III. Interview 1 - Implementing a bug tracker given incoming bug tickets that could also possibly link to other bugs, follow up was how to ensure there's no stack overflow (Used a DFS approach as i looped through the bugs and then recursively checked for bugs that they were linked to)
IV: Interview 2 - Behavioral with a team manager
V. Interview 3 - Area under a skyline - this was super challenging at the time and at the end I was only able to whiteboard a solution and not get it into code - I was super bummed out about it and kept thinking about how to solve it after the interview, i ended up pre processing the data into an ordered set to keep track start and end of buildings and their heights (this took the most time)
VI. Interview 4 - Behavioral & Technical - they asked how i felt i did in the last interview and i said horribly and they said, would you be able to solve it in 10 minutes? and i went to town to develop the algorithm in code. So yes this was a technical interview, but mostly behavioral as they wanted to see if i was someone who really wanted to problem solve or if i wanted to forget about the issue and move on. This was my best interview and the interviewer was in amazement that i remembered the details of the problem and was genuinely interested and could solve the problem.

Overall, everyone is different but you more than likely will have to prepare multiple weeks (I was around 7 weeks of total prep) and getting an offer in one shot is unlikely. Most folks here have to go at it over and over again until an offer comes through. Attack your blindspots (mine was DFS and once I tackled that preparing for my MS interviews, ir definitely helped me knock my first interview out of the park with time to spare). Lastly, this may not apply to all behavioral interviews, but do not be surprised if someone asks you the details of your last technical interview you may have foundered as they may be checking for your unwillingness to back down from a hard problem (telling them you forgot about your problem is a bad sign that you either didn't care enough or you don't want to solve it given the chance to).

Happy coding everyone!
Comments (5)