91 articles
  • March 25, 2019

    Building Spotify’s New Web Player

    The purpose of this post is to tell the story of the new Spotify web player. How and why it came to be. We will focus on what the steps were that led to a complete rewrite [...]

    Published by José M. Pérez
  • September 18, 2018

    Scalable User Privacy

    At Spotify, we have a complex and diverse data processing ecosystem. Our backend infrastructure handles millions of requests per second, which are processed by over a thousand (micro)services [...]

    Published by Bram Leenders
  • August 31, 2018

    Smoother Streaming with BBR

    We flipped one server flag and got more download bandwidth for Spotify users. That is the TL;DR of this A/B experiment with BBR, a new TCP option [...]

    Published by Erik Carlsson, Eirini Kakogianni
  • January 11, 2018

    Testing of Microservices

    Anyone who has ever done manual testing knows that it’s slow, boring and error-prone. By writing automated tests we are trying to remove — or at the very least improve — on these pain points [...]

    Published by André Schaffer
  • November 20, 2017

    Autoscaling Pub/Sub Consumers

    Spotify’s Event Delivery system is responsible for delivering hundreds of billions of events every day. Most of the events are generated as a response [...]

    Published by Igor Maravić
  • September 15, 2017

    Stepping Up the Cloud Security Game

    Securing our Cloud infrastructure is incredibly important. We are now taking another step forward by leveraging open source tools we developed in [...]

    Published by Gianluca Brindisi
  • June 22, 2017

    Improving Critical Infrastructure Rollouts

    Spotify began using Docker with a few prototype services in 2014. We upgraded and configured it many times since and have almost every time come across issues that were often hard to detect and fix.

    Published by David Xia
  • March 31, 2017

    Spotify’s Love/Hate Relationship with DNS

    Forward: This blog post accompanies our presentation given at SRECon 2017 in San Francisco. The recording of the talk can be viewed here, [...]

    Published by Lynn Root
  • March 25, 2016

    Managing Machines at Spotify

    Introduction When you log into Spotify, browse through your Discover Weekly playlist, and play a track, you’re interacting with some of our [...]

    Published by Nic Cope
  • January 27, 2016

    SDN Internet Router – Part 2

    Introduction In the previous post we talked about how the Internet finds its way to reach content and users; how Internet relations [...]

    Published by dbarrosop
  • January 26, 2016

    SDN Internet Router – Part 1

    Introduction This is the first part of a series of posts about a project we have been working with for [...]

    Published by dbarrosop
  • December 9, 2015

    ELS: a latency-based load balancer, part 2

    What to Measure? In part 1, we already mentioned a few metrics that should be considered by the load balancer. Success [...]

    Published by Lukáš Poláček
  • December 8, 2015

    ELS: latency based load balancer, part 1

    Load Balancing Most Spotify clients connect to our back-end via accesspoint which forwards client requests to other servers. In the picture below, the accesspoint has [...]

    Published by Lukáš Poláček