Software Engineer at SoundCloud
Duana Stanley has been building both public and internal APIs for the last 4 years. At SoundCloud she has built microservices in Ruby, Node.js and Scala. She is now learning Android so she can make changes to the SoundCloud Android App as required by her feature team. She enjoys coaching at RailsGirls and OpenTechSchool events in Berlin, and having been away from Australia for a while, she misses Big M chocolate milk!
YOW! Connected 2015 Melbourne
Microservices is our BFF: Why SoundCloud stopped using its own Public API for its Mobile Clients
In the beginning, SoundCloud mobile and web clients both used our public API, which allowed us to “be our own customers” when driving our public API development. As our mobile and web clients evolved, public API development became a bottleneck for feature development, because mobile and web clients have different needs. To unblock ourselves, we introduced BFF (Backend-for-the-Frontend!), a framework to build custom, usecase-oriented APIs which allowed our mobile engineers to develop and maintain their own API (in Scala!). BFF’s goal is to make writing robust, scalable APIs easy. This talk describes the wins and learnings in moving to this architecture and how it enabled us to transition to feature teams at SoundCloud.