00: Introducing NerdOut@Spotify

A tech podcast produced by the nerds at Spotify, made for the nerds inside all of us. We’ll try to find the answer to questions big and small, like: Is it harder or easier to be a developer today? Is TypeScript lovable? Should you run your home automation on a Kubernetes cluster? Subscribe to find out.

01: What is Backstage?

Spotify has thousands of developers managing tens of thousands of software components. How do you even begin to manage all that complexity? If you’re Spotify, you build your very own developer portal — we call it Backstage. Wait, what’s a developer portal? Good question!

02: Open Issues

Backstage, Spotify’s homegrown developer portal, has become the most ambitious open source project in the company’s history. But for many on the team, it was the first open source project they’d ever launched. What were the technical decisions they considered/reconsidered/forgot to consider before releasing it into the wild? And what did they learn along the way?

03: Community Builders

Open source has become an essential part of software development, for both individuals and companies. Hear from Spotify engineers about what it’s like to build products in the open, what they’ve learned from developing Backstage with hundreds of friendly, helpful Internet strangers, and how participating in a community helps you grow as an individual, too.

04: Backstage in the Wild

Spotify believes open source is one way big tech companies and the wider developer community can solve big tech problems together. So how’s that going? In this episode, you’ll hear from our friends at Netflix and American Airlines — both early adopters of Backstage, our open platform for building developer portals. 

05: Advent of Code

What do coders do when they’re not coding for work? Sometimes they code for fun. (And sometimes they code for fun at work.) Hear why every December some of Spotify’s engineers become obsessed with the coding puzzles on Advent of Code, a website created in 2015 by an engineer named Eric Wastl.

06: Bits of Math at Scale

Our Audio Intelligence Lab built the world’s beefiest effects pedal using machine learning and Python. Say hello to Pedalboard, an open source framework for adding studio-quality effects to audio files — at a speed and scale well beyond the capabilities of the tools you’d normally find in a music studio.

07: Kelsey Hightower on Engineering Culture

The one and only Kelsey Hightower drops by the recording studios at Spotify’s global HQ in Stockholm to chat with host Dave Zolotusky about what it’s like being a software developer today: did it get harder or easier?

07: *Bonus!* Kelsey on How to Give a Great Talk

In this special bonus episode, Google’s Kelsey Hightower is back to tell us what separates a good talk from a great one, the importance of storytelling, and the pitfalls of relying too much on your demo.

08: Humans in the Loop

Get ready: we’re diving into machine learning. Hear how we’re improving personalization with reinforcement learning (RL), what makes ML engineering so different from other kinds of software engineering, and why machine learning at Spotify is really about humans on one side of an algorithm trying to better understand the humans on the other side of it.

09: It’s All About the Data

In technology, as in life, bad experiences often start with bad data. This is as true with a misguided aunt setting you up on a blind date as it is with machine learning recommendations about which podcast you might want to listen to next. High quality data is essential to making sure every Spotify listener has a rewarding experience made just for them. But with a half trillion events happening on the platform every day, how do you even begin to sort all that data out?

10: Basic Pitch

What if you could create a guitar solo just by humming it? That’s Basic Pitch, a new open source project from Spotify’s Audio Intelligence Lab. Basic Pitch is a neural network that can analyze the recording of almost any instrument (including your voice) and then transcribe the notes that it detects into MIDI, the standard file format used for musical notation. It’s like speech-to-text, except it’s turning musical performances — whatever you hum, strum, pluck, peck, or tinkle — into a digital score you can edit on your computer.

11: Open Source Work Is Work

If you look at any of our open source projects, you’re bound to see the phrase “Made with 💚 at Spotify.” That’s because many open source projects start off as passion projects. But is passion enough? Now that open source code is so essential to how we all build, it’s important for us to treat that code more seriously. To be sustainable, open source can’t rely on passion alone. It needs a little tough love, too. For that, we got an OSPO — an open source program office — to help our developers (and Spotify) get the most out of their open source experience.

12: Fleet First

Instead of performing 10 big software upgrades to our infrastructure every year, what if we did 10,000 small ones, in all our repos, all at once? That’s the idea behind Fleet Management: using automation to take away some of the everyday toil of being a developer, freeing our teams to focus on more interesting problems than migrating to the next version of a low-level software dependency. But for automation at this scale to succeed, our developers would have to be willing to give up some control over their codebases. Could we really get our squad-based culture to adopt a fleet-first mindset?

13: Advent of Code Live!

Recorded live at midnight EST, December 6, 2022, from Boston, Gothenburg, and Stockholm, via the Spotify Live app. In this special Advent of Code episode, we try to solve the Day 6 puzzle the moment it’s released. Host Dave Zolotusky and Spotify’s chief architect, Niklas Gustavsson (aka, ngn), play against Spotify’s reigning champ, the one and only, unstoppable Jimmy Mårdell. Entering today’s challenge behind ngn in the standings, will Jimmy reclaim his rightful place atop the Spotify leaderboard? Play along with us and find out!

14: For Love and Money?

From Norway to Nebraska, there are individual developers keeping the open source projects that we all depend on going. Last year, Spotify started an annual fund to help support maintainers of free and open source software (FOSS) — the Spotify FOSS Fund. We earmarked 100,000 Euros and then gave it away to nine projects, no strings attached. One of those recipients was Byte Buddy, a project with millions of users, but just one volunteer maintainer — its creator, Rafael Winterhalter. Hear what it takes to sustain something that started as a passion project in 2014 and then grew to become much more.

15: Your Very Own Developer Advocate

There are thousands of developers building great Spotify experiences — who don’t actually work at Spotify. From smart speakers to game consoles to car infotainment systems, how do we support this diverse, creative community building on top of the Spotify platform? Along with providing APIs, SDKs, and other developer tools, it starts with something even more fundamental: listening to and understanding their needs. That’s where our developer advocates come in.

16: Backstage Adopters Speak

Whether you’re working at a major financial institution or an audio streaming platform, it turns out engineering teams face a lot of the same challenges to doing their jobs effectively. In this episode, you’ll hear Spotify’s head of technology and platforms, Tyson Singer, discuss developer experience with engineering leaders from Expedia Group, Bank of the West, consulting firm Booz Allen Hamilton, and digital telecom TELUS — all adopters of Backstage, our open platform for building developer portals. This panel discussion took place on December 15, 2022 at the launch event for Spotify Plugins for Backstage, our new developer software bundle.

17: Building Apps at Spotify Scale

What happens when the standard tooling for iOS and Android just doesn’t cut it anymore? What’s it like to maintain an app when there are literally thousands of commits every week? How do you develop your feature without worrying about everybody else’s feature, when at the end of the day, you’re shipping a single, massive app? In other words, what’s it really like to build apps at Spotify’s scale?

18: Meet Your Personal AI DJ

How do you make an AI-generated voice feel more like a real person? You give it a real personality. Spotify recently released a new feature in the US and Canada called DJ. Turn it on, and you hear a curated selection of music and recommendations, along with a fun, friendly, knowledgeable voice telling you more about what you’re listening to (you know, like a real DJ) — except everything you hear is personalized just for you. Learn what makes this DJ feel so realistic and meet the people behind the technology — including the DJ himself.

19: Engineering for Accessibility

We’re often focused on features that improve the experience for users — letting them do something better, faster, smarter. But if you don’t consider accessibility issues, many users won’t be able to use the feature at all. From color contrast and text size to alt text for enabling screen readers and voice commands, accessibility issues can affect everyone, whether you have a permanent disability or just an armful of groceries. So how do you get developers and designers to adopt an accessibility mindset and make it a fundamental part of the development process?

20: The Rise and Fall of ABBA

Back in the day, Spotify built a custom A/B testing tool called ABBA. It was great. The platform enabled lots of teams to try out lots of ideas for new features to see what worked and what didn’t. With ABBA, we went from doing tens of experiments to hundreds of experiments. But we didn’t just learn what color button users liked better: the more tests we ran, the more we learned about our testing methods, including the limitations of ABBA itself — which eventually led us to a new, better way to test. Here’s the story of ABBA, our very first experimentation platform, and the lessons we learned about doing product experimentation at scale.

21: The Man Who Killed ABBA

Last episode, we talked about ABBA, our first A/B testing tool. We used it to test UI changes, new features, content recommendations — anything and everything we could think of. ABBA was so good and worked so well for so long…that we decided to get rid of it. Years of using ABBA taught us what makes for good experimentation, and we eventually realized we needed a better tool, built from scratch. Listen to find out why we pulled the plug on ABBA and how Spotify’s Experimentation Platform was born. And in case you missed it, a version of our internal platform will be available to the public as Confidence, a new enterprise product for developer teams — read today’s announcement: “Coming Soon: Confidence — An Experimentation Platform from Spotify”.

22: Declarative Infra and Beyond

In the very old days, if you needed more storage for your database, you had to walk into the data center and install another server. Now you can just log into your cloud provider’s console and click a few buttons. Voilá, more storage. So easy! But what if you’re replicating that storage configuration for hundreds of databases at once? Suddenly, that’s a lot more clicking. Not so easy! (Plus, very tedious and very error prone.) So instead of living with this “ClickOps” approach, we developed a declarative infrastructure model — our very own “infrastructure as code” solution for managing cloud resources at Spotify scale. Instead of manually configuring each resource, developers just describe the state they want. And once we adopted declarative infra, we unlocked ways to improve not just how we manage resources, but also how we update policies, manage dependencies, and make other changes to code across our entire fleet of repos — quickly, safely, easily. In other words, programmatically.

23: Searching for Neighbors with Voyager

How do you get a machine to find a song that’s similar to another song? What properties of the song should it look for? And then does it just compare each track to every other track, one by one, until it finds the closest match? When you have a catalog of 100 million different music tracks, like we do at Spotify, that would take a long time. So, for these kinds of problems, we use a technique known as nearest neighbor search (NNS). This past summer at Spotify, we built a new library for nearest neighbor search: It’s called Voyager — and we open sourced it.

24: Tesla *Release Notes*

Over the summer, Spotify helped Tesla engineers ship a major update to their built-in media player. In this Release Notes episode, host Dave Zolotusky talks with Spotify engineering manager Geetika Arora and senior product designer JC Chhim about collaborating with Tesla to improve the in-car listening experience, the value of having a familiar user experience across devices, and how there’s more to a great collaboration than just picking the right SDK for the job.

25: Voice Translation *Release Notes*

We’ve seen generative AI and large language models do some amazing things in the past year — but how do you go from a tech demo to a real shipping product? In this Release Notes episode of the NerdOut@Spotify podcast, we’ll hear about what it took to ship our Voice Translation pilot, which takes podcasts recorded in English and uses AI to generate the original podcaster’s voice speaking in Spanish (with German and French coming next). 

26: A Trillion Events

How did we learn to do event delivery at scale at Spotify? It’s been a journey. When you do something like tap the play button in the Spotify app, that’s an event. And getting that event data is fundamental to the Spotify experience. Without it, we wouldn’t be able to make music recommendations, pay artists fairly, or track down pesky, hard-to-find bugs. At the most basic level, this seems like a straightforward process: record an event, send that event data to a server somewhere, do something useful with it. Easy, right? But now, multiply that process by 50 million events per second. So, how do we make sure all that important data is delivered reliably, from our client apps to the cloud?