System design interview questionHardDistributed Architecture

Design a Music Streaming Service like Spotify

Design Spotify-style music streaming: catalog + playlists, and stream audio to many listeners via CDN β€” not live concert ingest.

Interview scope

Control: Client β†’ Gateway/LB β†’ App β†’ Cache + DB. Audio: Client β†’ CDN (+ Object Storage origin). No Client β†’ DB for audio bytes.

Functional requirements

  • Browse/search catalog and playlists.
  • Stream audio tracks to authenticated listeners.
  • Track play history / likes at a high level.

Scale and quality goals

  • Audio bytes via CDN + Object Storage.
  • Metadata/playlists are cache + DB friendly.
  • Don’t serve global audio egress from one App Server.

Capacity assumption

Design for this scale

Assume ~100M streams/day (~1,160 stream-starts/s average) with heavy concurrent listening at peak.

Practice more than a diagram

Place components on the Froquiz canvas, connect the data flow, and see which decisions the scenario-specific review finds missing. The full exercise and review unlock with Premium.

Explore Premium β†’