← Back to Directory

Google interview notes, page 161 of 215

FAANG / Big Tech

Most of these Google write-ups come from Software Engineers (1,167), then Product Managers (686) and Data Scientists (125). The most reported rounds are the product sense round (667), the technical phone screen (660), the behavioral / leadership round (252) and the onsite coding round (214).

2146 interview notes · updated Oct 2026

Google·Data Analyst·Technical Phone Screen

Jun 2026
Got a Google interview question about estimating air traffic over the US. Classic fermi estimation style, nothing too wild, but I definitely fumbled the structure a bit.
  • How many planes are currently flying over the US at any given moment?

“I started by thinking about daily flights and tried to work backward from there.”

View Post

Google·Software Engineer·Onsite - Coding / Algorithms

Jun 2026
Offline onsite round at Google in Bangalore for a senior engineering role. One algorithmic question on grid traversal, the kind that looks straightforward but has a bunch of edge cases hiding underneath.
  • Given an N*M grid where some cells are free, some are obstacles, and you start at a marked cell, find a walk of exactly k steps that returns you to your starting position. If multiple valid paths exist, return the lexicographically smallest one using directions L, R, U, D.

“The backtracking part clicked for me pretty quickly but the lexicographic ordering tripped me up for a bit.”

View Post

Google·Software Engineer·Onsite - Coding / Algorithms

Jun 2026
Google SWE coding round with a graph reachability problem that looks deceptively simple but has some tricky edge cases around the distance threshold being strict versus inclusive. The black-box function constraint made it feel more real-world than your typical LeetCode graph question.
  • Given a set of 2D points, a start, a target, a distance threshold r, and a black-box getDistance function, determine whether there is a path from start to target where each hop between points has a distance strictly less than r.

“My first instinct was BFS and that part was fine.”

View Post

Google·Software Engineer·Technical Phone Screen

Jun 2026
Google SWE interview with a tricky stream-matching problem that's a step beyond the classic LC 1032. The twist of consuming matched words from the stream made it meaningfully harder than what I'd prepared for.
  • You're receiving a character stream one character at a time, and you have a list of target words. After each new character, check if any target word matches the current suffix of the stream. If it does, return that word and also 'consume' it from the stream so the next characters extend only the prefix before the match.

“I knew LC 1032 going in, so I felt okay for about 30 seconds.”

View Post

Google·Software Engineer·Technical Phone Screen

Jun 2026
Google SWE interview with a graph traversal problem that had a couple of follow-ups layered on top. Pretty standard BFS territory but the extensions pushed into weighted graph thinking, which I wasn't fully prepared for.
  • Given an unweighted graph, a start node, an end node, and a set of blocked nodes that cannot be visited, find the length of the shortest path from start to end.
  • If the blocked nodes can now be traversed but add extra cost, how would you find the shortest path?

“BFS was the obvious move and I got there fine.”

View Post

Google·Machine Learning Engineer·Technical Phone Screen

Jun 2026
Google MLE interview with a classic dynamic programming fence painting problem. The question looks deceptively simple until you actually try to formalize the recurrence.
  • You have a fence of n vertical planks, each with a given height. You can paint a plank with a vertical stroke (one full plank, one operation) or a horizontal stroke across consecutive planks at the same height. Find the minimum number of operations to paint the entire fence.

“Spent the first few minutes just drawing out the [2,2,1,2,1] example trying to convince myself I understood what a horizontal stroke even meant physically.”

View Post

Google·Product Manager·Onsite - Product Sense / Strategy

Jun 2026
Interviewed at Google for what seemed like a product or engineering estimation role. One question, classic Fermi-style, and I left feeling like I either nailed it or completely missed the point.
  • Estimate the total cost of storing all of Google Earth's photos.

“I started by trying to break down the surface area of the Earth, then guessed at image resolution and coverage overlap.”

View Post

Google·Software Engineer·Technical Phone Screen

Jun 2026
Google SWE interview with a BST deletion problem. Pretty classic tree question but there are enough edge cases to trip you up if you're not careful about the two-child case.
  • Given the root of a binary search tree and a key value, delete the node with that key and return the (possibly new) root while keeping the BST property intact.
  • How does the time complexity change between a balanced BST and a completely skewed one?
  • Can you rewrite your recursive solution iteratively?
  • How would you handle duplicate keys in a BST deletion scenario?
  • How does deletion work differently in a self-balancing tree like an AVL or Red-Black tree compared to a plain BST?

“The leaf case and one-child case felt fine, but I fumbled a bit explaining the two-child case live.”

View Post

Google·Product Manager·Onsite - Product Sense / Strategy

Jun 2026
Went through a product sense round at Google and got hit with a question about a product I genuinely dislike. Shorter interview than I expected but it made me think.
  • What is your least favorite product and why?

“I blanked for a second because I'd only ever prepped for 'favorite product' questions.”

View Post

Google·Software Engineer·Technical Phone Screen

Jun 2026
One round at Google for a software engineer role, a single coding problem that felt like it went well but apparently didn't. Still not sure what I missed.
  • Given a string representing nested math function calls like add(1, sub(1, 0)), write a function to evaluate and return the result.

“Went iterative instead of trying to split the string recursively.”

View Post