Important - this page is public

This page and its subpages are public.

What does asynchronous mean?

In a world dictated by calendars and schedules, people are conditioned to operate in synchronicity — a manner in which two or more parties exert effort to be in the same place (either physically or virtually) at the same time. Asynchronous (async) communication is the art of communicating and moving projects forward without the need for additional stakeholders to be available at the same time your communique is sent. It also gives people a chance to express their opinions in the way that is best suited for them.

What is asynchronous work?

In an all-remote setting, where team members are empowered to live and work where they’re most fulfilled, mastering asynchronous workflows is vital to avoiding dysfunction and enjoying outsized efficiencies.

Increasingly, operating asynchronously is necessary even in colocated companies which have team members on various floors or offices, especially when multiple time zones are involved.

An all-remote setting is proven to be more inclusive as it provides flexibility to child care providers to combine their work with their parental responsibilities. It also enables team members to be on equal footing as other team members globally.

Why async?

You might ask yourself: “Why go through all of this effort with asynchronous communication? After all, it’s very convenient to just write a DM in Slack. I can get an instant response to my question, I can quickly discuss back and forth and come to a conclusion.”

This is true in the short term, but in the long term it has decremental effects on the entire teams efficiency and well being.

Asynchronous workflows, where you are not expected to give an instant response, allow you to work “in the zone” without being disturbed by notifications or discussions outside your current work scope.

You can instead check your Gitlab to-do list once you are done with a task. There is a lot of research on how being taken in and out of “the zone” impacts your performance negatively. By respecting other team mates time and focus, we can increase our long term productivity by a lot.

Another big benefit is the reduction of informational siloes. When discussions and decisions are made in a call, or in Slack, anyone who wasn’t there to read it (maybe because they were currently working hard on a task) now doesn’t have the full information about the decision or why it was made. This leads to really bad consequences where multiple people who might work on the same task, but with different underlying information and assumptions. It also leads to more unnecessary messages where the outside people has to message the group to get the information. If the discussion and decision instead was made in a thread on Gitlab, everyone has the same information and the decision making progress is open for anyone to follow.

How to communicate asynchronously

In order to be able to fully benefit from async communication, we need to break a few habits. First of all, even though Slack is a great tool, it’s actually not very async.

Slack only works well when you actively participating in the conversations. If you are offline, or focused on working, you might miss important information as it gets lost in the chat history.

This rewards bad behaviour. In order to be part of conversations, and to be able to participate yourself, you have to enable notifications, and be quick in your responses, which negatively impacts your focus and work performance.

This is why we have all conversations and discussions about bugs, features, projects and brainstorms in Gitlab instead of Slack.