• Providers of open access to the broadest catalogue of fully licensed, high quality digital music • Over 22 million legal, high quality tracks • Open to consumers, partners and developers Who are 7digital?
• Started as a side project providing access to our catalogue • Features driven by client demand • A single monolithic API application • Written in C# .Net WebForms • Lots of shared libraries with other applications • Single team working on the API Where we came from
• Move code from main API codebase to new internal APIs. • Rewrite where possible • External consumers did not see any change in behaviour • Slow evolution, not a big rewrite. Making the change
• Smaller, focused teams • Assigned Product Managers for each product and team • Reduced size of work items • Introduced Kanban • Change technology stack behind the public facing API Changing how we work
• Shared libraries gradually being replaced by internal APIs • A skeleton of the monolith remains as the public façade for routing requests • Able to deploy each API individually • Each API can employ specific caching and scaling strategies • Independent and multiple technology stacks – Windows & Linux • More chaos. Where we are now
• Increase testability. • Small projects with little code are easier to build and maintain. • Invested in time and tools to automate build and deployment. • We now have single click deployment. • We average 50 production releases in a week • Changes can be tested and deployed in under an hour • Metrics. Measure things. We use NewRelic and Statsd Limit the impact of chaos
We build our own applications using the API • 7digital.com, built by internal teams • Mobile apps built by 3rd parties working for us • Dev teams focus on building the platform Dogfooding
• Language and platform agnostic • Gave us more breadth and exposure across the market. • Open protocols, HTTP, OAuth 1.0 (yes we hate it too) • https://github.com/7digital Open Platform, Open Source
Interested in working with us ? - or learning more ? Come talk to us Sign up for a free public API Key - http://developer.7digital.net/ We are hiring - http://about.7digital.com/jobs/ @ChrisAnnODell @Hibri