arthur_richards_-_distributed_agile
Differences
This shows you the differences between two versions of the page.
Previous revision | |||
— | arthur_richards_-_distributed_agile [2020/06/02 14:22] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== 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, | ||
+ | * Feel empowered to embrace rather than fear geographical distribution on an agile team. | ||
+ | * Understand the enormous benefits of adopting a 'we are all remote' | ||
+ | * 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/ | ||
+ | * Style rating (0-average presentstion, | ||
+ | |||
+ | ====== Action / Learning ====== | ||
+ | |||
+ | * Present idea that "we are all remote" | ||
+ | * 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" | ||
+ | |||
+ | ====== 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' | ||
+ | |||
+ | 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 " | ||
+ | |||
+ | 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, | ||
+ | |||
+ | 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" | ||
+ | |||
+ | Arthur@wikimedia.org | ||
+ | |||
+ | Jobs.wikimedia.org | ||
+ | |||
+ | {{tag> |