Things I learned from Spotify

At Mobile@Scale 2016

Bohdan Orlov

Badoo

Backend driven UIs

  • Fast UI changes
  • Fast releases
  • Painless A/B tests

Delivery time = Development time + Release time

Building a feature

 

 

 

1. Design

2. Backend

3. ?????????

4. PROFIT!!!

Building a feature

1. Design

2. Backend

3. Create View Controller

4. Setup container view

5. Implement datasource/delegate

6. Handle offline mode

7. Backend request

8. Parse response

9. Handle errors or timeouts

10. Cache

11. PROFIT!!!

Building a feature

1. Design

2. Backend

3. Define data sources

4. Register data sources

5. PROFIT!!!

Composable components

Converting into Components

MVVM

Composable layout

Layout traits

Client becomes

live Renderer

Fun facts

  • Dropped 100k lines of code
  • URI based navigation
  • Initial setup took months

Designers - Happy

PMs - Happy
Developers - Happy*

*they must be hidding something...

Made with Slides.com