Code Room
System designHardsd-g278
Subject Event streamingLevel Senior–Staff~50 minCommon in Distributed systems interviewsIndustries Technology

Question

Design the ingestion and storage backend for a distributed-tracing system that collects spans from thousands of microservices producing 10M spans/sec. A single user request can produce a trace of hundreds of spans across services; engineers need to query a full trace by id within seconds, and run analytics ('p99 latency of checkout last hour'). Storing every span is too expensive at this volume. How do you ingest, sample, assemble traces, and store them so both trace-lookup and aggregate queries are fast and affordable?

What a strong answer looks like

Clarify scale and constraints first. Propose a clean component breakdown, then go deep on the hard parts — data model, bottlenecks, consistency, failure modes — and name the trade-offs you are making.

Narrate your design
Loading whiteboard…
Run or narrate your approach, then ask the coach.