← Google Interview Insights

Google·Software Engineer·Onsite - System Design / Architecture·Senior

SeniorPrefer not to say
Apr 2026

Summary

Google system design round, one question about building an ETA system for a maps product. Pretty open-ended and I spent way too long on the easy parts.

Questions Asked (1)

Q1

Design an ETA (estimated time of arrival) system for a maps application.

System DesignTechnical Trade-offsProduct Sense & Ideation
Author's notes

I started with the data pipeline and routing logic which felt safe, but the interviewer kept pushing toward how you'd actually keep estimates accurate in real time.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the scope: ETA for a maps app involves predicting travel time along a route, considering real-time and historical data. Then, outline a high-level system that ingests traffic data, computes ETAs using models, and serves them at scale with low latency. Finally, discuss trade-offs between accuracy, latency, and cost, and how to handle edge cases like accidents or road closures.

Pro tip: Emphasize the importance of a feedback loop: continuously compare predicted ETAs with actual arrival times to retrain models and improve accuracy. This shows you think about long-term system health, not just initial design.

1. Clarify Requirements

Ask about scale (users, requests per second), latency requirements, accuracy targets, and data sources (e.g., GPS probes, traffic APIs). Also clarify if it's for a single route or multiple alternatives.

2. High-Level Design

Outline components: data ingestion (real-time traffic, historical), ETA computation service (routing engine + traffic model), and serving layer (API with caching). Mention using a graph representation of roads and partitioning for scalability.

3. Deep Dive into ETA Computation

Explain how to compute ETA: break route into segments, estimate speed per segment using historical and real-time data, sum times. Discuss models: simple average, machine learning (e.g., gradient boosting) using features like time of day, weather, road type.

4. Scalability and Latency

Address how to handle millions of requests: precompute ETAs for popular routes, use in-memory caches (e.g., Redis), and distribute computation geographically. Consider trade-off between precomputation and on-the-fly calculation.

5. Trade-offs and Improvements

Discuss trade-offs: accuracy vs. latency, cost of real-time data vs. historical. Suggest improvements: incorporate user feedback, handle anomalies (accidents) via real-time updates, and use ensemble models.

Key Points to Mention

  • Data sources: GPS probes from users, traffic sensors, historical speed profiles, incident reports.
  • Graph representation: road network as graph with nodes (intersections) and edges (road segments) weighted by travel time.
  • Real-time vs. historical data: combine both; use real-time for current conditions, historical for baseline and prediction.
  • Machine learning models: use features like time of day, day of week, weather, road type; consider deep learning for complex patterns.
  • Caching and precomputation: cache ETAs for frequent routes; precompute for popular origin-destination pairs.
  • Feedback loop: log predicted vs. actual ETAs to continuously evaluate and retrain models.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.