System Design · hard · Asked at Airbnb

Design a metrics/experimentation platform.

Asked in Data Scientist interviews, in the System Design round.

Short answer

Assignment service, event logging, metric computation, stats engine, guardrails, dashboards.

How to answer it

Five components, and the hard problems live in the seams between them.

The seams: the assignment log and the metrics pipeline must join on the same user id and the same timestamps; exposure must be logged by the client that renders the treatment; and the metrics pipeline must respect the experiment window per user, not calendar time.

Operational: sample ratio mismatch checks run automatically, because a 50/50 split that comes out 52/48 means assignment or logging is broken and every result is invalid.

Related questions

Practice this for real