27. Spotify

Medium

Design a music streaming service like Spotify

Functional Requirements
  • Users should be able to choose any song in Spotify's library and start playing it immediately
  • Users should be able to save songs to playlists
  • Each song should be attached to an album, and each album should have cover art
Nonfunctional Requirements
  • P99 Playback start - 1000ms
  • High availibility
Assumptions
  • The top 1% of songs account for 90% of plays
  • You do not need to worry about uploading songs
Estimated Usage
  • 430 Monthly Active Users
  • 700k song plays per minute
  • 100k songs uploaded per day

Seen this question in a real interview before?

Not all editor features are supported on mobile