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

Asynchronous Working

Asynchronous Working

Asynchonous working helps people make the most of their time. Instead of being interrupted by people with questions or asking for favours at the most inopportune moment, you can work in a way that lets you reply to them in your own time. It means fewer meetings, better audit trails and keeping developers in "the zone" for as long as possible. This talk draws on my experience implementing asynchronous working in a company, as well as feedback from various other companies that work the same way, and aims to give attendees an insight as to how it makes people more productive.

Michael Heap

April 12, 2013
Tweet

More Decks by Michael Heap

Other Decks in Business

Transcript

  1. Asynchronous Working
    Sunday, 6 October 13
    Hey. Hopefully you’re all here to learn about Asynchronous working. It’s kind of like remote
    working. But not quite. It’s the same processes and principles, but they’re actually *really*
    effective in an office.

    View Slide

  2. YOU
    Sunday, 6 October 13
    So, you guys

    View Slide

  3. How many
    work in an office?
    Sunday, 6 October 13

    View Slide

  4. How many
    work remotely?
    Sunday, 6 October 13

    View Slide

  5. How many
    do a bit of both?
    Sunday, 6 October 13

    View Slide

  6. I’m Michael
    Sunday, 6 October 13
    I’m Michael
    I’m @mheap
    I’m a developer at...

    View Slide

  7. I’m @mheap
    I’m Michael
    Sunday, 6 October 13
    I’m Michael
    I’m @mheap
    I’m a developer at...

    View Slide

  8. I’m a developer
    I’m @mheap
    I’m Michael
    Sunday, 6 October 13
    I’m Michael
    I’m @mheap
    I’m a developer at...

    View Slide

  9. Sunday, 6 October 13
    I’m a developer at DataSift. We process huge amounts of data in realtime, including (but not
    limited to) the Twitter firehose.
    We’re hiring! Sales, Devs, QA, Operations. Come and find me later if you’re interested.
    We work pretty asynchronously with 25 developers and five ops guys.

    View Slide

  10. Sunday, 6 October 13
    But all this goes back to when I worked at Tweetdig. We were a small team, 5 people at our
    biggest.

    View Slide

  11. Sunday, 6 October 13
    We grew slowly, all in the same office.
    There was the founder. Another developer. Me. A sales guy. And a designer.
    Then one day I found I was more productive working mornings from home and afternoons
    from the office. There were less distractions. This worked well, until I realised I didn’t know
    what was going on in the office. I was missing out on face to face conversations. We needed
    to fix that.

    View Slide

  12. Sunday, 6 October 13
    We grew slowly, all in the same office.
    There was the founder. Another developer. Me. A sales guy. And a designer.
    Then one day I found I was more productive working mornings from home and afternoons
    from the office. There were less distractions. This worked well, until I realised I didn’t know
    what was going on in the office. I was missing out on face to face conversations. We needed
    to fix that.

    View Slide

  13. Founder
    Sunday, 6 October 13
    We grew slowly, all in the same office.
    There was the founder. Another developer. Me. A sales guy. And a designer.
    Then one day I found I was more productive working mornings from home and afternoons
    from the office. There were less distractions. This worked well, until I realised I didn’t know
    what was going on in the office. I was missing out on face to face conversations. We needed
    to fix that.

    View Slide

  14. Founder
    Sunday, 6 October 13
    We grew slowly, all in the same office.
    There was the founder. Another developer. Me. A sales guy. And a designer.
    Then one day I found I was more productive working mornings from home and afternoons
    from the office. There were less distractions. This worked well, until I realised I didn’t know
    what was going on in the office. I was missing out on face to face conversations. We needed
    to fix that.

    View Slide

  15. Founder
    Developer
    Sunday, 6 October 13
    We grew slowly, all in the same office.
    There was the founder. Another developer. Me. A sales guy. And a designer.
    Then one day I found I was more productive working mornings from home and afternoons
    from the office. There were less distractions. This worked well, until I realised I didn’t know
    what was going on in the office. I was missing out on face to face conversations. We needed
    to fix that.

    View Slide

  16. Founder
    Developer
    Sunday, 6 October 13
    We grew slowly, all in the same office.
    There was the founder. Another developer. Me. A sales guy. And a designer.
    Then one day I found I was more productive working mornings from home and afternoons
    from the office. There were less distractions. This worked well, until I realised I didn’t know
    what was going on in the office. I was missing out on face to face conversations. We needed
    to fix that.

    View Slide

  17. Founder Me
    Developer
    Sunday, 6 October 13
    We grew slowly, all in the same office.
    There was the founder. Another developer. Me. A sales guy. And a designer.
    Then one day I found I was more productive working mornings from home and afternoons
    from the office. There were less distractions. This worked well, until I realised I didn’t know
    what was going on in the office. I was missing out on face to face conversations. We needed
    to fix that.

    View Slide

  18. Founder Me
    Developer
    Sunday, 6 October 13
    We grew slowly, all in the same office.
    There was the founder. Another developer. Me. A sales guy. And a designer.
    Then one day I found I was more productive working mornings from home and afternoons
    from the office. There were less distractions. This worked well, until I realised I didn’t know
    what was going on in the office. I was missing out on face to face conversations. We needed
    to fix that.

    View Slide

  19. Founder Me Sales
    Developer
    Sunday, 6 October 13
    We grew slowly, all in the same office.
    There was the founder. Another developer. Me. A sales guy. And a designer.
    Then one day I found I was more productive working mornings from home and afternoons
    from the office. There were less distractions. This worked well, until I realised I didn’t know
    what was going on in the office. I was missing out on face to face conversations. We needed
    to fix that.

    View Slide

  20. Founder Me Sales
    Developer
    Sunday, 6 October 13
    We grew slowly, all in the same office.
    There was the founder. Another developer. Me. A sales guy. And a designer.
    Then one day I found I was more productive working mornings from home and afternoons
    from the office. There were less distractions. This worked well, until I realised I didn’t know
    what was going on in the office. I was missing out on face to face conversations. We needed
    to fix that.

    View Slide

  21. Founder Me Sales
    Developer Designer
    Sunday, 6 October 13
    We grew slowly, all in the same office.
    There was the founder. Another developer. Me. A sales guy. And a designer.
    Then one day I found I was more productive working mornings from home and afternoons
    from the office. There were less distractions. This worked well, until I realised I didn’t know
    what was going on in the office. I was missing out on face to face conversations. We needed
    to fix that.

    View Slide

  22. Founder Me Sales
    Developer Designer
    Sunday, 6 October 13
    We grew slowly, all in the same office.
    There was the founder. Another developer. Me. A sales guy. And a designer.
    Then one day I found I was more productive working mornings from home and afternoons
    from the office. There were less distractions. This worked well, until I realised I didn’t know
    what was going on in the office. I was missing out on face to face conversations. We needed
    to fix that.

    View Slide

  23. Asynchronous
    working helps
    people make the
    most of their time.
    Sunday, 6 October 13
    So, I got you in here with this statement. “Asynchronous working helps people make the most
    of the time”. How you ask?

    View Slide

  24. NO MORE MEETINGS
    (*cue cheers*)
    Sunday, 6 October 13
    No more meetings! Now, I’ve been told that not everyone hates meetings, but as a developer,
    I really do. Meetings exist to talk about doing work instead of actually doing work

    View Slide

  25. Sunday, 6 October 13
    But seriously. What *are* the advantages to working asynchronously?
    More productive, less mistakes, better innovation. Those are all well and good, but most
    importantly, people are HAPPIER. And happy workers = productive workers.

    View Slide

  26. More productive
    Sunday, 6 October 13
    But seriously. What *are* the advantages to working asynchronously?
    More productive, less mistakes, better innovation. Those are all well and good, but most
    importantly, people are HAPPIER. And happy workers = productive workers.

    View Slide

  27. More productive
    Less mistakes
    Sunday, 6 October 13
    But seriously. What *are* the advantages to working asynchronously?
    More productive, less mistakes, better innovation. Those are all well and good, but most
    importantly, people are HAPPIER. And happy workers = productive workers.

    View Slide

  28. More productive
    Less mistakes
    Better innovation
    Sunday, 6 October 13
    But seriously. What *are* the advantages to working asynchronously?
    More productive, less mistakes, better innovation. Those are all well and good, but most
    importantly, people are HAPPIER. And happy workers = productive workers.

    View Slide

  29. More productive
    Less mistakes
    Better innovation
    Happiness
    Sunday, 6 October 13
    But seriously. What *are* the advantages to working asynchronously?
    More productive, less mistakes, better innovation. Those are all well and good, but most
    importantly, people are HAPPIER. And happy workers = productive workers.

    View Slide

  30. More productive
    Less mistakes
    Better innovation
    Happiness
    *citation needed
    Sunday, 6 October 13
    But seriously. What *are* the advantages to working asynchronously?
    More productive, less mistakes, better innovation. Those are all well and good, but most
    importantly, people are HAPPIER. And happy workers = productive workers.

    View Slide

  31. Current
    processes
    Sunday, 6 October 13
    So, let’s take a look at your current processes.

    View Slide

  32. Email
    Dropbox
    Weekly Review
    Ticketing System
    Sunday, 6 October 13
    I’m assuming the majority of you use these kind of tools+techniques to some extent already.
    Unactioned emails, missing files, forgot to invite dave and now he’s double booked, verbal
    requests forgotten

    View Slide

  33. Tools &
    Techniques
    Sunday, 6 October 13

    View Slide

  34. Chat Room
    Sunday, 6 October 13
    Even when working asynchronously, you need a way to chat in realtime. Emails and tickets
    are good, but they’re no replacement for realtime conversations. With a chatroom, any
    interested parties can join the conversation and participate in realtime, and anyone that’s not
    involved can get on with their work. If a 3rd party needs to know what was said later, they
    can just go back and read the transcript.
    A chat room makes communication in your company searchable. Need to find out exactly
    what was said about $client-feature? Just search the logs!

    View Slide

  35. BONUS CHAT
    ROOM STUFF
    Sunday, 6 October 13
    Chat rooms come with a huge bonus feature: Chat bots.

    View Slide

  36. Sunday, 6 October 13
    SIFTER, our IRC bot. It might look like fun, but it reduces institutional knowledge.

    View Slide

  37. < michael> (›°□°ʣ›ớ ᵲᴸᵲ
    < sifter> ᵣᴷᴷᵣ ϊ( ʄ-ʄϊ)
    Sunday, 6 October 13
    SIFTER, our IRC bot. It might look like fun, but it reduces institutional knowledge.

    View Slide

  38. < michael> (›°□°ʣ›ớ ᵲᴸᵲ
    < sifter> ᵣᴷᴷᵣ ϊ( ʄ-ʄϊ)
    < michael> sifter what's for lunch?
    < sifter> Lunch today is Wagamamas
    Sunday, 6 October 13
    SIFTER, our IRC bot. It might look like fun, but it reduces institutional knowledge.

    View Slide

  39. < michael> (›°□°ʣ›ớ ᵲᴸᵲ
    < sifter> ᵣᴷᴷᵣ ϊ( ʄ-ʄϊ)
    < michael> sifter what's for lunch?
    < sifter> Lunch today is Wagamamas
    < michael> sifter what servers run client-app in prod?
    < sifter> Servers with role [client-app] in environment
    [production] are: example.com, example2.com
    Sunday, 6 October 13
    SIFTER, our IRC bot. It might look like fun, but it reduces institutional knowledge.

    View Slide

  40. Ticketing System
    Sunday, 6 October 13
    Anything that anyone has to do, should go in a ticketing system. It gives people a one stop
    solution for working out what they need to be doing right now. It gives people a way to track
    progress on features they’ve requested, and it gives project managers a nice overview of
    where time is being lost.

    View Slide

  41. Email
    Sunday, 6 October 13
    Everyone uses email I bet. Email’s awesome for things that don’t need a reply *now*, and that
    don’t fit inside anything else e.g. a ticketing system. It’s for things like “Are you ok to demo
    $product to Google next week?” or “Fancy going to the pub after work?”

    View Slide

  42. Pull Requests
    Sunday, 6 October 13
    Pull requests are a technical term, but they apply to everything. You do your own little bit of
    work, then ask someone to review it. Once they ok it, it gets pulled into the company.
    Minimum 2 people, but whoever is interested can get involved.

    View Slide

  43. Collaborative
    editors
    Sunday, 6 October 13
    You know, something like etherpad. It lets people edit the same block of text in realtime
    (usually whilst using the chat room). Whether it’s a press release or a specification document

    View Slide

  44. automate
    automate
    automate
    Sunday, 6 October 13
    This is the big one for me, personally. A scripted process save you time so you can focus on
    doing real work. And again, automation reduces institutional knowledge. [Example about
    deployment]

    View Slide

  45. Documentation
    Sunday, 6 October 13
    Documentation! Can't just tap someone on the shoulder any more. Need solid docs

    View Slide

  46. Chat room
    Ticketing system
    Email
    Pull requests
    Collaborative editors
    Automation
    Documentation
    Sunday, 6 October 13
    Recap time. All of this is doable on a shoestring. You don’t need to go out and spend
    thousands of pounds to get up and running with it.

    View Slide

  47. Implementation
    Sunday, 6 October 13

    View Slide

  48. Start Small
    Sunday, 6 October 13
    You can’t do it all in one morning. You need to gradually introduce it. Start with making sure
    all your tickets go into the relevant system. No more verbal requests. Everyone needs to be
    on board with this, if you get a request to do something and it’s not in the ticketing system,
    refuse to do it. If the request comes via a textual medium (e.g. chat or email - which it
    should) you have a log of you saying “Add a ticket”, so when it doesn’t get done you can just
    point them to your message. This is *really* important. These systems don’t work when half
    implemented.

    View Slide

  49. Audit Trail
    Sunday, 6 October 13
    Suddenly, you have an audit trail. That change that the client is insisting they didn’t ask to be
    done? You can look at who built it and who requested it to find out more.

    View Slide

  50. The zone
    Sunday, 6 October 13
    When you’re not interrupting each other (as you can just check the ticket system to find out
    what next), you’ll find that people seem to get things done more quickly. Some people don’t
    understand the zone, but I think Paul Graham put it best.

    View Slide

  51. This is why hackers give
    you such a baleful stare as
    they turn from their screen
    to answer your question.
    Inside their heads a giant
    house of cards is tottering.
    - Paul Graham
    Sunday, 6 October 13

    View Slide

  52. Clearer
    communication
    Sunday, 6 October 13
    Which leads to clearer communication. It sounds odd, how people not talking to each other
    can lead to better communication. All things that make your life easier.
    If the ticket doesn’t have enough information, you can add a comment asking for more
    clarification and move onto the next task. Soon features requests will come with checklists.
    Bug reports will have screenshots, additional context and maybe even reproduction steps.
    I’m gonna show you a quote by Zach Holman at Github. Github are like the flagship company

    View Slide

  53. Text is explicit. By forcing
    communication through a
    textual medium, you're
    forcing people to better
    formulate their ideas
    - Zach Holman
    Sunday, 6 October 13
    Read the slide.
    I think this is totally right. How many times do you ask someone what they want a feature to
    do and they sit there and um and ah. That’s time you could be spending doing something
    more productive.

    View Slide

  54. Clearer
    Communication
    Sunday, 6 October 13
    As a bonus, text is “on the record”. If for some reason the developer that’s working on a
    feature suddenly can’t come to work for 6 weeks, another developer can read through the
    feature’s history and be up to date without involvement from anyone else. They can
    understand the state the features in, where it should be and the justification from it all, just
    by reading a ticket.

    View Slide

  55. No distractions
    Sunday, 6 October 13
    The next big step is to disable notifications. Close your email client, set yourself to busy in
    IM. You’re about to do some important work, you don’t want to be distracted. People can still
    come over and talk to you, but if they do, the building had better be on fire.

    View Slide

  56. Taking it
    remote
    Sunday, 6 October 13
    Eventually, your local talent pool is going to dry up and you need to start hiring remote
    workers. Here’s what you need to do to be able to support remote workers:

    View Slide

  57. Nothing
    Sunday, 6 October 13
    Thankfully, you’re already set up for them! It doesn’t matter if they’re sat across from you or
    in another country, the processes are the same. Which leads me onto another quote from
    Zach Holman...

    View Slide

  58. Asynchronous
    communication means I
    can go to rural Minnesota
    and feel like I'm working
    from the office like
    normal
    - Zach Holman
    Sunday, 6 October 13
    It doesn’t matter if you’re on the other side of the world, or if you prefer to work at 3am in
    the morning. So long as you’re using the tools provided, everything should work just fine.

    View Slide

  59. Remote Week
    Sunday, 6 October 13
    This was in the talk I saw before lunch, the way of the Herokai. I really like it as an idea. If
    you’re not too comfortable hiring remote people just incase it doesn’t work, close the office
    for a week.

    View Slide

  60. You don’t have to go home,
    but you can’t stay here
    - Heroku
    Sunday, 6 October 13
    By closing the office for a week, you can make sure your processes work. Heroku did it and
    noticed that usage of the chat room increased by a significant amount.

    View Slide

  61. I’m Michael
    Sunday, 6 October 13

    View Slide

  62. I’m @mheap
    I’m Michael
    Sunday, 6 October 13

    View Slide

  63. Any questions?
    I’m @mheap
    I’m Michael
    Sunday, 6 October 13

    View Slide