Slide 1

Slide 1 text

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.

Slide 2

Slide 2 text

YOU Sunday, 6 October 13 So, you guys

Slide 3

Slide 3 text

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

Slide 4

Slide 4 text

How many work remotely? Sunday, 6 October 13

Slide 5

Slide 5 text

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

Slide 6

Slide 6 text

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

Slide 7

Slide 7 text

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

Slide 8

Slide 8 text

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...

Slide 9

Slide 9 text

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.

Slide 10

Slide 10 text

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.

Slide 11

Slide 11 text

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.

Slide 12

Slide 12 text

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.

Slide 13

Slide 13 text

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.

Slide 14

Slide 14 text

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.

Slide 15

Slide 15 text

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.

Slide 16

Slide 16 text

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.

Slide 17

Slide 17 text

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.

Slide 18

Slide 18 text

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.

Slide 19

Slide 19 text

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.

Slide 20

Slide 20 text

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.

Slide 21

Slide 21 text

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.

Slide 22

Slide 22 text

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.

Slide 23

Slide 23 text

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?

Slide 24

Slide 24 text

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

Slide 25

Slide 25 text

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.

Slide 26

Slide 26 text

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.

Slide 27

Slide 27 text

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.

Slide 28

Slide 28 text

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.

Slide 29

Slide 29 text

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.

Slide 30

Slide 30 text

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.

Slide 31

Slide 31 text

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

Slide 32

Slide 32 text

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

Slide 33

Slide 33 text

Tools & Techniques Sunday, 6 October 13

Slide 34

Slide 34 text

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!

Slide 35

Slide 35 text

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

Slide 36

Slide 36 text

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

Slide 37

Slide 37 text

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

Slide 38

Slide 38 text

< 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.

Slide 39

Slide 39 text

< 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.

Slide 40

Slide 40 text

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.

Slide 41

Slide 41 text

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?”

Slide 42

Slide 42 text

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.

Slide 43

Slide 43 text

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

Slide 44

Slide 44 text

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]

Slide 45

Slide 45 text

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

Slide 46

Slide 46 text

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.

Slide 47

Slide 47 text

Implementation Sunday, 6 October 13

Slide 48

Slide 48 text

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.

Slide 49

Slide 49 text

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.

Slide 50

Slide 50 text

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.

Slide 51

Slide 51 text

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

Slide 52

Slide 52 text

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

Slide 53

Slide 53 text

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.

Slide 54

Slide 54 text

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.

Slide 55

Slide 55 text

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.

Slide 56

Slide 56 text

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:

Slide 57

Slide 57 text

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...

Slide 58

Slide 58 text

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.

Slide 59

Slide 59 text

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.

Slide 60

Slide 60 text

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.

Slide 61

Slide 61 text

I’m Michael Sunday, 6 October 13

Slide 62

Slide 62 text

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

Slide 63

Slide 63 text

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