Upgrade to Pro — share decks privately, control downloads, hide ads and more …

How GitHub Uses GitHub: Communicating with remote teams

Cynthia Rich
August 22, 2017

How GitHub Uses GitHub: Communicating with remote teams

Hear from two of our seasoned managers as they share how we pattern our work to build tools with 60% of our team members being remote. We'll cover communication patterns, the tools we use, and the cultural elements that contribute to more successful collaboration across timezones.

Cynthia Rich

August 22, 2017
Tweet

More Decks by Cynthia Rich

Other Decks in Business

Transcript

  1. the best way to build and ship software
    Communicating with Remote Teams
    How GitHub uses GitHub

    View Slide

  2. the best way to build and ship software 2
    Cynthia Rich
    @crichID, Manager of Training

    View Slide

  3. the best way to build and ship software 3
    Bonnie Chatterjee
    @BonnieC, Director of Professional Services

    View Slide

  4. the best way to build and ship software
    A few logistics
    4
    ▸ 40 minutes presentation, 10 minutes Q&A
    ▸ Please ask questions in the GoToWebinar Q&A panel
    ▸ Recording
    ▸ Yes, we are! It will be sent via email after the presentation.
    ▸ Additional Questions
    [email protected]

    View Slide

  5. the best way to build and ship software
    In this session, we will focus on how we use GitHub to
    make remote work more effective. This includes:
    ▸ Why remote teams are important to us
    ▸ The tools we use to work effectively
    ▸ Getting things done in remote teams
    ▸ Culture building in remote teams
    5
    Our goals

    View Slide

  6. the best way to build and ship software
    Our remote philosophy
    6

    View Slide

  7. the best way to build and ship software
    “In order for us to meet our goals
    we can't have a hub. We are
    distributed out of necessity.”
    7

    View Slide

  8. the best way to build and ship software
    Intentionally remote
    8

    View Slide

  9. the best way to build and ship software
    “If you look at the carbon footprint
    ... or the time wasted by people
    traveling to work, remote working is
    making a positive change on the
    environment, employee happiness,
    and the way teams work.”
    9

    View Slide

  10. the best way to build and ship software
    “I am remote because I'm not
    based at HQ but I don't feel
    remote.”
    10

    View Slide

  11. the best way to build and ship software
    Remote Workers
    11

    View Slide

  12. the best way to build and ship software
    Remote Workers
    12
    Distributed

    View Slide

  13. the best way to build and ship software 13
    Creating togetherness

    View Slide

  14. the best way to build and ship software
    “our meetings are a pretty evenly
    split between "business" and "I'm
    building a tube amp for my
    headphones" kind of discussion.”
    14

    View Slide

  15. the best way to build and ship software
    “Help people pair up on projects
    they can do or review together, so
    ICs form relationships amongst
    themselves.”
    15

    View Slide

  16. the best way to build and ship software
    Cultural values for successful distributed teams
    16
    ▸ Focus on inclusion
    ▸ Assume positive intent
    ▸ Be empathetic
    ▸ Form genuine relationships

    View Slide

  17. the best way to build and ship software 17
    The tools we use

    View Slide

  18. the best way to build and ship software 18
    How we communicate

    View Slide

  19. the best way to build and ship software
    “consider Slack the office
    building, and public channels are
    open work areas or meeting
    rooms; private channels are team
    meetings/hallway/over the cube
    wall conversations …”
    19

    View Slide

  20. the best way to build and ship software
    We write things down
    20
    GitHubbers put a URL on it:
    ▸ We believe in open communication
    ▸ We track our work, discussions, and decisions in
    Issues and Pull Requests
    ▸ We write with the reader(s) in mind
    ▸ We are committed to being thoughtful

    View Slide

  21. the best way to build and ship software
    “remote team members do not
    default to async-only
    communications”
    21

    View Slide

  22. the best way to build and ship software 22
    Getting things done

    View Slide

  23. the best way to build and ship software
    Team patterns
    23
    ▸ Weekly radar
    ▸ Regular team stand-ups
    ▸ Projects
    ▸ Tracking issues with checklists

    View Slide

  24. the best way to build and ship software
    We brainstorm in Issues and Pull Requests:
    ▸ Include a tl;dr
    ▸ State the problem and ask for input
    ▸ Do your research and cross-link
    ▸ Make it easy for team members to contribute in 5
    minutes or less
    ▸ State when you will close the ideation phase
    24
    Brainstorming

    View Slide

  25. the best way to build and ship software
    ▸ Agenda in an Issue ahead of time
    ▸ All meetings include a zoom link
    ▸ Take notes in the same Issue
    ▸ Discussion items
    ▸ Checklists and PRPs for next steps
    ▸ Decisions are documented and cross linked with the relevant
    Issue or Pull Request
    ▸ Use emoji reactions to ensure absent team members
    are in the loop
    25
    Meetings

    View Slide

  26. the best way to build and ship software
    ▸ Day-to-day discussion happens in Slack
    ▸ Hubot helps us tie the pieces together
    26
    Day-to-day discussions

    View Slide

  27. the best way to build and ship software 27
    Hubot drops notes in Issues and PRs

    View Slide

  28. the best way to build and ship software 28
    Hubot drops notes in Slack

    View Slide

  29. the best way to build and ship software
    ▸ Don’t be afraid to jump on a Slack call or Zoom
    ▸ Bring the outcomes back to the relevant Issue or Pull
    Request
    29
    Ad-hoc conversations

    View Slide

  30. the best way to build and ship software 30
    If you worked in the same physical workplace, there are
    certain things you get for "free". You might bump into
    coworker you don't know in the kitchen. You might walk
    past a colleagues desk and see pictures of their kids. You
    might see crochet needles sticking out of a messenger bag.
    When you're not in the same place at the same time, you
    have to take an affirmative step to create the opportunity
    for those otherwise serendipitous interactions.

    View Slide

  31. the best way to build and ship software
    ▸ Co-working sessions
    ▸ Agenda-less 1:1’s with peers
    ▸ Hack-houses and mini-summits
    ▸ Virtual play sessions
    ▸ Celebrate accomplishments
    31
    Having Fun

    View Slide

  32. the best way to build and ship software 32
    Having fun with Hubot

    View Slide

  33. the best way to build and ship software 33
    Work-life balance

    View Slide

  34. the best way to build and ship software
    Making it safe to unplug
    34
    ▸ Inherently difficult for distributed team members
    ▸ Protect out-of-office time
    ▸ Trust and autonomy
    ▸ Working remote is a gift

    View Slide

  35. the best way to build and ship software
    ▸ July 25: Communicating with issues
    ▸ August 22: Communicating with remote teams
    ▸ September 26: Managing your teams
    ▸ October 24: Managing your projects
    ▸ November 28: Writing documentation for your
    projects
    Sign up at services.github.com
    35
    How GitHub Uses GitHub

    View Slide

  36. the best way to build and ship software
    Questions?
    36

    View Slide