Design real-time grid ETA for drivers
UberMachine Learning Engineer · OnsiteLast updated
This question evaluates a candidate's competency in real-time ML system design, covering streaming data ingestion, GPS noise handling and denoising, online feature computation, low-latency model serving, and operational monitoring.
Design a real-time system to maintain the remaining ETA for every driver within each cell of a city grid. You may only use the data provided in the prompt (no manual features or external data). Describe, step by step, how you would: (
- ingest and partition GPS pings and trip events; (
- denoise GPS signals and correct drift to robustly localize drivers within grid cells; (
- compute and continuously update each driver's remaining ETA; (
- select and train a model suitable for online serving; (
- perform online feature computation strictly from the approved data; (
- meet low-latency, high-throughput SLAs; (
- monitor, alert, and rollback models; and (
- evaluate offline and online. Specify concrete algorithms for GPS error reduction (e.g., filtering, map matching), data schemas, state stores and keys, windowing strategy, update frequency, failure handling, and your validation methodology.
Solution walkthrough is for members
Get the full walkthrough with reference code and complexity analysis, plus Kitty Coach at 300 messages a day. Hints, the code runner and community answers stay free.