By Julio Ojeda, Software Developer at BairesDev.
Working remotely has been a hot topic in the last few years. For tech people, it was not something new, but with the unprecedented pandemic, it has been adopted by other industries too. In the tech sector, many of us (developers, engineers, or designers) were already working this way. However, during the pandemic, many others had to work remotely so it was likely that most of them were not properly trained or equipped to do so. Working remotely has various benefits, but it also comes with a few important things to consider. Nowadays, there are even courses that cover most of the things you are advised to follow—from the most basic, like having the right hardware setup, to communicating to your peers and clients that you are now working from home.
In this article, I want to focus on one specific aspect of remote work, and that is the importance of being asynchronous. In my experience, this is very significant since it has helped me to be more productive. Being asynchronous means that you are able to keep working while waiting for something else to be done. It could be information gathering, a software license, new tasks, etc.
Here are 7 recommendations that will help you join the asynchronous world:
- Understand how to work.
- Have the right tools (Jira, Asana, Trello).
- Read, read, and read. Read documentation.
- Show up with more than one question.
- Be able to make video calls with coworkers in an agreed timeline.
- Write documentation in a structured way and specify the level of details.
- Be able to work on more than one thing at the same time.
1. Understand how to work agile.
To work asynchronously, the first thing you need to do is to adopt an agile methodology in your team. Most of the developers are already familiar with agile methodologies and already work this way. It does not have to be the exact same way it is described in textbooks. You have to adapt it to your team’s needs. For example, in a previous project I worked on, we followed Scrum methodology but we only had 3 meetings per week instead of strictly 5. We started with 5, but then we realized it was better to only have 3 since we had very little to say the next day. The important thing is that you have a framework reference of how to work and how to measure the progress of your team so you can keep improving.
2. Have the right tools (Jira, Asana, Trello).
Once you start working with agile methodologies you will also need various new tools in order to work in an asynchronous way. Communication is key to achieving asynchronous work. When working in an office you just need to talk to your colleague face-to-face in order to get an answer on the spot. That is synchronous communication. When you work from home it does not happen with such immediacy. You ask someone, and then there is a waiting period before you get an answer. That is why having the right tools to follow up diligently is important. You will need at least one tool for each of the following:
- Email (Gmail, Outlook)
- Chat (Slack, Skype, Discord, Google chat)
- Video call (Zoom, Google Meet, Skype)
- Project management (Trello, Jira, Asana)
- Calendar (Google calendar, Microsoft Outlook calendar, Apple calendar)
There are plenty out there and most of them have a free plan to start with. These tools will help you gather all the information required to accomplish a task, by collecting and tracking all tasks in a single place. It will provide an excellent asynchronous communication channel.
In my experience, it was overwhelming in the beginning because it seemed like a lot of tools to learn and keep track of, but over time I got used to them and now I acknowledge their value. I would find it hard to work without them in my day-to-day work.
3. Read, read, and read.
This is a foundation stone for working asynchronously, so you will have to master the ability to read documentation. When you pick up a task, the first thing you will do is read it. If there is any documentation, try to read it as much as possible; that is the purpose of its existence. It does not matter if it is outdated or if it’s too long. It would probably take you less time to read than the time it took for it to be written, so respect your coworkers’ efforts. Plus, if you read it you will have a better understanding of the context and, subsequently, you will ask better questions.
4. Show up with more than one question.
I would also recommend that if you have a question, do not ask right away. It is obvious, but sometimes you might forget to read the documentation first. If you are not able to find the answer by yourself then again, don’t ask immediately. If it is not critical, put it on a list of questions and try to assume the most logical answer in the meantime, so you can keep working. Once you have a few questions or a very critical one, it is time to ask for help. Remember that every time you ask for help, your teammates might stop what they are doing, so it is very important to take as little time from them as possible.
5. Be able to make video calls with coworkers in an agreed timeline.
A video call is a much quicker and more practical way to clarify doubts than over chat or email. When working remotely, it is probable that your teammates will work in different time zones, so I recommend agreeing on a timeframe where it is okay for anyone to request a video call to clarify doubts. Remember first to read all documentation, and prepare more than one question before scheduling the call to make the best out of those brief meetings. Maybe that teammate has done something similar to the task you are doing and you can benefit from their advice.
I like to schedule this kind of meeting early in my day, usually during the daily stand-up. This is when I ask questions or I will be asked too. Then I dedicate the rest of my day to producing, and I will have new questions for the next day.
6. Write documentation in a detailed, structured way.
When you dine out at a restaurant, the waiter will write down your order in detail and pass it to the kitchen staff for preparation. This is a perfect example of what asynchronous work looks like. You will have to let others know what you have done so they can also work asynchronously. Writing good documentation is crucial. It will help you in the future to save hours of explaining the same thing over and over again, and it ensures that the quality of information will be the same every time.
It is important that you specify the level of detail. For instance, in this article, you could read just the first paragraph and then you will find subtitles at the top, and you could read just the titles, but if you want more information, you can jump to the specific topic you are interested in. Let the reader have the option to read as much as they need.
After I write a task or message, I always read it. Sometimes I realize I skipped some important information because I wrongly assumed the person that will read it already knows what I’m talking about. This has helped me a lot to improve my documentation writing skills.
7. Be able to work on more than one thing at the same time.
For some people, this may be overwhelming, but that’s probably because they are doing it the wrong way. If you work in an agile way, have plenty of documentation, and have the ability to generate good documentation, you will be comfortable working this way. Being able to stop a task and later come back to it seamlessly is required to work asynchronously.
I personally like to use the first half of the day to have all the meetings and administrative work. I dedicate the rest of the day to producing code. This way, I am 100% focused and I will probably have fewer or no distractions.
Remote work is here to stay and I believe that it will continue to expand to most industries in the near future. It has countless advantages but it also comes with a few things to have in mind, so embrace the change and prepare yourself for it.