Spotify Modernizes Client-Side Architecture

Engineer Carl Engström explains how lifting the 10,000 limit on Liked Songs enabled his team to address a much deeper issue and improve the listening experience of end users, whatever their device or network.    At first glance, lifting the 10,000 limit on Liked Songs seems like … | Continue reading


@labs.spotify.com | 3 years ago

What the heck is Backstage anyway?

Yesterday, we released the open source version of Backstage, our homegrown developer portal. And we learned a thing or two via the feedback we received. So, I wanted to take this opportunity to further explain what we’re trying to do with Backstage — and more importantly, what we … | Continue reading


@labs.spotify.com | 4 years ago

How We Improved Data Discovery for Data Scientists

At Spotify, we believe strongly in data-informed decision making. Whether we’re considering a big shift in our product strategy or we’re making a relatively quick decision about which track to add to one of our editorially-programmed playlists, data provides a foundation for soun … | Continue reading


@labs.spotify.com | 4 years ago

Spotify aligned CDN services for a lightning fast streaming experience

A business with eyes on the future Spotify built its business on flawless content delivery. Our streaming platform serves up more than 50 million tracks (plus an array of images and other assets) to more than 230 million monthly active users around the world — making us one of th … | Continue reading


@labs.spotify.com | 4 years ago

How Spotify ran the largest Google Dataflow job ever for Wrapped 2019

The Spotify Wrapped Campaign is one of Spotify’s largest marketing and social campaigns of the year. It enables our users to see a detailed breakdown of their listening habits over the past year. Since 2019 was the end of the decade, we wanted to do something special for our user … | Continue reading


@labs.spotify.com | 4 years ago

Spotify: The Winding Road to Better ML Infrastructure Through TFX and Kubeflow

When Spotify launched in 2008 in Sweden, and in 2011 in the United States, people were amazed that they could access almost the world's entire music catalog instantaneously. The experience felt like magic and as a result, music aficionados dug in and organized that content into m … | Continue reading


@labs.spotify.com | 4 years ago

Methods for identifying and dealing with flaky tests

On September 12, 2019 I spoke at Assert(JS) in Toronto to talk about my journey with test flakiness at Spotify and some of the systems we have built over the years to address flakiness. Assert(JS) is a conference dedicated entirely to automated testing for web systems and this wa … | Continue reading


@labs.spotify.com | 4 years ago

Test Flakiness – Methods for identifying and dealing with flaky tests

On September 12, 2019 I spoke at Assert(JS) in Toronto to talk about my journey with test flakiness at Spotify and some of the systems we have built over the years to address flakiness. Assert(JS) is a conference dedicated entirely to automated testing for web systems and this wa … | Continue reading


@labs.spotify.com | 4 years ago

Spotify’s Event Delivery – Life in the Cloud

Spotify is a data informed company and in such a company Event Delivery is a key component. Every event containing data about users, the actions they take, or operational logs from hundreds of systems is a valuable piece of information. Without a successful Event Delivery system, … | Continue reading


@labs.spotify.com | 4 years ago

Spotify halved build times with just one script

How do you cut iOS app build times by 50%? Patrick Balestra, an engineer at Spotify, explains how his team helped improve developer productivity and the end user experience. One of the great things about working at Spotify as an engineer, is the opportunity to improve the experie … | Continue reading


@labs.spotify.com | 4 years ago

Reflections on the Last Two Years of Spotify’s Bug Bounty Program

We recently surpassed the two year anniversary of our bug bounty program on the HackerOne platform. This gave us pause to take a look back at our successes and learnings in engaging with the security community to help improve security at Spotify.  What is a bug bounty program? Th … | Continue reading


@labs.spotify.com | 4 years ago

Spotify’s Event Delivery – The Road to the Cloud (Part I)

Whenever a user performs an action in the Spotify client—such as listening to a song or searching for an artist—a small piece of information, an event, is sent to our servers. Event delivery, the process of making sure that all events gets transported safely from clients all over … | Continue reading


@labs.spotify.com | 4 years ago

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 to a user action, such as playing a song, following an artist or clicking on an ad. All in all, more than 300 different types of … | Continue reading


@labs.spotify.com | 4 years ago

Painting a Picture of Your Infrastructure in Minutes

As a Security responder, it is important to have access to relevant information quickly in order to get a more complete picture of an ongoing or potential incident. Modern microservice architecture usually means that the number of services, and thus hosts and related assets, are … | Continue reading


@labs.spotify.com | 4 years ago

Scio 0.7: A Deep Dive

Introduction Large-scale data processing is a critical component of Spotify’s business model. It drives music recommendations, artist payouts based on stream counts, and insights about how users interact with Spotify. Every day we capture hundreds of terabytes of event data, in a … | Continue reading


@labs.spotify.com | 4 years ago

Spotify Engineering Culture

Here's part 1 of short animated video describing our engineering culture (here's part 2). This is a journey in progress, not a journey completed, and there's a lot of variation from squad to squad. So the stuff in the video isn't all true for all squads all the time, but it appea … | Continue reading


@labs.spotify.com | 4 years ago

(Right to Left (The Mirror World

Localization at Spotify is a big deal. Our mission is to “unlock the potential of human creativity—by giving a million creative artists the opportunity to live off their art and billions of fans the opportunity to enjoy and be inspired by it.” To achieve this mission, it’s import … | Continue reading


@labs.spotify.com | 5 years ago

An opinionated anthropology of the embedded programmer, its habits and habitat

Illustrations by Jonas Ekman Registers! Oscilloscopes! Beards! Serial Ports! C! Cycle shaving! Beards! Interrupts! Assembly! Did I mention beards? If I were to say the words “embedded programmer” most people in our industry would immediately conjure up an image of a heroic charac … | Continue reading


@labs.spotify.com | 5 years ago

Whacking a Million Moles: Automated Incident Response Infrastructure in GCP

Incident responders want to have as much information as possible to ease the investigation and triage process. Additionally, intrusion detection engineers want to know about forensic artifacts and map server baselines (running processes, storage artifacts on disk) on a large flee … | Continue reading


@labs.spotify.com | 5 years ago

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 and how the lessons learned influenced the experience and the tech decisions of the new web player for… | Continue reading


@labs.spotify.com | 5 years ago

Introducing Chartify: Easier Chart Creation in Python

Why we built a new open source Python data visualization library. Have you ever been frustrated with the complicated experience of making charts in Python? We have, so we created Chartify, an open-source Python library that wraps Bokeh to make it easier for data scientists to cre … | Continue reading


@labs.spotify.com | 5 years ago

Spotify – 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. Background BBR is a TCP congestion control algorithm developed by Google. It aims to make Internet data transfers faster, which is no … | Continue reading


@labs.spotify.com | 5 years ago

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. Our batch pipeline environment is equally complex and diverse; we run thousands of jobs … | Continue reading


@labs.spotify.com | 5 years ago

Introducing cstar: The Spotify Cassandra orchestration tool, now open source

Today, we announce that we are open sourcing cstar, our Cassandra orchestration tool. Operating Cassandra is not always an easy task. It has a myriad of knobs you can tune that affect performance, security, data consistency etc. Very often you need to run a specific set of shell … | Continue reading


@labs.spotify.com | 5 years ago

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. Background BBR is a TCP congestion control algorithm developed by Google. It aims to make Internet data transfers faster, which is no … | Continue reading


@labs.spotify.com | 5 years ago

Spotify Labs: Managing Time Bound IAM Conditions in Google Cloud Platform

We're excited to release Gimme to the world. Gimme presents its users with a simple web interface that allows anyone with access to it to create time bound IAM conditions in Google Cloud Platform. The Cloud IAM Conditions framework is a new feature of Google Cloud Platform announ … | Continue reading


@labs.spotify.com | 5 years ago

Introducing Coördinator: Inject some whimsy into data visualizations

Coördinator is an open source browser interface to help you turn an SVG into XY coordinates. That means you can now take any SVG file, turn it into dots, and use those dots in a data visualization. | Continue reading


@labs.spotify.com | 5 years ago

Spotify engineering culture (2014)

Here's part 1 of short animated video describing our engineering culture (here's part 2). This is a journey in progress, not a journey completed, and there's a lot of variation from squad to squad. So the stuff in the video isn't all true for all squads all the time, but it appea … | Continue reading


@labs.spotify.com | 5 years ago