How the interviewer opens it
“Design a global map service where users browse maps, find places, and request directions. The service must support heavy read traffic and frequent geographic changes.”
The prompt is vague on purpose. The first minutes are for you. Reduce the prompt to the core features and agree on the numbers before you draw.
What to clarify first
- Coverage and search
- Read volume
- Updates and read-to-write mix
- Map detail and tile size
- Latency
- Update freshness
- Consistency and availability
- Durability
- Route rules
- Data sources and exclusions
The interviewer has the answers. In a SysRound round, Alex gives these answers, as a real interviewer does.
Scope of a strong answer
Core requirements
- Display maps at different scales
- Find places by name or category near a coordinate
- Return car directions between two coordinates
- Apply validated changes to places and roads
Usually out of scope
- Source data collection and validation
- Satellite images and street photos
- Live traffic and turn-by-turn navigation
- Public transit routes and pedestrian routes
What interviewers ask about
- Map detail and demand
- Each zoom level multiplies the possible map areas by four. Demand concentrates on a small area and can change quickly.
- Geographic data changes
- One edit affects several products with different freshness limits. A stale road closure can produce an invalid route.
- Directions over long distances
- Road rules make routes more complex than geometric distance. Long routes cross regional boundaries and depend on derived path data.
- Place search near boundaries
- Text relevance and geographic distance must work together. Regional boundaries must not hide nearby places or preserve old locations.
Common mistakes
- The design precomputes every tile or rebuilds the world after each geographic edit.
- The design treats road closures like ordinary display edits.
- The design runs a full global graph search for each direction request.
- The design searches only the user's city for nearby places.
- The design publishes map changes without a bounded client refresh process.
- The design acknowledges edits before durable copies exist in separate zones.
The bar by level
- Senior (L5/E5)
- Calculates read volume and tile growth. Defines update deadlines through client display. Handles cross-region routes, closures, duplicate events, zone durability, and cache failures.
- Staff (L6+/E6+)
- Defines ownership and compatibility rules across products and regions. Proves closure freshness during failures. Designs snapshot recovery and 90-day replay. Explains rebuild capacity and recovery trade-offs.