Ukxyg4jqj46fxbf9v1dn
SkillsCast

Breaking Spotify’s release cycle by using the backend to drive the UI and feature releases

27th October 2016 in London at Business Design Centre

There are 75 other SkillsCasts available from droidcon London 2016

Please log in to watch this conference skillscast.

600623128 640

If you’ve ever glanced at Spotify’s release notes, you’ll find them quite underwhelming. No announcements of super awesome features, some random ramblings that may or may not be true. Of course, the team is always rolling out new features and their UI changes from day to day. And, it’s all personalised - the UI presents what’s relevant to you and some of you might even be lucky enough to receive new features before Spotify rolls it out to everyone.

Spotify uses two major backend components to control this. First, we have a web-based ab testing system that they can use to rollout features to random subsets of users, grouped by region, as well as targeting different platforms (Android, iOS, Desktop). A developer simply adds a flag to the system, and then can use the flag in the code to exclude or include different code paths. Second, we have a sophisticated UI content framework that accepts JSON data to render certain pages throughout the app with the latest and most relevant data for that user. The framework not only controls content, but can shape the layout of the page. Multiple backends can provide the content and the clients interpret the data and render it in a consistent way natively.

YOU MAY ALSO LIKE:

Breaking Spotify’s release cycle by using the backend to drive the UI and feature releases

Chris Doyle

Chris is an Android Engineer working on the radio product for Spotify. He is based out of the NYC office and is originally from Australia.