All blogs / Software / engineering practice
SoundCloud Backstage Blog
developers.soundcloud.com/blog
SoundCloud's developer blog.
Software / engineering practiceMobile / iOS / AndroidDistributed systems / cloudEngineering blogs
- Posts
- 205 from 26 Aug 2010 to 11 Aug 2026
- Posting
- now and then (4 in the last year)
- Kind
- company blog
- Feed
- https://developers.soundcloud.com/blog/blog.rss
2026 4
2025 3
2024 2
2023 3
2022 11
- What's New with SoundCloud, November 2022
- Bar Raiser Interview
- What's New with SoundCloud, October 2022
- Android Image Loading at SoundCloud
- SoundCloud Echo: Next-Level Humane Registry with Backstage
- WINE Workshop
- PR Templates for Effective Pull Requests
- Learning Scala at SoundCloud
- The End of the Public API Strangler
- What Is New with Periskop in 2022
- Obvious Ownership: A Sensible Humane Registry
2021 14
- Tiny Letter from Kafka
- Service Architecture at SoundCloud — Part 3: Domain Gateways
- Service Architecture at SoundCloud — Part 2: Value-Added Services
- Service Architecture at SoundCloud — Part 1: Backends for Frontends
- How We Share Knowledge as a Web Collective
- Upcoming API Security Updates — Action Required
- Did I Break You? Reverse Dependency Verification
- High-Tier Content in the SoundCloud API
- The Journey of Corpus
- How to Successfully Hand Over Systems
- SoundCloud’s New API Track Object
- Building a Healthy On-Call Culture
- Dependency Inversion as a Driver to Scale Mobile Development
- Tests Under the Magnifying Lens
2020 17
- Leveraging a Manager Weekly Newsletter for Team Communication
- Testing SQL for BigQuery
- Pagination Updates on Our API
- Breaking Loose from Third-Party Lock-In with Custom Refactoring Tools
- DeveloperBridge: SoundCloud’s Program for Training People from Diverse Backgrounds to Become Engineers
- Changing the Interview Process during Remote Working
- Technical Interview Reform, Part 2: The Recruiting Perspective and Results
- Technical Interview Reform, Part 1: Rethinking the Backend Engineering Interview Take-Home Challenge
- Announcing Twinagle: Twirp and Protobuf for Finagle
- Stretch Opportunities for Engineers
- Open Sourcing Intervene
- Periskop: Exception Monitoring Service
- How (Not) to Build Datasets and Consume Data at Your Company
- The Magic of Generating an Xcode Project
- A Happy New Employee
- Speeding Up Builds with Dagger Reflect
- The Power of Types for Errors
2019 12
- Implementing Dark Mode Using the Observer Pattern
- Solving Remote Build Cache Misses by Annoying Your Colleagues
- Gradle Remote Build Cache Misses
- SoundCloud Is Playing the Oboe
- Alerting on SLOs like Pros
- Playback on Web at SoundCloud
- Taking Our Bug Bounty Program Public
- Release Quality and Mobile Trains
- How to Reindex One Billion Documents in One Hour at SoundCloud
- Off-Platform Validation
- Radical Candor: An Experience Report
- Garbage Collection in Redux Applications
2018 16
- A Pragmatic Approach to Tech Debt Reduction
- Integration Testing for Memory Leaks
- How We Develop New Features Using Offsites and Clean Architecture
- Using Kubernetes Pod Metadata to Improve Zipkin Traces
- Hands-Off Deployment with Canary
- Creating Readable Spark Jobs
- Getting a Team Back on Track
- Defining a Role with a Retrospective Activity
- Project Necromancy
- Engineering Levels at SoundCloud
- Keeping Counts In Sync
- Running Android UI Test Suites on Firebase Test Lab
- Managing Unplanned and Support Tasks
- Automatic Stubbing of Network Requests to Deflakify Automation Testing
- PageRank in Spark
- Insights from SoundCloud’s DeveloperBridge Trainee Program
2017 7
- How SoundCloud Uses HAProxy with Kubernetes for User-Facing Traffic
- Leveraging frameworks to speed up our development on iOS - Part 1
- SoundCloud's Data Science Process
- Deliver software faster by managing work in progress, not by adding overtime
- Inside a SoundCloud Microservice
- Remote device sign-in
- A Better Model of Data Ownership
2016 12
- Lessons in resilience at SoundCloud
- API Sign-up Changes
- Microservices and the monolith
- React Native at SoundCloud
- Removal of Groups endpoints
- Synchronous communication for microservices: current status and learnings
- Prometheus has come of age – a reflection on the development of an open-source project
- Building radio stations at SoundCloud
- Can a machine surprise you? We believe so.
- Data pipelines with Apache Crunch and Java 8
- Playlist search returns only compact representations as of July 15, 2016
- Open-sourcing LightCycle for Android
2015 8
- Congratulations, you have a lot of code!"Congratulations, you have a lot of code!" Remedying Android’s method limit - Part 2
- Introducing SoundCloud JavaScript SDK 3.0.0
- Congratulations, you have a lot of code!"Congratulations, you have a lot of code!" Remedying Android’s method limit - Part 1
- Introducing Rate Limits
- New playlist representations
- Apple's June 1 64-bit deadline
- Linked partitioning to replace offset-based pagination
- Prometheus: Monitoring at SoundCloud
2014 15
- SoundCloud in Scalding case study by Concurrent Inc.
- XML responses deprecated
- Building the new SoundCloud iOS application — Part II: Waveform rendering
- Building the new SoundCloud iOS application — Part I: The reactive paradigm
- Real-Time Counts with Stitch
- Building Products at SoundCloud—Part III: Microservices in Scala and Finagle
- Building Products at SoundCloud—Part II: Breaking the Monolith
- Building Products at SoundCloud —Part I: Dealing with the Monolith
- Roshi: a CRDT system for timestamped events
- Introducing JavaScript SDK version 2
- Irrational Fun: Find Yourself at Berlin Buzzwords
- Security update: Heartbleed vulnerability in OpenSSL
- Welcome to SoundCloud's redesigned developer site
- Sponsoring CocoaPods
- Smooth image loading by upscaling
2013 10
- Hassle-free concurrency in Android using RxJava
- Say hello to Sketchy the spam fighter
- Building Clojure Services at Scale
- Writing your own Karma adapter
- Responsive Android applications with sane code
- Win a trip to the Barcelona Ruby Conference
- Music Hack Day Coming to Toronto!
- Berlin Geekettes All-Women Hackathon Roundup
- Removing 'hotness' parameterhotness
- SoundCloud at PennApps
2012 30
- Architecture behind our new Search and Explore experience
- Coding for GOOD - SoundCloud API
- Story Hack Boston Recap
- The Next App Gallery Update
- How to Make a SoundCloud Powered Children's Toy
- Evolution of SoundCloud’s Architecture
- Shoot yourself in the foot with iptables and kmod auto-loading
- Introducing the CloudSeeder Devkit
- Go at SoundCloud
- Recording and Sharing Phone Calls
- SocialFolders Releases SoundCloud Ruby Gem
- Music Hack Day Barcelona 2012
- Waveforms, Let's Talk About Them
- OceaniaSmashing Pumpkins use Premiere 1.5 BETA to debut "Oceania"
- Building The Next SoundCloud
- SoundCloud at HackTO
- Create rich media experiences using timed comments
- Desktop Sharing Kits for OS X and Windows
- Wave Raid powered by Timed Comments
- Developer Contest: SoundCloud + Acapela Group Mashup
- HTML5 Widget API
- Hacker Time – the first 3 months
- Stratus 2 BETA
- Moving API Support to Stack Overflow
- Announcing new Python SDK
- How we do… Retrospectives
- SoundCloud at Music Hack Day SF
- Tenacious D's Fenix rizes with SoundCloud
- oEmbed support for the new HTML5 widget
- Music Hack Day London 2011
2011 36
- Stop! Hacker Time.
- Front-end JavaScript bug tracking
- SoundCloud Strategy for OmniAuth 1.0
- Connect & Record with the new JavaScript SDK
- Competition App - Host a contest, powered by SoundCloud
- Music Hack Day Boston 2011
- SoundCloud launches the HTML5 Audio Improvement Initiative
- Velocity Europe Birds of a Feather Meetup
- Introducing the iOS Sharing Kit
- SoundCloud Signs Apache Corporate Contributor License Agreement
- Mobile: Unit Testing
- Introducing the Android Sharing Kit
- Hack Your Way to Berlin
- SoundCloud Hits the Road
- Doing the right thing
- SoundCloud mobile – Proxies
- Building the SoundCloud mobile site using backbone.js
- Velocity Conference 2011 – Europe
- Sharing to Facebook, Twitter etc
- Promoting your app in the SoundCloud App Gallery
- New Activities
- New Sharing Interface
- MySQL for Statistics – Old Faithful
- Hack Ideas
- Java API Wrapper
- Post Mortem on API Outage May 5th 2011
- Experiment 02: Destroying SoundCloud & Instagram
- Introducing the Large Hadron Migrator
- Marbleo.us
- Web Scale Statistics – Failing with MongoDB
- Custom Players
- Stream and Download
- Sharing Sounds
- Hello developers!
- We ♥ OAuth 2
- iOS Sharing Guide