SlideShare a Scribd company logo
#atlassian
Nailing Distributed Development: 
Effective collaboration in distributed teams 
Matt Ryall • Head of Engineering, Confluence • Atlassian • @mryall
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Individuals and interactions 
over 
process and tools 
– Manifesto for Agile Software Development
Jean-Michel Lemieux (“JML”) 
VP of Engineering
Jean-Michel Lemieux (“JML”) 
VP of Engineering 
JML
JML
We need to start a new 
development office in Asia. 
! 
How about we kick it off 
with Confluence? 
JML
JML 
We need to start a new 
development office in Asia. 
! 
How about we kick it off 
with Confluence?
JML 
We need to start a new 
development office in Asia. 
! 
How about we kick it off 
with Confluence? 
Matt
JML 
We need to start a new 
development office in Asia. 
! 
How about we kick it off 
with Confluence? 
No worries, mate! 
Matt
JML 
Matt
JML 
What will they work on? 
What if we can’t communicate? 
What if their code is bad? 
Matt
8½ hrs 
3-4 hrs
1. Meet your team.
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Clearly separate.
Clearly separate. 
Minimal learning curve.
Clearly separate. 
Minimal learning curve. 
Important but not critical.
A six-month mission
A six-month mission
A six-month mission
2. Share your plan 
and your values.
Spec
Spec
Confluence 
Collaboration Central 
• Knowledge sharing & collaboration for 
your team! 
• Write documents, share them! 
• Best online editing experience 
Create-share-discover cycle 
Create-share-discover cycle Recent releases 
• Confluence 4.0 – new WYSIWYG editor, 
macro placeholders, Share button! 
• Confluence 4.1 – page layouts! 
• Confluence 4.2 – WYSIWYG templates! 
• Confluence 4.3 – mobile UI, “Like” button, 
popular content, in-page notifications 
Confluence 2013 goals 
• Lustworthy – beautiful and easy to use! 
• Onboarding – easy to get started! 
• Enterprise – robustness & scalability 
Confluence 2013 goals 
• Insert diagram here 
Confluence 5.0 
• Redesigned with Atlassian Design 
Guidelines (ADG)! 
• New header, integrated app switcher! 
• New typography, colours, icons! 
• Space navigation sidebar! 
• Create experience! 
• Enterprise user management improvements 
Confluence 5.0 
Sidebar 
navigation 
New 
header 
New typography, 
icons, etc.
Atlassian Engineering Values! 
How does build software?! 
3 
The Prime Directive: 
DELIVER CUSTOMER VALUE 
Congrats - you were picked out of 72 
companies!! 
• Pilot project. A developer gave the demo and a good heated 
discussion with the team.! 
• Company values and delivery focus! 
• Ability to scale with Atlassian and think big! 
• Vietnam education and hard working culture (albeit language 
is still a challenge given how quickly we collaborate)! 
• Design agency and eye for design and user experience! 
! 
• Challenges: English, products that last for ever, including all our 
teams in the Atlassian culture. 
4 
What’s made successful?! 
What’s made successful? 
1.Software development is changing! 
2.Business model innovation! 
3.Long-term thinking 
Where is heading?! 
Where is heading? 
1.Every company is a software company! 
2.Beyond the dev team! 
i. “every knowledge worker using Atlassian every day”! 
3.“Your margin is our opportunity” 
i. Ubiquitous 
in 2014!
Engagement model 
Dev foundation 
expanding core dev capability, 
bug fixing, feature team 
Prod 
Mgr 
Existing team 
New, remote 
team 
Design 
& UX 
Dev 
Mgr 
Dev 
TL 
Dev 
Dev 
BA 
Dev 
Mgr
Engagement model 
Dev foundation 
expanding core dev capability, 
bug fixing, feature team 
Prod 
Mgr 
Existing team 
New, remote 
team 
Design 
& UX 
Dev 
Mgr 
Dev 
TL 
Dev 
Dev 
BA 
Dev 
Mgr 
Product decisions 
process in place, making product 
decisions more independently 
Dev 
TL 
Dev 
Dev 
Prod 
Mgr 
Prod 
Mgr 
Dev 
Mgr 
Design 
UX 
Dev 
Mgr
Engagement model 
Dev foundation 
expanding core dev capability, 
bug fixing, feature team 
Prod 
Mgr 
Existing team 
New, remote 
team 
Design 
& UX 
Dev 
Mgr 
Dev 
TL 
Dev 
Dev 
BA 
Dev 
Mgr 
Product decisions 
process in place, making product 
decisions more independently 
Dev 
TL 
Dev 
Dev 
Prod 
Mgr 
Prod 
Mgr 
Dev 
Mgr 
Design 
UX 
Dev 
Mgr 
Autonomous 
owns execution against strategy 
for their own features/products 
Prod 
Mgr 
TL 
Dev 
Dev 
Dev 
Dev 
Mgr 
Design 
& UX
Nailing Distributed Development With Effective Collaboration - Matt Ryall
3. Frequent face-to-face 
contact at all levels.
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Frequent catchups
How often to meet? 
At least once per week.
Nailing Distributed Development With Effective Collaboration - Matt Ryall
I’ve used Hipchat screen sharing to pair with 
Matej in Amsterdam on a plugin issue. We 
were writing SQL together, etc. ” 
“
Exchange program
Exchange program
Exchange program
Exchange program
Exchange program
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Nailing Distributed Development With Effective Collaboration - Matt Ryall
4. Communicate 
asynchronously.
HipChat is our logbook
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Incident conference 
calls must die. 
! 
Use HipChat instead.
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Chapter Title Here
Promote lurking
Nailing Distributed Development With Effective Collaboration - Matt Ryall
It wasn’t all smooth sailing…
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Bug!
Dynamic vs static
Dynamic vs static 
Less this
Dynamic vs static 
Less this 
More this
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Can you guys please switch 
the JIRA Issues Macro from 
dynamic to static by default?
Can you guys please switch 
the JIRA Issues Macro from 
dynamic to static by default? 
Sure thing!
More bugs!
5. Track decisions.
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Nailing Distributed Development With Effective Collaboration - Matt Ryall
6. Reinforce the 
culture you want.
#atlassian
7. Be overly inclusive.
ShipIt competitions
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Coordinated parties
Coordinated parties 
Saigon Golf Day
Coordinated parties 
Saigon Golf Day Sydney Treasure Hunt
All hands presentations
8. Measure for success.
Goals Survey 
Actions Feedback
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Staff surveys
9. Help the team find 
their own identity.
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Nailing Distributed Development With Effective Collaboration - Matt Ryall
Blue shirt day
Key takeaways: #atlassian 
1. Meet the team 
2. Share your plan and your values 
3. Frequent face-to-face contact at all levels 
4. Communicate asynchronously 
5. Track Decisions 
6. Reinforce the culture you want 
7. Be overly inclusive 
8. Measure for success 
9. Help the team find their own identity
Questions?
Thank you! 
Matt Ryall • Head of Engineering, Confluence • Atlassian • @mryall
Image credits 
• Slide 3: http://www.physipak.com.au 
• Slide 4: https://www.flickr.com/photos/kheelcenter/5279325617/ 
• Slide 5: http://agilemanifesto.org 
• Slides 7, 9: Atlassian 
• Slide 11: Google Maps 
• Slides 13, 14, 24, 29, 30: Atlassian 
• Slide 31: http://1slowhiker.blogspot.com.au/ 
• Slide 43: Google Maps 
• Slides 49, 51, 53, 54, 62, 64: Atlassian

More Related Content

Nailing Distributed Development With Effective Collaboration - Matt Ryall

  • 2. Nailing Distributed Development: Effective collaboration in distributed teams Matt Ryall • Head of Engineering, Confluence • Atlassian • @mryall
  • 6. Individuals and interactions over process and tools – Manifesto for Agile Software Development
  • 8. Jean-Michel Lemieux (“JML”) VP of Engineering JML
  • 9. JML
  • 10. We need to start a new development office in Asia. ! How about we kick it off with Confluence? JML
  • 11. JML We need to start a new development office in Asia. ! How about we kick it off with Confluence?
  • 12. JML We need to start a new development office in Asia. ! How about we kick it off with Confluence? Matt
  • 13. JML We need to start a new development office in Asia. ! How about we kick it off with Confluence? No worries, mate! Matt
  • 15. JML What will they work on? What if we can’t communicate? What if their code is bad? Matt
  • 16. 8½ hrs 3-4 hrs
  • 17. 1. Meet your team.
  • 22. Clearly separate. Minimal learning curve.
  • 23. Clearly separate. Minimal learning curve. Important but not critical.
  • 27. 2. Share your plan and your values.
  • 28. Spec
  • 29. Spec
  • 30. Confluence Collaboration Central • Knowledge sharing & collaboration for your team! • Write documents, share them! • Best online editing experience Create-share-discover cycle Create-share-discover cycle Recent releases • Confluence 4.0 – new WYSIWYG editor, macro placeholders, Share button! • Confluence 4.1 – page layouts! • Confluence 4.2 – WYSIWYG templates! • Confluence 4.3 – mobile UI, “Like” button, popular content, in-page notifications Confluence 2013 goals • Lustworthy – beautiful and easy to use! • Onboarding – easy to get started! • Enterprise – robustness & scalability Confluence 2013 goals • Insert diagram here Confluence 5.0 • Redesigned with Atlassian Design Guidelines (ADG)! • New header, integrated app switcher! • New typography, colours, icons! • Space navigation sidebar! • Create experience! • Enterprise user management improvements Confluence 5.0 Sidebar navigation New header New typography, icons, etc.
  • 31. Atlassian Engineering Values! How does build software?! 3 The Prime Directive: DELIVER CUSTOMER VALUE Congrats - you were picked out of 72 companies!! • Pilot project. A developer gave the demo and a good heated discussion with the team.! • Company values and delivery focus! • Ability to scale with Atlassian and think big! • Vietnam education and hard working culture (albeit language is still a challenge given how quickly we collaborate)! • Design agency and eye for design and user experience! ! • Challenges: English, products that last for ever, including all our teams in the Atlassian culture. 4 What’s made successful?! What’s made successful? 1.Software development is changing! 2.Business model innovation! 3.Long-term thinking Where is heading?! Where is heading? 1.Every company is a software company! 2.Beyond the dev team! i. “every knowledge worker using Atlassian every day”! 3.“Your margin is our opportunity” i. Ubiquitous in 2014!
  • 32. Engagement model Dev foundation expanding core dev capability, bug fixing, feature team Prod Mgr Existing team New, remote team Design & UX Dev Mgr Dev TL Dev Dev BA Dev Mgr
  • 33. Engagement model Dev foundation expanding core dev capability, bug fixing, feature team Prod Mgr Existing team New, remote team Design & UX Dev Mgr Dev TL Dev Dev BA Dev Mgr Product decisions process in place, making product decisions more independently Dev TL Dev Dev Prod Mgr Prod Mgr Dev Mgr Design UX Dev Mgr
  • 34. Engagement model Dev foundation expanding core dev capability, bug fixing, feature team Prod Mgr Existing team New, remote team Design & UX Dev Mgr Dev TL Dev Dev BA Dev Mgr Product decisions process in place, making product decisions more independently Dev TL Dev Dev Prod Mgr Prod Mgr Dev Mgr Design UX Dev Mgr Autonomous owns execution against strategy for their own features/products Prod Mgr TL Dev Dev Dev Dev Mgr Design & UX
  • 36. 3. Frequent face-to-face contact at all levels.
  • 40. How often to meet? At least once per week.
  • 42. I’ve used Hipchat screen sharing to pair with Matej in Amsterdam on a plugin issue. We were writing SQL together, etc. ” “
  • 51. HipChat is our logbook
  • 53. Incident conference calls must die. ! Use HipChat instead.
  • 58. It wasn’t all smooth sailing…
  • 60. Bug!
  • 62. Dynamic vs static Less this
  • 63. Dynamic vs static Less this More this
  • 65. Can you guys please switch the JIRA Issues Macro from dynamic to static by default?
  • 66. Can you guys please switch the JIRA Issues Macro from dynamic to static by default? Sure thing!
  • 71. 6. Reinforce the culture you want.
  • 73. 7. Be overly inclusive.
  • 79. Coordinated parties Saigon Golf Day Sydney Treasure Hunt
  • 81. 8. Measure for success.
  • 85. 9. Help the team find their own identity.
  • 90. Key takeaways: #atlassian 1. Meet the team 2. Share your plan and your values 3. Frequent face-to-face contact at all levels 4. Communicate asynchronously 5. Track Decisions 6. Reinforce the culture you want 7. Be overly inclusive 8. Measure for success 9. Help the team find their own identity
  • 92. Thank you! Matt Ryall • Head of Engineering, Confluence • Atlassian • @mryall
  • 93. Image credits • Slide 3: http://www.physipak.com.au • Slide 4: https://www.flickr.com/photos/kheelcenter/5279325617/ • Slide 5: http://agilemanifesto.org • Slides 7, 9: Atlassian • Slide 11: Google Maps • Slides 13, 14, 24, 29, 30: Atlassian • Slide 31: http://1slowhiker.blogspot.com.au/ • Slide 43: Google Maps • Slides 49, 51, 53, 54, 62, 64: Atlassian