GOTO Berlin is a vendor independent international software development conference with more that 60 top speaker and 400 attendees. The conference cover topics such as Java, Open Source, Agile, Architecture, Design, Web, Cloud, New Languages and Processes.

Phil Calcado, Soundcloud

Phil Calcado

Biography: Phil Calcado

Phil Calçado is a renowned speaker on a range of topics including TDD, Clojure and lessons learned working with startups.

On top of being experienced in development in many different languages and platforms such as Java – including Clojure, Scala and other JVM languages–, .Net and Ruby, Phil also an Agile coach and practitioner.

Having worked on projects including the Guardian’s Soulmates site, and Lonely Planet, Phil is now Director of Engineering at Soundcloud where he has been since leaving Thoughtworks in 2011.

Twitter: @pcalcado
Blog: philcalcado.com

Presentation: APIs: The Problems with Eating your Own Dog food

Track: Modern Web Architecture / Time: Thursday 13:20 - 14:10 / Location: Estrelsaal C5/6

SoundCloud's web and mobile properties are all built on top of our Public API. While building the user-interface atop a RESTful layer has proven itself a sound decision, the one-size-fits-all nature of a Public API is not ideal.

When it comes to data transfer and HTTP resource modelling, each client has their own needs, and in the end hacks and workarounds have to be implemented in both clients and servers. Feature development also becomes complicated, with coordination between multiple teams required for every single little feature.

SoundCloud is now moving to a different model, where clients have their own façade APIs, modelled after their core characteristics and needs. We are also using the architecture to break away from Conway’s Law and building more cross-functional, end-to-end teams.

To implement this, a lot of change in our architecture, tech stack and development processes were required. In this talk we will explore the challenges we had, the options we investigated and how ultimately SoundCloud decided to move forward.