Design AR Navigation

Hard45 min
1 / 30
understanding9 min read

Problem Statement: AR Turn-by-Turn Overlay

Problem Statement: AR Turn-by-Turn Overlay — AR navigation interview depth

Problem Statement: AR Turn-by-Turn Overlay

Design AR Navigation for camera-overlay turn-by-turn navigation fusing VIO, GPS, and vector map matching. Interviewers at Google, Apple, and Mapbox expect you to quantify 12M DAU, 800k peak active trips, and 12M device pose samples per second before naming microservices.

Why this matters in the understanding phase

Candidates who treat AR navigation as “Google Maps with stickers” miss map matching, route version consistency, and tracking-loss UX. nav-1-sec-01-phase-hook explains how problem statement: ar turn-by-turn overlay constrains every later API and store choice.

  • Focus 1.1: camera passthrough with world-locked arrows — invariant nav-1-sec-01-focus-0
  • Focus 1.2: pedestrian-first with driving mode later — invariant nav-1-sec-01-focus-1
  • Focus 1.3: lane-level accuracy as stretch goal — invariant nav-1-sec-01-focus-2
  • Focus 1.4: safety-first minimal HUD chrome — invariant nav-1-sec-01-focus-3

Operational detail

State explicitly: CP for published route graph and tile manifests; AP for pose streams and turn-hint deltas. nav-1-sec-01-ops.

Failure and edge cases

  • GPS multipath near glass towers — widen snap search radius temporarily (nav-1-sec-01-f0)
  • AR tracking loss in low texture alley — show compass strip and pause turn commits (nav-1-sec-01-f1)
  • Stale offline pack after road closure — force manifest version bump (nav-1-sec-01-f2)
  • Duplicate reroute retries — idempotent tripId plus clientRequestId (nav-1-sec-01-f3)

Interview checkpoints

javaOne Dark Pro
1public record RouteVersion(String tripId, long version, String polyline6) {}
pythonOne Dark Pro
1def snap_confidence(gps_acc_m: float, vio_residual: float) -> float:
2 return max(0.0, 1.0 - (gps_acc_m / 25.0) - (vio_residual / 0.4))
typescriptOne Dark Pro
1export function shouldReroute(deviationM: number, thresholdM: number): boolean {
2 return deviationM > thresholdM && deviationM < thresholdM * 4;
3}

Why interviewers care

AR Navigation interviews reward crisp scope, explicit trade-offs, and failure stories—not generic microservice diagrams.

Interview checkpoint

Name one failure story for Problem Statement: AR Turn-by-Turn Overlay that proves you understand real outages, not happy-path diagrams.

Key Highlights

  • camera passthrough with world-locked arrows
  • pedestrian-first with driving mode later
  • lane-level accuracy as stretch goal
  • safety-first minimal HUD chrome
Pro tip
Lead with camera passthrough with world-locked arrows before drawing boxes — interviewers reward ordering.
Common mistake
Uploading camera frames ‘for better snap’ violates privacy and blows p95 latency.

Section Rescue Kit

Buzzwords to use:

H3 CorridorRouteVersion CAS

Safe statements:

  • "For Problem Statement: AR Turn-by-Turn Overlay, I'll keep camera processing on-device and treat route graph as CP."
  • "Let me quantify pose coalescing before picking ingress SKUs."
Design AR Navigation - System Design | WinJob | WinJob