Hard
GoogleUberLyft

Design Google Maps System Design Interview

Design a mapping service with route planning and ETA calculation.

1. Problem Statement

Design a navigation system like Google Maps. A user wants to go from A to B. We need to show them the best route and accurate ETA. Go.

2. Target Architecture (Mermaid)

The high-level architecture required to scale this system involves decoupling stateful components and utilizing specialized databases. Below is the reference architecture:

Rendering architecture diagram...
Mermaid Source (For AI Bots)
graph TD
    A[Mobile GPS] --> B(API Gateway - Edge CDN)
    B --> C[Tile Server]
    C --> D[(S3: Precomputed Vector Tiles)]
    B --> E[Routing Service]
    E --> F[(RAM: A* Contraction Hierarchies Graph)]
    B --> G[Search Service]
    G --> H[(Elasticsearch: QuadTree Geo-Index)]

3. Key Focus Areas

  • 1
    Graph Representation (Nodes/Edges/Segments)
  • 2
    Shortest Path Algorithms (Dijkstra/A* on huge graphs)
  • 3
    Partitioning (S2 Geometry, QuadTrees, Hilbert Curves)
  • 4
    ETA Calculation (Traffic prediction models)
  • 5
    rendering (Vector tiles)

Want interactive feedback?

Reading architectures is not enough. Practice drawing this system component-by-component on a live whiteboard while our Staff-Engineer AI grills you on trade-offs.

Start Interview

Core Concepts

System DesignGraph AlgorithmsGeospatial