How the interviewer opens it
“Design a system that lets users download geographic regions for offline map use and navigation. The system must use compact storage and support updates under mobile bandwidth limits.”
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
- Regions and offline features
- Source data and exclusions
- Device scale
- Traffic and read:write mix
- Release schedule and peak load
- Data size and phone limits
- Latency
- Network conditions
- Consistency and availability
- Durability and recovery
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
- Download and remove fixed map regions
- Browse maps and search downloaded places without a network
- Calculate car routes across downloaded regions without a network
- Apply small map updates without a full download
Usually out of scope
- Map surveys and user edits
- Satellite images and live traffic
- Transit routes
- Global online place search
What interviewers ask about
- Routes without a network
- A map image cannot answer route queries. The phone must handle road rules, region borders, and long routes with limited memory.
- Update size
- A small road edit can change much more than its source record. Compression, indexes, and file layout can enlarge the download.
- Download failures
- Phones lose connections and stop apps without warning. An update also needs temporary storage while the old map remains usable.
- Map changes during a trip
- Map tiles, road graphs, and indexes describe related data. Partial changes can break routes even when every downloaded file is valid.
Common mistakes
- Treats offline maps as image downloads and omits local route calculation.
- Uses one compressed file per region and replaces it after every small change.
- Assumes the source change size equals the update download size.
- Activates files independently and mixes incompatible map data.
- Ignores road connections and missing coverage at region borders.
- Budgets only the final package size and ignores temporary storage, interrupted transfers, and active routes.
The bar by level
- Senior (L5/E5)
- Defines stable content chunks and manifest comparison. Handles route borders, bounded route search, interrupted updates, and atomic activation within phone storage limits.
- Staff (L6+/E6+)
- Defines release and boundary contracts across the publisher and phone. Quantifies update amplification and peak storage. Handles old clients, active routes, retention, and incompatible formats. Explains where freshness guarantees fail without a network.