Google onsite done, waiting on next steps — will Googliness happen?
Summary
After completing Google's onsite interviews, the candidate is awaiting final feedback and seeks insights on the timeline for the hiring committee's decision. They had three technical rounds focused on graph problems, with some challenges in time complexity calculations and follow-up questions.
Full Experience
Recently, I completed my Google onsites after several rescheduling issues. My interviews were all technical and focused heavily on graph-related problems, which were not easy but manageable. I solved the problems, answered follow-ups, and had solid conversations with the interviewers, though I didn't 'nail' every round perfectly. A notable slip-up was in the third round where I miscalculated time complexity, using a putIfAbsent inside nested loops leading to an incorrect n*n*logn complexity instead of n(n + logn).
The interview process started with a phone screening in June, followed by multiple follow-ups and a change in recruiting partners. I was eventually called for onsites in July, but due to a requested mock interview and interviewer unavailability, the dates were rescheduled to mid-August. The questions were all graph-based, with the third round being medium-hard and requiring some time to figure out the approach. I managed to write working code, but there were follow-up questions on syntax, time complexity, and the choice between BFS and DFS.
Interview Questions (3)
During the first onsite interview, I was asked to compare the use of BFS and DFS for finding the shortest path in a graph. The interviewer then asked follow-up questions based on either approach, with the main focus on the other. I was required to explain why I chose BFS over DFS and why a PriorityQueue was preferred over a normal queue for implementing BFS.
In the second onsite interview, the problem was again graph-related, though the interviewer only had 1-2 follow-ups. The interview ended within the first 35-40 minutes. The main focus was on constructing the adjacency matrix or list, and the difference between BFS and DFS. I fumbled a bit with the latter, but eventually explained the distinctions.
The third onsite interview featured a medium-hard graph problem that I hadn't encountered before. It took some time to figure out the approach, but I was able to write working code. Follow-up questions were asked about syntax, time complexity, and the decision between BFS and DFS.
Preparation Tips
I prepared for the interviews by focusing on graph algorithms and their applications. I practiced problems related to BFS and DFS, and I made sure to understand the time complexity of different approaches. I also prepared for follow-up questions on syntax and algorithmic choices.