Async Manifesto for Managers 📨

"Asynchronous communication means I can take a step out for lunch and catch up on transcripts when I get back. Asynchronous communication means I can ask my coworker a question in-chat and not worry about bothering her since she’ll get back to me when she’s available. Asynchronous communication means I can go to rural Minnesota and feel like I’m working from the office like normal."

- Zach Holman of GitHub

💭 Values

  1. Transparent and public communication over information control.
  2. Written information over verbal meetings.
  3. Flexible working hours over synchronised schedules.
  4. Remote-working over co-location.
  5. Trust and ownership over task delegation.
This is not to say the things on the right are never useful, but we value the things on the left a huge amount more.

📜 Principles

1. Meetings as a last resort

Meetings are an easy option but they are really expensive. When you need to talk with someone, ask yourself how you can do it in an asynchronous way first. Once those options are exhausted, a meeting can be your last option.

2. Use limited sync time appropriately, it's not just yours to use

Sync times and meetings are not evil but you do have a very limited amount of it possible in a day. If you ask someone how many hours they would choose to be in meetings, it would likely be a small number. Understand that if you are a manager, people will find it even harder to say "no" to a meeting invite from you. Always ask someone directly if they would have time and a good reason to join you before putting an invite into their calendar.

Focus instead on finding the right time to make use of sync time. If you sense some conflict or misunderstanding, need to build some human connection with people (useful when working remotely), or otherwise need to collaborate in real time, go for it.

3. Proactively overcommunicate in public by default

Overcommunicating is valuable because in async you can't (and shouldn't) rely on instant replies, so giving more context and considering what someone might ask means you can proactively squish any slow follow ups being necessary. You want to be pushing information into all the right places, as opposed to people needing to pull it from you.

Here's what you should include:
  1. Enough details to cover follow up questions - this helps avoid long cycle conversations.
  2. Response time expectations - when do you need a reply by?
  3. As much context and supporting info as possible - documentation, tickets, screenshots, all that good stuff.
  4. A clear need and expectation - are you looking for approval? Feedback? A decision? Let them know.

4. Documentation is scalable

Writing something down publicly builds scalable knowledge. You don't have to keep having the same meetings to relay the same info to different people. When new people join you don't have to remember all the important things and talk it through with each person. People can proactively find the info they need. When you leave the team there is still useful context available.

5. Go synchronous when it gets synchronous

If you end up having a real time discussion in slack or email, realise that you might be able to communicate more effectively on a call or in person. Experiment with when this works well or not. If you go sync, remember to follow up with a written summary so those who missed it can catch up and join in async.

6. Lead by example

As a manager, the most effective way you can influence a successful asynchronous culture is to live by the values yourself. Don't ask a team to send public async updates if you yourself call them into a meeting every time you want to communicate with them.