Published on July 29th, 2015 | by Paul Morris0
Agile Engineering Culture from Spotify
Part 1: Agile Engineering Culture from Spotify
I love the 13 minute Spotify video on their engineering culture; the fundamentals of which are based on agile principles
All engineering at Spotify happens in Squads that are loosely coupled and tightly aligned. I particularly like the drawing above which essentially boils down to = The leaders job is to communicate what problem needs to be solved. And Why. The Squads job is to collaborate with each other to find the best solution.
It is clear that Spotify like cross pollination and also have an internal open source code model.
The Squads (that are ultimately grouped into Tribes due to the size of the tasks at hand and also have loosely based Guilds overlaid that group people into similar interest ‘categories’) do small and frequent releases (as they found big releases led to massive Drama, was really hard to do and led to seldom releases) that were enabled by decoupling functions / elements
…This decoupling was made possible by Spotify’s self service Release Train model that focused on “enable > serve” rather than hand offs and over reliance on other Squads.
Motivation, Community and Trust are key people optimisation mantras along with minimising fear of failure (and in many cases celebrating it) and Politics.
Part 2: Spotify’s lessons in failure
Part 2 focuses on lessons in failure with their CEO mantra being “we aim to make mistakes faster than anyone else”.
Fail fast > Learn Fast > Improve Fast = Strategy for long term (awesome) success
Related mantras outside the Spotify video:
Fail quickly, release early, test often
If you can (not always possible!) break free of big bang release cycles and release fast and often
Have a small (as possible) code base that is decoupled and can be lifted and dropped anywhere
Work to Alpha & Beta release cycles (with mini releases in between) to minimise risk and maximise test and learn. This needs to be of a real product, not designs, clickable prototypes or even static HTML
Squads. Tribe. Chapter Summary…