Table of Contents
Arthur Richards - Distributed Agile
Premise
Summary
How the mobile web engineering team at the Wikimedia Foundation became a successful Scrum team by embracing geographical distribution.
Learning Objectives:
Session attendees will learn:
- Best practices and effective tools for fomenting and managing remote collaboration.
- Collocation often breeds bad habits and obscures best practices; team distribution, like Scrum or other agile practices, can help highlight those problems.
- Feel empowered to embrace rather than fear geographical distribution on an agile team.
- Understand the enormous benefits of adopting a 'we are all remote' mindset - freedom, flexibility, diversity, larger hiring pool, resilience, etc.
- In addition, session attendees will be asked to think about and discuss the agile principle “the most efficient and effective method of conveying information to and within a development team is face-to-face conversation”.
Summary
- Content rating (0-no new ideas, 5 - a new ideas/approach, 9-new ideas): 8
- Style rating (0-average presentstion, 5 - my level, 9-I learned something about presenting): 5
Action / Learning
- Present idea that “we are all remote” at some stage and that we'd like to ensure we have resilience to handle this
- Present idea that collocation often hides problems in the way the team works and is especially problematic for the remote people - they cannot just ask and so waste time waiting / doing things that aren't important
- Take advantage of cadence of scrum
- Present sample rules
- For decisions - If it didn't happen on the mailing list, then it didn't happen
- Single source of truth (eg wiki, Jira)
- To reduce arguments - always assume good faith (and if you cannot see good faith then you must resolve it with a video chat)
- Rule of 3 - decisions had to involve a rep from each discipline (they had 3 on the team)
- Use face-to-face time not for work but for fun to help with social cohesion
- Use of video chat
- Action - see “we are all remote” PDF - John O'Duinn
Presentation
Notes
Wikimedia
Remote people as afterthoughts in the organization Was in San Fransisco moved to Arizona
Communication was harder - remote exposes this Use make an opportunity out of crisis
Workflow tracked on a wiki Poorly described Vague Not in priority order Multiple people work on same thing Multiple people setting priorities Never knew when we were done Endless cycle of context switching
Never new what to do next
Only thing that I had changed was that he had gone remote When local could work around the problems with the process Access gone to change Collocation obscures bad practice on the team
Try agile Agile does not solve problems It helps expose them
Retrospectives All about communication Lack of facilities to deal with it
Distribution exposes communication problems
So what did we do
Scrum rituals became invaluable Became important as virtual face to face Regularity and predictability helped Helped with remote people as could plan for it
Looked at the tools All about facilitating good communication
Task board online Video chat for the team Also relying more text chat as well
Had to equip all the offices in conference rooms (without having to use someone's laptop)
Tools helped but retrospective Create norms - all document
Rules
If it didn't happen on the mailing list, then it didn't happen That way everyone knows the decisions if all not involved Had side effect of reducing conflicts as a result of different understanding of decisions
Single source of truth One place where you can go to get your work done. Reduced context switching and thumb fiddling
Text based comms Meant a lot of arguments broke out Happens things like
So rule was “Always assume good faith.” No matter what you read assume other person is good intention Get on video chat if you have a problem with something you read
Rule of 3 One discipline has a problem, but others Had to be at least one from each discipline on all important decisions
Face to face time from time to time Not just working Helps with bonding, compassion, etc Get together once a quarter Eg went to house of air, trampolines, trampoline dodgeball Believe the help make general comms better
Can be applied to any team
We are all remote Adopt as a mindset for the team - a Marta Stop 2nd class citizens thinking Helps when you are on vacation, sick, travel, work from home etc Even when team is co-located Anyone can be remote. Minimize disruptions as a result of these things happening Created a sense of resilience. Can handle big disaster - work will still go on Gave team a sense of freedom Increased the hiring pool - not just San Fransisco Increased cultural diversity (important for global product like Wikipedia) Coverage - span timezones
Team satisfaction = better product Competitive edge
But agile principles says …
Used as justification But lose out on all the benefits
Don't take out of context
What do the rules really mean - it's just a principle
Cost vs benefit
Lose out on sense of resilience
Technology has changed - video change
Summary
Embrace remoteness Distribution highlights problems
How daily scrum Experimenting with dedicated chat where everyone contributes to asynchronously - answering questions, and also working issues and making comments
Action - see “we are all remote” PDF - John O'Duinn
Arthur@wikimedia.org
Jobs.wikimedia.org