10h time-difference-creating-effective-highly-distributed-teams
Post on 16-May-2015
832 Views
Preview:
DESCRIPTION
TRANSCRIPT
Creating effective highly distributed agile teams
19h time difference3 continents
Wojciech Seliga
2
● 26 years of programming● 8 years with „big international corporations”● 7 years with agile● 3 years with Atlassian● 11 years in geographically distributed teams
and/or with remote customers
About me
Distributed agile is difficult
Do NOT do it, unless ...
4
Valid reasons to go distributed
● No local talent available● Specific skills elsewhere● Customers elsewhere● Round the clock team● Great people move
Photo by Linus Bohman
5
Invalid reasons to go distributed
● Cheaper workforce (hidden overhead)
● No office space● Desire to be „global”
Photo by dan4th
6
Do's
7
Skilled & flexible people
● Agile really reveals problems, remoteness amplifies it
● Linchpins● Self-organisation● Passion (wild hours)● Domain knowledge● Communication● ResponsibilityPhoto by Helmut
8
Build trust
● Deliver good stuff on time
● Do not overcommit● Meet deadlines● Be honest● Be transparent● Respect each other● Avoid bad surprises
Photo by rogiro
10
Get to know your remote peers
● Cultural differences● Put names to the
faces● Responsibilities● S trengths and
weaknesses
11
Virtual Meetings
● Iteration planning● Release planning● Iteration summary &
demo● S tand-up - once or
twice a week ● Daily progress
available onlinePhoto by Ha-Wee
12
Human bridges
● Ambassadors● Touring rock stars● Visiting professors● Paratroopers● Foreign exchange
worker
Photo by noticelj
13
Good communication tools
● Video conferencing● Skype● IM (chat rooms)● Issue tracker● Wiki● And more...
14
Code review
● Disseminate knowledge
● Build trust● Guest programming● Post commit vs. pre-
commit
16
Good fences make good neighbours
● Projects● Subsystems● Plugins● Vertical components● Interfaces● Clients / Servers● Platforms
Photo by Hryck
17
Dont's
19
Managers here, subordinates there
Photo by Lord Mariser
21
Ignoring the fact of remoteness
Photo by donata ramonaite
22
Cheaper workforce abroad
Photo by wildphotons
24
Advantages of distributed teams
● Someone round the clock ● Less conflicts during commits and fixing tests● Taking over work started in the morning● Code reviewed by next morning● Time to cool-down before responding● Shorter and intensive communication● Fun (new places, new cultures)● Better computing resources utilisation - CI env is yours
25
Takeaways
● Avoid distributed if you can
● Agile amplifies problems
● Assign your best people
● Understand risks● Take advantagePhoto by Edinburgh Blog
top related