ݺߣ

ݺߣShare a Scribd company logo
Smile 
Agile Offsharing, 
or building high-performance remote teams 
Audrys Kažukauskas, NFQ / Agile Tour Kaunas 2014 
аudrys@nfq.lt
NFQ - experts in remote engineering 
teams 
★ Multiple remote engineering teams 
★ Long-term success 
★ I’ve personally been leading big engineering teams for German 
and US companies for almost 10 years
Why a remote team? 
★ Saving costs. Really? 
★ Remote teams for dull work - Ha, good luck with this one! 
★ Talent is scarce worldwide, difficult to hire onsite 
★ Global expansion, acquisitions
The moment you have a remote team, 
★ remoteness starts working against you :)
Challenges 
★ Physical distance 
★ Different cultures 
★ Different timezones 
★ Language barrier 
★ Network bandwidth and latency
Physical distance 
★ Unless you take active measures, communication will suffer. 
★ So will the project.
Facilitate high-bandwidth multi-channel 
communication! 
★ Build cross-office teams 
★ Ensure daily contact via emails, IM, voice+video (hi-fi), wiki, 
jira, etc. 
★ Continuous integration! 
★ Frequent travels, especially in the beginning 
★ Contact persons on either side, who can answer questions or 
remove obstacles 
★ Don’t give too detailed written specs!
Different cultures 
Lithuanians Americans 
debate very straightforward avoid to directly disagree 
with each other 
estimate down-to-earth, 
realists 
can-do attitude, 
“kosmonautai” 
give feedback positive and 
negative, you’ll get 
both 
positive is easy, negative is 
hard - read between the 
lines 
define “Done” should be 100% 
error-free, all edge 
cases covered 
Would never go for 100%. 
Forget even 80%.
Bridging different cultures 
★ First, expect differences in culture 
★ Expect to misunderstand or be misunderstood, be forgiving 
★ Get to know the culture of your partner 
★ Eventually, both sides will tune to each other
Different timezones 
★ meetings at awkward times 
★ late deployments 
★ slower feedback loop 
★ working longer hours
Dealing with different timezones 
★ No perfect solutions here. Work with Europeans :) 
★ >6h difference will require some sacrifice
Language barrier 
★ English - international business language 
★ You’d better be good at 
○ speaking (debates, building personal relationships) 
○ writing (IM, emails) 
○ listening comprehension (a fast-speaking American on poor 
quality skype call, whoohaaa!)
Limited Internet bandwidth 
Usually not in Lithuania, 
the other end… :)
Addressing internet bandwidth or 
latency problems 
★ Network latency can be a killer too 
○ “Why don’t you use our shared database remotely?” 
★ Set-up local development environment (including databases) 
★ Consider a local mirror for code repository 
★ Have CI running onsite only
All this might be enough... 
… to have a good enough remote team. 
To make it really high-performance, you’ll need more
Trust-based relationship 
★ Give initial trust credit 
★ Immediately start building trust 
○ project kick-off meetings onsite 
○ frequent visits to share the know-how and build personal relationships 
★ Start delivering, early and frequently
Understand the business value behind 
the requirements 
★ You can make many decisions locally 
★ You can find the best tech. solution to get 80% of value with 
20% of effort 
★ Then, high level specs are enough (saves so much time!)
Give significant responsibilities and 
autonomy 
★ Giving responsibility as a great motivator! 
★ Alleviates timezone difference 
★ Helps to attract and retain talented programmers 
★ Much easier and efficient to coordinate rather than (micro- 
)manage
Super ingredients to build 
a high-performance remote team 
★ Trust-based relationship 
★ Understand the business value behind the requirements 
★ Give significant responsibilities and autonomy
Smile 
Agile Offsharing, 
or building high-performance remote teams 
Audrys Kažukauskas, NFQ / Agile Tour Kaunas 2014 
аudrys@nfq.lt

More Related Content

Audrys kažukauskas Agile offsharing

  • 1. Smile Agile Offsharing, or building high-performance remote teams Audrys Kažukauskas, NFQ / Agile Tour Kaunas 2014 аudrys@nfq.lt
  • 2. NFQ - experts in remote engineering teams ★ Multiple remote engineering teams ★ Long-term success ★ I’ve personally been leading big engineering teams for German and US companies for almost 10 years
  • 3. Why a remote team? ★ Saving costs. Really? ★ Remote teams for dull work - Ha, good luck with this one! ★ Talent is scarce worldwide, difficult to hire onsite ★ Global expansion, acquisitions
  • 4. The moment you have a remote team, ★ remoteness starts working against you :)
  • 5. Challenges ★ Physical distance ★ Different cultures ★ Different timezones ★ Language barrier ★ Network bandwidth and latency
  • 6. Physical distance ★ Unless you take active measures, communication will suffer. ★ So will the project.
  • 7. Facilitate high-bandwidth multi-channel communication! ★ Build cross-office teams ★ Ensure daily contact via emails, IM, voice+video (hi-fi), wiki, jira, etc. ★ Continuous integration! ★ Frequent travels, especially in the beginning ★ Contact persons on either side, who can answer questions or remove obstacles ★ Don’t give too detailed written specs!
  • 8. Different cultures Lithuanians Americans debate very straightforward avoid to directly disagree with each other estimate down-to-earth, realists can-do attitude, “kosmonautai” give feedback positive and negative, you’ll get both positive is easy, negative is hard - read between the lines define “Done” should be 100% error-free, all edge cases covered Would never go for 100%. Forget even 80%.
  • 9. Bridging different cultures ★ First, expect differences in culture ★ Expect to misunderstand or be misunderstood, be forgiving ★ Get to know the culture of your partner ★ Eventually, both sides will tune to each other
  • 10. Different timezones ★ meetings at awkward times ★ late deployments ★ slower feedback loop ★ working longer hours
  • 11. Dealing with different timezones ★ No perfect solutions here. Work with Europeans :) ★ >6h difference will require some sacrifice
  • 12. Language barrier ★ English - international business language ★ You’d better be good at ○ speaking (debates, building personal relationships) ○ writing (IM, emails) ○ listening comprehension (a fast-speaking American on poor quality skype call, whoohaaa!)
  • 13. Limited Internet bandwidth Usually not in Lithuania, the other end… :)
  • 14. Addressing internet bandwidth or latency problems ★ Network latency can be a killer too ○ “Why don’t you use our shared database remotely?” ★ Set-up local development environment (including databases) ★ Consider a local mirror for code repository ★ Have CI running onsite only
  • 15. All this might be enough... … to have a good enough remote team. To make it really high-performance, you’ll need more
  • 16. Trust-based relationship ★ Give initial trust credit ★ Immediately start building trust ○ project kick-off meetings onsite ○ frequent visits to share the know-how and build personal relationships ★ Start delivering, early and frequently
  • 17. Understand the business value behind the requirements ★ You can make many decisions locally ★ You can find the best tech. solution to get 80% of value with 20% of effort ★ Then, high level specs are enough (saves so much time!)
  • 18. Give significant responsibilities and autonomy ★ Giving responsibility as a great motivator! ★ Alleviates timezone difference ★ Helps to attract and retain talented programmers ★ Much easier and efficient to coordinate rather than (micro- )manage
  • 19. Super ingredients to build a high-performance remote team ★ Trust-based relationship ★ Understand the business value behind the requirements ★ Give significant responsibilities and autonomy
  • 20. Smile Agile Offsharing, or building high-performance remote teams Audrys Kažukauskas, NFQ / Agile Tour Kaunas 2014 аudrys@nfq.lt