Menu

Earn Premium with Referrals

Invite your friends and earn Premium rewards through our referral program.

See how it works and start inviting friends.

Deep Dive Selection
HLD

Deep Dive Selection

Choosing where the interview's remaining minutes go — risk, differentiation, and the art of steering depth deliberately.

The Time Allocation Problem

A baseline design plus estimates consumes ~20 of 45 minutes. The remaining time goes deep on one or two components — and which ones you pick is itself a graded decision. Depth in the wrong place (auth flows for a feed design) wastes the interview’s scoring window.

The Selection Criteria

Rank candidate components by three questions:

 1. RISK        where does this system most plausibly fail at scale?
                (the bottleneck analysis already answered this)

 2. DIFFERENTIATION   what makes THIS system not-generic?
                (URL shortener → id generation + redirects at scale;
                 ride-share → geo-matching; chat → fan-out + ordering)

 3. INTEREST SIGNAL   what does the interviewer keep circling back to?
                (repeated follow-ups = invitation to go deeper there)

Score each component mentally; dive where all three align.

RideShare Selection Walk

 candidates:
 auth/PSP integration    commodity — everyone knows it          score low
 trip CRUD               standard relational patterns           low
 location pipeline       100k writes/sec, ephemeral, sharded    HIGH (risk)
 matching engine         sub-second, geo-indexed, business-core HIGH (all three)
 history/feed            read replicas + cache, well-trodden     medium

 CHOSEN DEEP DIVES: matching engine, then location store
 announced explicitly: "the interesting problems are matching
 and location scale — I'll spend us there unless you'd rather
 I detail something else"

The announcement matters: it hands the interviewer a steering wheel while demonstrating prioritization.

What a Good Deep Dive Contains

Depth is structured, not rambling:

LayerContent
Problem restated numerically”600 matches/sec against moving driver positions”
Core mechanismGeo-index choice with alternatives rejected briefly
Hard edge casesContention when one driver gets multiple offers
Failure behaviorMatcher down → queue requests, degrade ETA display
Scale evolutionWhat doubles at 10x cities

Each layer is one to two minutes. Numbers from earlier estimation get consumed here — that’s why they were computed.

Steering Dynamics

Deep dives are conversations with direction:

 interviewer hint                    correct response
 "how does matching actually work?"  → the invited dive begins, structured
 "what about surge pricing?"         → either scope-park or trade ("that's a
                                       real subsystem — worth trading out the
                                       location internals discussion?")
 silence after your dive             → offer the second-ranked candidate

Candidates who let interruptions scatter them across five shallow topics lose the depth signal entirely; the park-and-trade reflex protects it.

Interview Framing

Interviewers consistently report the same failure mode: complete-looking diagrams, zero depth anywhere. The fix is deliberate allocation — say aloud what deserves the minutes and why, tie it to estimated numbers and stated risks, then execute one structured dive. Choosing depth is designing.

My Private Notes

Notes are auto-saved locally to this device.