Visas and Work Permits — 6 min
Distributed teams need distributed processes. When employees no longer share an office, they cannot continue to work together under the weight of outdated systems. A change in environment must be followed by a corresponding change in operations.
What does that change look like? Maximizing productivity and efficiency in a remote environment means rethinking the outdated need for employees to clock in and clock out at the same time. If the old way of doing things was synchronous, happening in the same place at the same time, then the present and future of work is asynchronous — happening in all places at all times.
The data backs up the need for an asynchronous shift. The Remote Workforce Report 2023 found that 44% of companies are currently increasing their international hiring, which means more people working together across more time zones.
Companies hiring across international borders are enjoying higher retention rates, greater productivity, and more cost-effective teams, but those benefits come with a cost. As organizations hire people in new places, they experience new challenges with regard to process management and internal communications. This is what happens when the need to onboard international employees outpaces the structures in place to support those employees.
Asynchronous work is the solution. Remote, with more than 1,000 employees across 70 countries, has built a highly efficient, fully remote organization following async principles. Our company is living proof that working asynchronously is not only possible but preferable in a world where teams include individuals from all across the globe. Here, we will describe what asynchronous work means, how to structure async process management, and how to maximize productivity and efficiency with a distributed workforce.
Asynchronous (async) work refers to the practice of working on a team that does not require all members to be online simultaneously. When teams work asynchronously, individuals can maximize their productivity without waiting for others to complete tasks. The key to asynchronous work is creating processes that allow employees to work autonomously, and providing employees with the trust they need to do so.
An even, swift, and nimble pipeline produces exactly the right quantity of output for its requirements, and all its stages are balanced in terms of efficiency and speed, resulting in no waste of time or resources. This is inspired by the Toyota Production System 3Ms methodology: more about that here.
Async allows workers to organize the order in which tasks are executed to align with their own timetables. In asynchronous work, communication is not expected to be immediate, meaning workers can fine-tune work to reduce pressure on themselves and their colleagues. Asynchronous work relies on three main tenets: multiplexing, communication, and action.
Asynchronous work maximizes production by decoupling work from synchronous communication. Synchronous work tethers progress to communication, forcing teams to halt progress on projects when one of the team members is unavailable due to different work hours or time off.
Asynchronous work does not require employees to be online at the same time.
Asynchronous work relies more heavily on documentation and transparency.
Synchronous work slows down projects by placing artificial barriers to productivity.
Synchronous work is more common in office environments than in remote work structures, but still not optimal there.
Asynchronous work puts more trust in employees and their ability to perform.
From a results perspective, asynchronous work demonstrates massive benefits compared to synchronous work. Companies that embrace async working can move projects forward much more quickly than their competition. In addition, businesses with async workflows tend to have higher employee morale, thanks to the trust and increased communication and documentation practices necessitated by an async approach.
Managing async workflows requires companies to rethink what it means to measure productivity and trust employees. To that end, async work relies on three main tenets: Multiplexing, Communication, and Action.
Human beings exist in a synchronous world, we are bound by time, moving forward one second at a time. However, the way we do things (or put things together) has an insane amount of impact on the outcome of our pipeline. It’s all about planning.
Typical (synchronous) planning relies on kicking off things in bulk. On its own, it’s not a terrible thing to do. However, a system will go as slow as its slowest element. In this case, any delay will be propagated through the pipeline, as each stage depends entirely on the step that precedes it.
This image represents a three-terminal software development pipeline organized with sync planning. To deploy a feature, we need tasks A, B, and C to be completed. Given the way that these tasks were planned for and distributed, we will require a cycle of 9 work hours per deployment. This is great for atomic tasks, but very slow otherwise, as we’ll only be able to deploy every so often.
Async planning relies on breaking tasks into smaller tasks as much as possible and releasing Minimum Viable Changes (MVCs) as frequently as possible. This technique relies on the hypothesis that shipping less but more frequently allows you to measure success and counteract any negative feedback as fast as possible. It also allows more fine-grained control of resource allocation, as we’ll be able to perform more tasks in the same amount of time (due to their reduced size).
In this example representation, by separating Tasks A, B, and C in (A1, A2, A3, B1, etc.) we achieved three times as many deploys as in the previous example (M1). In this example, at the end of the nine hours, we may end up with the same number of features deployed. However, by multiplexing our tasks with async task distribution we were able to release subsets of our tasks, thus being able to validate their impact, and roll back or reassess the next steps. We’ve reduced the iteration time to a third of the original planning.
This methodology allows us to multiplex tasks, combining them to produce results faster.
Good communication is key to the success of any system (human or machine).
There are many types of communication: an email, a message, a voice call, a video call, or even a “let’s go get a coffee." Each channel has a different impact on productivity, and picking the right one is as important to the production pipeline as any other task we can perform.
Synchronous communication is the one we are most inclined to because it’s easy and more comfortable in a way.
A conversation (usually) requires at least two people. An engaged conversation can take multiple forms:
A video/voice call
Getting a coffee
Chatting at lunch
Messaging someone and expecting an immediate response
All these are great options for things that can’t be done in any other way or are way harder to do asynchronously. For example, performance reviews, strategy discussions, interviews, 1-1s.
Most meetings can be replaced by proper documentation, well-written emails, or messages. Meetings are the most expensive tool your company has, so use them properly.
In Example 3, two devs working on their tasks and needing to complete set of tasks (A, B, and C) before deploying:
This example happens so many times, in this case, a meeting about a tech requirement interrupts both devs for a fixed amount of time, and soon after another call about what someone should do next.
This is definitely not the best use case for sync communication. The interruptions delayed all work and no deployment was done. If we think about the efficiency of our pipeline, it was undoubtedly uneven and anything but swift.
Asynchronous communication empowers independence. It focuses on making sure that a task and its effects are independent of whoever planned or executed it.
Asynchronous communication brings/enforces some long-sought best practices, such as:
Messaging over calls
Respect for interruption-free work slots
Example 4 with the same two people (as in example 3) developing a set of tasks but resorting to asynchronous communication.
In this example, communication is performed through messaging and well-written documentation. In these cases, even if the end goal of the message exchange is spread throughout the time, the impact on the workflow is negligible and often means more execution.
Humans aren’t great at going from a state of total focus on task A to total focus on task B without loss (as depicted in the following image). For example, when you’re deep in a book and get interrupted by something. It’ll take you a moment to get back into the book.
In Example 5, we see a time-based chart, where Time and Productivity are the axes. This example depicts the timeline of a backend developer who gets interrupted twice — first by a frontend developer about the payload of an API request, and a second time, by a new team member, about setting up the project’s database locally.
The backend developer spent some time focusing on the task at hand (1) and later transitioned to a state of focus (2). This (2) is what we want to maximize and where we get the best out of our super creative and powerful brains. Then, when interrupted, the developer spends some time addressing the question from the frontend developer (3) to then get back to the task (1). Unfortunately, as the developer was focusing again (2), a new interruption occurs (3).
If you read this far, I’m sure this is all very familiar to you.
Now, the cherry on top is the concept of ”flow”(2). Wikipedia’s definition (more here):
In positive psychology, a flow state, also known colloquially, as being "in the zone," is the mental state of operation in which a person performing an activity is fully immersed in the activity. The person experiences energized focus, full involvement, and enjoyment in the process of the activity. In essence, flow is characterized by the complete absorption in what one does, and a resulting loss in one’s sense of space and time.
If being totally focused is hard, getting into the flow is even harder. The more you stay focused, the higher the probability of getting into the flow. However, if you have trouble keeping focus, then forget about flow.
Async communication shines with great power here, as it shields everyone’s time and focus while reducing meaningless time sinks. When you’re communicating async, these types of interruptions happen less frequently. And when the total time that you’re able to immerse yourself in deep work is longer, the chance of getting into the flow is much higher.
This is the very last tenet of going async. It’s not about procedure, it’s about attitude. It’s about caring about yourself as a professional and where you’re going as a whole.
There are many times when work isn’t ready for us to tackle, tasks aren’t planned, decision-makers aren’t online, etc. In these times, successful teams execute, even if they later have to refactor and adapt, they don’t waste time “waiting”.
“Always default to action” is a mantra we keep on repeating at Remote. This means that if you need to do something and no one is there to help you out or to point out what to do next, then you use your common sense and pick something up yourself.
Imagine there are three tasks, and only two are perfectly described, so you need to wait for a product manager to be available to define precisely what’s required.
In Example 6, we show that example through Dev 1 being someone that defaults to action and Dev 2 being someone that defaults to waiting.
In what we just described as “always default to action”, Dev 1 will pick up something else, even if not as important as the task he was hoping to tackle. Dev 2, however, decided to wait for the PM to help describe the task.
This example is anecdotal, and I wish I could say it’s an exaggeration, but it’s not. It’s very commonplace.
At Remote, if you really need someone to help you with your next task and you really can’t pick up anything else, well, it’s better to use that time to take care of yourself. You could instead go to the gym, walk the dog or watch your favorite show (yes, even if it's in the middle of your working day).
This implies a bit of better judgment, of course, some tasks are very sensitive and if you’re not sure about those, then you can pick up something else. It’s not about ignoring risk, it’s about taking charge in a controlled way.
Asynchronous work provides the foundation upon which distributed companies are built. Teams with people across multiple time zones cannot afford to waste precious hours waiting for those rare moments when schedules align. Switching to async is not just wise — for companies with remote workers, it is an imperative.
But async is not just for remote teams. Why should workers who share an office create unnecessary roadblocks for themselves? When everyone works asynchronously, everyone can perform at peak efficiency, regardless of where or when they perform their duties.
Async work is how high-performing teams get more done with fewer interruptions, higher efficiency, and greater reliability, based on the key concepts we have covered here:
Async work should be used more often than sync work, as it provides better resource management, reduces waste, and optimizes productivity.
Multiplexing your tasks and reducing scope allows you to deliver faster, test your hypotheses sooner, and achieve success with higher confidence.
Communication should generally be async and only occasionally be sync with things that require you to do so. Keeping this rule allows workers to focus on tasks longer and concentrate on best practices like documentation and writing proper procedures.
Always defaulting to action (within reason) helps the whole team move faster, reduces time waste, and increases ownership.
Have a different opinion or thoughts on asynchronous working? I’d love to hear from you! Find me on Twitter.
Subscribe to receive the latest
Remote blog posts and updates in your inbox.