Start Here

Tier 1 · Building Blocks

Scale Reads

Scale Writes

Database Selection

Traffic Control

Consistency & Coordination

Estimation

Tier 2 · Core Systems

Tier 3 · Location & Real-Time

Tier 4 · Infrastructure & Data

Tier 5 · Finance & Commerce

Tier 6 · Advanced & Collaborative

Phase 1: Clarify, Scope & Constraints


Interviewer: "Let's design Google Maps. How do you approach this?"

Candidate: "Google Maps is a large product. Let me identify the core subsystems and pick the most design-rich ones:

  1. Map tile serving — Display the map: streets, terrain, satellite imagery, as a user pans and zooms
  2. Routing/navigation — Find the fastest route from A to B, with real-time traffic
  3. Search — Find places, addresses, POIs ('Starbucks near me')
  4. ETA computation — Estimate arrival time accounting for live traffic

I'll focus on map tile serving and routing/navigation, as they're the most architecturally distinct and interesting. Search shares architecture with the Proximity Service design. ETA is a deep dive within routing.

The dominant complexity is routing at scale. The road graph of the continental US has ~20+ million nodes (intersections) and ~50+ million edges (road segments). Running Dijkstra on this naively takes seconds — too slow for real-time navigation. The question is: how do you compute optimal routes in milliseconds on a graph this large?

WHY: The secondary complexity is map tile serving. There are 4zoom_level4^{zoom\_level} tiles at each zoom level, with tiles at zoom 22 representing individual buildings. Serving tiles to 2 billion MAU efficiently — with 100ms load times across the globe — requires a sophisticated tile pyramid, CDN strategy, and intelligent caching.

Non-goals for V1:

  • Street View (computer vision processing of 360° imagery)
  • Indoor maps (separate data model)
  • Public transit routing (different graph structure, schedule-dependent)
  • Real-time satellite imagery updates
  • User-submitted photos and reviews…

In the full tutorial

  • Phase 2: High-Level Architecture
  • Phase 3: Deep Dive & Evolution
  • Phase 4: Robustness & Operations

Glossary history

Click dotted jargon to save explanations here.