Google — Software Engineer ❌ Failed
Level: Junior-Level · L3
Round: Full Journey · Type: Coding · Difficulty: 6/10 · Duration: 120 min · Interviewer: Unfriendly
Topics: Graph Theory, Breadth-First Search, Union Find, 3D Space
Location: Remote
Interview date: 2026-01-24
Got offer: False
Summary
Round 1: Coding
Question: Graph problem (unspecified), requiring building a graph and using BFS.
My approach: Initial implementation was brute-force graph construction. Missed a minor bug in BFS which the interviewer pointed out. Suggested Union Find as an optimization, but missed a better bimap approach.
Difficulty: 5/10
Outcome: Unknown
Round 2: Coding
Question: Coding problem, quickly solved. Follow-up question about extending the solution to 3D.
My approach: Solved the base problem quickly and addressed the 3D extension. Explained why BFS was chosen over DFS and discussed BFS optimizations.
Difficulty: 7/10
Outcome: Unknown
Final Result: Rejected
Details
To prepare for similar interviews:
- Graph Algorithms: Thoroughly review fundamental graph algorithms, including BFS, DFS, Dijkstra's, and A*. Practice implementing these algorithms from scratch. Be prepared to analyze their time and space complexity.
- BFS/DFS Trade-offs: Understand the differences between BFS and DFS. Know when one is more appropriate than the other (e.g., BFS for shortest path in unweighted graphs, DFS for exploring deeply nested structures). Also be ready to discuss optimizations for these algorithms.
- Union Find: Study the Union Find data structure for solving connectivity problems. Understand its time complexity for union and find operations.
- Spatial Reasoning: Practice problems that involve spatial reasoning and extending algorithms to 3D space. Think about how data structures and algorithms need to be modified to handle 3D coordinates and distances.
- Code Debugging: Pay meticulous attention to detail while coding, and thoroughly test your code with various edge cases to avoid minor bugs.
- Bimap data structure: Understand when to use Bimap to improve time complexity.
LeetCode similar: Graph, Breadth-First Search, Union Find