+ All Categories
Home > Technology > The Good, The Bad And The Ugly - Building Distributed Teams at Realm

The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Date post: 22-Jan-2018
Category:
Upload: christian-melchior
View: 241 times
Download: 0 times
Share this document with a friend
40
The Good, The Bad And The Ugly - Building Distributed Teams at Realm Christian Melchior - @chrmelchior @chrmelchior
Transcript
Page 1: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

The Good, The Bad And The Ugly - Building Distributed Teams at RealmChristian Melchior - @chrmelchior

@chrmelchior

Page 2: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

What this talk isn’t

@chrmelchior

and what it is!

Page 3: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

What is Realm?• Mobile database company

• 2 main products: Realm Mobile Database and Realm Mobile Platform

• ~50 employees across the globe

• 2 main offices: Copenhagen and San Francisco

• ~1/3 work remotely away from the main offices all our the world.

@chrmelchior

Page 4: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

#1 Realise that every team is different

@chrmelchior

Page 7: The Good, The Bad And The Ugly - Building Distributed Teams at Realm
Page 8: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Embrace the difference• Allow for experimentation

• A single team member can change the entire dynamic

• Don’t accept advise uncritically

• Partially vs. fully distributed team

@chrmelchior

Page 9: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

#2 Make communication asynchronous

@chrmelchior

Page 10: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

A new way of thinking• Harder than it sounds

• Interrupt-based vs. Push/Pull

@chrmelchior

Page 11: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Standups

@chrmelchior

Page 12: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Weekly status

@chrmelchior

Page 13: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Code review

@chrmelchior

• When you start the work-day or after completing a task.

• Make small pull requests

• Optimistic approvals: “+1 if X, Y, Z is fixed”

Page 14: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

#3 Don’t let tools dictate process

@chrmelchior

Page 15: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Who do you pick tools for• Team members ?

• Team leads ?

• Product Managers ?

• VP’s / Directors ?

• CEO ?

@chrmelchior

Page 16: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

What do we use?

@chrmelchior

Page 17: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Slack at Realm• Currently 192 channels

• Everyone should be able to create a channel.

• Fine-grained channels

• Use threads

@chrmelchior

• Only #general is required reading

• #<X>-team : Team channels

• #f-<X> : Discuss a specific feature

• #t-<X>: Very temporary channels

• #got: Here be dragons …

Page 18: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Slack is not perfect• Information overload

• Bad at storing persistent information

• Search in Slack is bad

• Notifications interrupt you

@chrmelchior

Page 19: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Group notifications• @channel

• Never use this!

• @here • Only for real time interactions

• @g-java / @g-<group> • Best of both worlds

@chrmelchior

Page 20: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Notification setup

@chrmelchior

Page 21: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

You are not at work all the time

@chrmelchior

Page 22: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

#4 Define how decisions are made

@chrmelchior

Page 23: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Meetings• Weekly team meeting (3pm CET)

• Europe 😊 • America 😪☕ • Asia 😫☕

• Team leads meeting (8pm CET) • Europe 😫☕ • America 😊 • Asia 😴

@chrmelchior

Page 24: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Decision making

@chrmelchior

• Harder to get consensus

• Who makes “the call”?

Page 25: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

#5 Be transparent in everything you do

@chrmelchior

Page 26: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Communicate, Communicate, Communicate

• Surface blockers quickly

• Be explicit about what you need

• You avoid getting interrupted

@chrmelchior

Page 27: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Pull Requests : Work In Progress

@chrmelchior

• Visibility

• Lower the barrier for peers / community to participate

Page 28: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

#6 Accept that turnaround is longer

@chrmelchior

Page 29: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Learn to multitask

@chrmelchior

• Immediate feedback is impossible

• Have a backlog of “easy” items

• Unblock others

Page 30: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

#7 Assume that people have the best intentions

@chrmelchior

Page 31: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Everyone did the best job they could, given what they knew at the time,

their skills and abilities, the resources available, and the situation at hand

Retrospective Prime Directive

@chrmelchior

Page 32: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

#8 Remember the social interaction

@chrmelchior

Page 33: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Social interaction online• Okay to start the meeting with a little banter

• Video chat for meetings

• Remember special events

• Social chat channels: #pugs, #got, #food

@chrmelchior

Page 34: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

#9 Meet face-to-face

@chrmelchior

Page 35: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

It is harder to think of people as idiots once you

met them face to face

@chrmelchior

Page 36: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Meet face-to-face• Realm-stravaganza ~ 1/year

• <Team>-stravaganza ~ 1/year

• Aligning on the vision

• Team building

@chrmelchior

Page 37: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Lessons learned so far 👍• Everything becomes more transparent

• Trust + Flexibility = Happy employees

• Diversity

@chrmelchior

Page 38: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

Lessons learned so far 👎• Process problems are magnified

• Longer turn-around time for tasks

• No overlapping work hours

@chrmelchior

Page 39: The Good, The Bad And The Ugly - Building Distributed Teams at Realm

9 tips for creating awesome distributed teams

1. Realise that every team is different 2. Make communication asynchronous 3. Don’t let tools dictate process 4. Define how decisions are made 5. Be transparent in everything you do 6. Accept that turnaround is longer 7. Assume that people have the best intentions 8. Remember the social interaction 9. Meet face-to-face

@chrmelchior


Recommended