Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Agile at Spotify


Published on

Talk by Joakim Sundén and Anders Ivarsson about agile and scaling agile at Spotify. These particular slides are from a Kanban Open Space event in Ghent, Belgium, February 2013.

Published in: Technology

Agile at Spotify

  1. 1. Agile at Spotify 1
  2. 2. What is Spotify? The right music for every moment 2Spotify is a new way to listen to music. Millions of tracks, any time you like. Just search for itin Spotify, then play it. Just help yourself to whatever you want, whenever you want it.Launched October 28 2008.With Spotify, it’s easy to find the right music for every moment – on your phone, yourcomputer, your tablet and more.There are millions of tracks on Spotify. So whether you’re working out, partying or relaxing,the right music is always at your fingertips. Choose what you want to listen to, or let Spotifysurprise you.You can also browse through the music collections of friends, artists and celebrities, orcreate a radio station and just sit back.Soundtrack your life with Spotify. Subscribe or listen for free.
  3. 3. Spotify: Fast Facts • Over 5 million paying subscribers • Over 20 million active users • Over 300 000 labels signed • Over 20 million songs • Over 20 000 songs added daily • Available in 17 countries 3Spotify is available in: 17 countries - USA, UK, Sweden, Finland, Norway, Denmark, Germany,France, Spain, Austria, Belgium, Switzerland, The Netherlands, Australia and New Zealand,Ireland and Luxembourg. And today we’re adding three more, totaling a whopping 20countries: Italy, Poland, Portugal.Subs: 3M June 2012, 5M Jan 2013
  4. 4. Development offices 4Three (four) development offices, ~300 engineers, >30 teams.SF:
  5. 5. Growing fast 5Tech in Jan 2011 – 60 persons, Jan 2013 - ~300 - 5x growth in 2 years, 10x in 3 yearsFrom 150 to >700 in 18 months.Why? We grow to offer better products and solutions, to more users, in more markets, faster.
  6. 6. Development speed that scales 6* We need to improve our product at great speed, much faster than any competitor* We need to prepare to scale, meaning that we must continue to move at a high speed while growingemployees, users and devices* We must continuously improve how we work and we must accelerate the rate at which we improve
  7. 7. Autonomy, Mastery, Purpose <ADD PICTURE?> •“For creative tasks, the best approach is often just to hire great people and get out of their way.” Hire great people and get out of their way. 7Drawing on four decades of scientific research on human motivationasserts that the secret to high performance and satisfaction is the deeply human need todirect our own lives, to learn and create new things, and to do better by ourselves and ourworld
  8. 8. High-performance teams 8High-performance teams (HPTs) is a concept within organisation development referring to teams,organizations, or virtual groups that are highly focused on their goals and that achieve superiorbusiness results. High-performance teams outperform all other similar teams and they outperformexpectations given their composition.
  9. 9. AGENDA 12th FebAutonomyMasteryPurposeScalingChallenges 9
  10. 10. ALL CHARACTERS AND EVENTS IN THIS TALK-–EVEN THOSE BASED ON REAL PEOPLE–-ARE ENTIRELY FICTIONAL. ALL CELEBRITY VOICES ARE IMPERSONATED.....POORLY. THE FOLLOWING PRESENTATION CONTAINS COARSE LANGUAGE AND DUE TO ITS CONTENT IT SHOULD NOT BE VIEWED BY ANYONE. 10Everything we talk about in this presentation is a model and a slight simplification of reality. Thecompany is changing very fast and experiments are always on-going. This means that others in thecompany would probably describe some things differently, and some would only recognize parts ofthis. But in general, this is the way it looks and works in Spotify – right now, in some places.Continuously improving the way we work - whole company understands we are always changing
  11. 11. Autonomy 11Controlling management approaches assume people are passive and inert and requireprodding.  Autonomy approaches assume people are active, looking for interesting work andcurious and self-engaging.  Autonomous motivation has proven to promote greaterconceptual understanding, result in better grades, enhance persistence at school and insporting activities, generate higher productivity, less burnout, and greater levels ofpsychological well-being.
  12. 12. Autonomous squad • “Feel like a mini-startup” • Self-organizing • Cross-functional • 5-7 engineers, less than 10 12It should feel like working in a mini-start-up where Spotify is more of an incubator for start-ups.“The most important feature of the organization is the autonomous squad. All otherfeatures are designed to support that mini-startup-like squad.”
  13. 13. Pics of squad rooms 13Co-located. Squad room. Open yet closed off. Optimize for collaboration.
  14. 14. 14Lounge connected to every squad room, no need to book meeting rooms. Stand-ups,whiteboard sessions, …Quiet room, small meetings.War rooms.
  15. 15. 15Fika zones, fika as “meeting”format.
  16. 16. Autonomous squad surveys 16Definition of what we mean with ”autonomous squad”. We also measure, to see where asquad might need support.
  17. 17. Clear mission 17The squad has a defined mission to fulfillSquad works on mission for long time (not just finish first product, then change mission) –allowing members to become domain-expertsThe majority of the stories on the squad backlog are related to the missionEveryone in the squad understands the missionThere is passion and dedication for the mission
  18. 18. Example squads 18SearchRadioContentPayments
  19. 19. Dedicated PO 19Has enough time for the squad and is considered part of the squadManages and prioritizes a squad backlog together with the squad that everyone in the squadhas easy access toCan motivate stories and prioritiesClearly communicates the goal of a story, and the vision for the sprintTakes tech aspects in considerationMakes sure that stories are prepared enough before sprint planningCan make decisions during the sprint without waiting for feedback from senior product staff
  20. 20. Process that fits 20Each squad owns their own process – adapt it to their circumstances and context. Kanbanand continuous flow, Scrum by the book – 1-3 week sprintsThe squad is familiar with the Spotify development process and follows the common rules orcan motivates why they dontThe squad have agreed within the group on how to workThe squad regularly retrospects and do things to improve
  21. 21. Easy to get stuff live 21Everyone needed to complete and release a story is in the squad- Both in terms of owning the decision, and having technical capacity to do itA squad can independently decide on when to go live with a release, a minimum of syncingwith other squads should be neededMost squads try to go live with something every sprint, or more often. Some squads launchthings several times each week.
  22. 22. Influence work 22Before every sprint all squad members can influence what is to be planned (both productfeatures and tech stories)During the sprint the squad makes decisions regarding stories together with the productowner. No micro management.Tech debt, maintainability & scalability stories are part of thesquad backlog.Part of the sprint backlog should always be tech improvements.The squadcan refuse to start development if there isn’t sufficient information about what to do.Thesquad members decide how to carry out their work and who is working on what.Every sprintcontains 0.5 hack days per week.Every system owner has 1 system owner day/three weeksprint
  23. 23. Hack days 23Use 10% of your time for side-projects – sometimes synchronize hack days or hack weeksfor squad or org
  24. 24. 24
  25. 25. Organizational support 25Tribe lead or similar is available and aware of the squads workThe squad knows who to turnto for guidance or problem solving supportSupport is available for architectural / technicaldiscussions as well as for "soft" issues
  26. 26. Agile coach 26Support autonomy in the organizationHelps squads identify impediments and learning opportunities, coaches squad tocontinuously improve working methods and process
  27. 27. Are we there yet? 27Run survey with multiple squads – goal is to do it every quarter.Patterns – e.g. Agile coach needed, need to improve releasability (technical,organizational, ...)
  28. 28. AGENDA 12th FebAutonomyMasteryPurposeScalingChallenges 28
  29. 29. Mastery 29Mastery is the desire to get better at something that matters. First, mastery is a mindset, inthat we either believe we can get better or we don’t. Second, mastery is a pain, in that itinvolves not only working harder but working longer at the same thing. Finally, mastery is anasymptote, or a straight line that you may come close to but never reach.
  30. 30. Chapters PO PO PO PO Chapter Chapter Squad Squad Squad Squad 30Special Interest/Competence groups – web development chapter, backend development chapter, QAchapter, payment chapter, etc.Share knowledge, learn from each other, personal development togetherIdentify common challengesTalk about good practices, decide on architecture, coding standards, etc.Learn technical skills – e.g. Test-driven development
  31. 31. Chapter Lead 31Servant leadershipCoaching, mentoring1:1 every weekUsually 50/50 squad work/chapter leadSometimes work in same squad, but not necessarily
  32. 32. Great colleagues 32Very high hiringstandards
  33. 33. Personal development 33Not typical management career path only, experimenting with “add-ons”, e.g., Expert, Teacher, Coach
  34. 34. Training programs 34Training, Lunch & learn, Tech talks, Webinars, etcManagement training, Leadership forum
  35. 35. AGENDA 12th FebAutonomyMasteryPurposeScalingChallenges 35
  36. 36. Purpose 36At Spotify we are on a mission to change the world – to make it possible to play everywhere,and to find the right music for every moment.We want everyone at Spotify to feel that what they do every day connects to this mission andthis purpose.So, how does this connect to our daily lives and the tasks we do?
  37. 37. Squad purpose 37
  38. 38. OKR Objective Key Result 38OKR - connect company vision to daily tasksObjective – Key resultObjective – longer vision, might take more than a quarter to achieveKey results – measurable goals for the quarterOKR for all of companyOKR for all of techOKR for whole squadOKR for chapterSometimes personal OKR
  39. 39. Product owner PO PurposeMastery Why/ What Chapter lead How Squad member Chapter lead How Squad member Ho w Autonomy 39Product owner – answer why are we doing this, what are we doing?Chapter lead – support in how we solve it, what we doAgile coach – support autonomy, facilitate discussions – supports whole squadSo for an engineer – this is how they get their Purpose, Mastery and Autonomy
  40. 40. AGENDA 12th FebAutonomyMasteryPurposeScalingChallenges 40
  41. 41. Scaling 41
  42. 42. Quality manager Project manager coordination Release manager coordination Configuration manager Change Change manager 42We need release coordination -> hire a release manager, project coordination -> hire a projectmanager, change mgmt, configuration manager, etc
  43. 43. Scaling 43… and so you end up with thisDepartments
  44. 44. Tribes 44
  45. 45. Tribes Tribe Tribe PO PO PO PO PO PO PO PO Chapter Chapter Chapter Chapter Squad Squad Squad Squad Squad Squad Squad Squad 45Everyone working within software engineering is divided into a set of tribes containing20-100 people each.Dunbar number - <150 people, so we recognize and know everyoneThe following applies to each tribe:Clear and defined missionHigh level of autonomy within each tribeTribes are joined by a set of foundation principles that apply to all tribesLead by a senior experienced leader (named tribe lead) responsible for all dimensions of thetribe (people, process, technology & culture)All skills necessary to produce live product features and code are present within the tribe,and thus the tribe can build cool stuff end to endA squad resides within one and only one tribe (people may be borrowed betweentribes)Some tribes have a matrix organization, others not.
  46. 46. Tribe Tribe Tribe Tribe ”Provide fast and reliable access to all the worlds music” Tribe Tribe Tribe ”Enable high product development speed while maintaining a highly available service” 46We have 6 tribes in Spotify right now – from 3 to 9 squadsEach tribe is co-located in one siteMission for tribeSimilar contexts and challenges
  47. 47. 47Tribe demos, gatherings, knowledge sharing, …
  48. 48. Network organization 48Avoid going “up-and-down the hierarchy”Squads always collaborate directly with each otherTribe borders are not hard – they are support function, not departmentsCreates a network organizationShifting fast since collaborations start and stop all the time
  49. 49. Dependencies Tribe Tribe PO PO PO PO PO PO PO PO Squad Squad Squad Squad Squad Squad Squad Squad 49Dependencies between teams – technical dependencies, organizational dependencies(overlapping product, mission), knowledge dependenciesNever let yourself be blocked. CTO says “Get shit done”, CEO says “When in doubt, dosomething”Important to understand dependencies – collect dataDependencies and collaborations – same thing.No problem – slowing – blocking – future
  50. 50. On-demandScrum-of-Scrums 50Scrum-of-scrum common pattern – too static, our organization is changing all the timeOn-demand scrum-of-scrum exists between different squads for short periods of timeThis example – spring 2012, big project (several squads, several months), scrum-of-scrumprogress/blockers/dependencies
  51. 51. Architecture 51SOA, loosely coupled
  52. 52. System Owner 52
  53. 53. Guilds 53A Guild is a community of interest, a group of people with similar engineering skills thatshare knowledge, tools and code across the whole of Spotify.For example a backend guild, web guild, QA guild, agile guild
  54. 54. Guilds Tribe Tribe PO PO PO PO PO PO PO PO Chapter Chapter Chapter Chapter Guild Squad Squad Squad Squad Squad Squad Squad Squad 54A Guild is an open community, so anyone can join any guild.Automatic membership if you are in that chapter – opt-out if you want toOpt-in for anyone else in companyYou can join multiple guilds, depending on your interest.All guild activities are optional by default. As guild member, you can choose how active orinactive you want to be in the guild.Each guild has a Guild Coordinator (or pair) who is main contact person for the guild,"bootstraps" the guild to enable self-organization, ideally trying to get rid of the need for aguild coordinator role.
  55. 55. 55Guild unconference – a whole day of lightning talks and Open Space. Good format, very popular
  56. 56. 56Agile coaches
  57. 57. “Big Projects” 57
  58. 58. Big Retrospeci Big retrospectives 58
  59. 59. Town Hall 59Town hall where CEO address whole company every two weeks. Q & A with top management.
  60. 60. Company values 60Not just Technology, other departments too. E.g., “Think it, Build it, Ship it, Tweak it”.“Get shit done”“When in doubt, do something”
  61. 61. Organizationalimprovement 61
  62. 62. AGENDA 12th FebAutonomyMasteryPurposeScalingChallenges 62
  63. 63. Challenges 63
  64. 64. AGENDA 12th FebAutonomyMasteryPurposeScalingChallenges 64
  65. 65. 65Questions?
  66. 66. Anders Ivarsson Joakim Sundén @anders_ivarsson 66