Back

Lesson 1/8

11.0

How Spotify interviews

1. The shape of a Spotify loop

Spotify's loop is European in tempo. Calmer than Meta, less committee-driven than Google, more conversational than Amazon. The standard senior loop is five rounds at 45 to 60 minutes each: two coding, one system design, one ML or data systems (depending on the team), and one behavioral plus team-fit round with the hiring manager. For staff-level loops you'll see a second system-design round, often weighted toward data infrastructure.

The recruiter usually tells you up front which two of the technical rounds will lean toward data engineering and which will lean toward product systems. That's a real tell — Spotify hires for one of two distinct populations and they don't pretend otherwise.

2. What Spotify grades you on

Two things, weighted differently depending on which org you're interviewing for:

  • Music-domain literacy and data fluency. Spotify is, in their own framing, a data company that happens to sell music subscriptions. The recommendation product (Discover Weekly, Daily Mixes, Radio) is the brand. If you don't know what a "playlist" is in product terms — a first-class object with sharing, co-editing, and a recommendation feed of its own — the system-design round goes badly fast.
  • Cross-team collaboration habits. Spotify is famous for the squad / tribe / chapter / guild model. Squads are small autonomous teams. Tribes are squad clusters owning a product area. Chapters are functional groupings (e.g., all backend engineers across squads). Guilds are interest groups. The model has shifted over the years (they've moved away from some of the autonomy extremes) but the vocabulary is still alive inside the company. Your behavioral round will probe whether you can work in a squad — meaning small, opinionated, and accountable for a slice end to end.

For system design specifically, Spotify pushes hard on the data infrastructure layer. Their pipelines run on Google Cloud (they migrated off on-prem around 2016) and they've open-sourced large pieces of their stack — Scio (a Scala wrapper around Apache Beam), Backstage (the developer-portal platform), Luigi (the older batch workflow tool). Knowing that vocabulary lands well in a Spotify interview.

3. What's different here

  • Two big surfaces, two design cultures. Music and podcasts run as semi-independent product areas with separate design conventions. Music is recommendation-heavy and latency-tolerant on most paths (a playlist generated yesterday is fine). Podcasts are download-heavy, episode-tracking-heavy, and have a different rights model (Spotify licenses or owns much of the podcast catalog directly, unlike music). If you draw the same architecture for both, you signal you don't know the product.
  • Batch is not a dirty word here. At YouTube or TikTok, "we'll do that in batch" is sometimes treated as giving up. At Spotify, Discover Weekly is famously a batch job that runs over the weekend for hundreds of millions of users. Owning the batch story is a senior tell here.
  • Real-time matters, but for a specific reason. The "Now Playing" state — your phone hands off to your laptop hands off to your Sonos — is a real-time problem Spotify takes seriously. Real-time on Spotify isn't about feed freshness. It's about cross-device continuity.
  • European HQ shapes the cultural fit conversation. The Stockholm headquarters is the gravitational center. Even if you're interviewing for a New York or Boston role, the team-fit round may include a Stockholm-based interviewer. Direct, calm, low-status-posturing communication reads well. American-style hard-charging executive presence reads less well.
  • Music-industry literacy is a real plus. You don't need to be an audiophile. You should know what a master recording is, what publishing rights are, why royalty calculations are split between recording and composition, and why a "play" has a precise definition (30 seconds is the industry threshold). Mention any of this correctly and the interviewer warms up.

4. The level bar

How the bar shifts:

  • L4 (junior senior) — design at the competent IC level. One seam deep, the rest covered cleanly. Estimation is graded. Vocabulary is graded.
  • L5 (senior) — design at the platform-aware level. At least one deep dive that survives three pushes. Real-time vs batch tradeoff articulated explicitly on every question. Tradeoff sentences expected on major choices.
  • L6 (staff) — design at the systems-thinker level. Cross-product implications surfaced (e.g., "this affects the podcast surface like so"). Migration plans named. Cost framed in real numbers, including egress on Google Cloud.
  • L7+ (senior staff / principal) — organization-shaped answers. You talk about which squads would own which slices and how the platform team supports them.

In this chapter, units target L5 by default. L6-flagged units (Discover Weekly, playlist co-editing) explicitly push the depth higher.

5. The Spotify-flavored mistakes

Watch for:

  • Treating music and podcasts as the same product. They aren't. The download model, the episode-tracking model, the rights model, the publishing relationship — all different. Even the data schemas are different inside Spotify.
  • Designing for real-time when batch is the right answer. Discover Weekly is batch. The royalty pipeline is batch. The freshness budget for most recommendation surfaces is hours, not seconds. Real-time isn't a virtue here; it's a cost.
  • Forgetting offline. Spotify Premium is an offline-first product for many users. Downloads, sync, and DRM enforcement when disconnected are first-class concerns. Designing without them signals you only think about always-online cases.
  • Not knowing what a play is. A "play" counts for royalties at 30 seconds. A "skip" before 30 seconds doesn't count. This precise definition flows through the analytics pipeline, the royalty pipeline, and the recommendation pipeline. Get it wrong and the interviewer notices.
  • Designing the recommendation model. Same trap as YouTube. Spotify asks about the data plumbing around recommendations, not the model itself. If you spend ten minutes on matrix factorization, you're answering the wrong question.

6. The eight units in this chapter

Each unit dissects one question end to end. The chapter covers:

  • 11.1 Spotify's audio streaming — CDN choices, adaptive bitrate for audio, gapless playback. Classic L5 question.
  • 11.2 Discover Weekly — system side — the batch generation pipeline, weekly delivery, storage of generated playlists. Frequently L6.
  • 11.3 Offline listening sync — Premium download model, DRM offline, position sync on reconnect.
  • 11.4 Playlist co-editing — CRDTs in practice — shared playlists, concurrent edits, stable per-track positions. L6.
  • 11.5 Podcast download and episode tracking — podcasts are different, and the data model shows it.
  • 11.6 Listening history and real-time scrobbling — event ingestion at scale, royalty math, Now Playing across devices.
  • 11.7 Take-home — music search prefix server — TypeScript code task. Prefix-matching across tracks, artists, albums, with per-type ranking.

7. The next page

The first scenario: audio streaming at planet scale. Smaller than video, different in surprising ways, and the question that opens almost every Spotify system-design loop.