Today, when most companies work remotely, communication becomes crucial. We often struggle with lack of good communication we used to know from the office environment. However, was this office communication really effective? Didn’t we waste too much time on coffee breaks and randomly talking with coworkers? Let’s see how asynchronous communication can make our remote work super-effective.
Why asynchronous communication?
In one of the previous articles about remote work I proposed different techniques on managing a remote team. One of them was to communicate asynchronously. You can read this point from the article to know why the async communication is important.
I see the asynchronous communication as a key to effective remote work. It helps everyone stay focused when they need to. It embraces the working hours’ flexibility which is inevitable staying at home. Finally, it eliminates some of the bad habits we used to have working in the office that decreased our productivity.
Below, I’m presenting 10 techniques that can make your team’s communication more asynchronous. By implementing them, your employees can focus on their work, instead of being interrupted by meetings or random talks. The order of techniques is random 😉
Learn clear writing
Learn to ask precise questions, so they can be precisely answered. You will see the results in practice. If the person you ask something gives you the clear and precise answer straightaway (so you don’t have to ask again), it’s a good sign. If they ask you to be more precise or give more details, it means you need to work more on asking the question. Use your interlocutor’s remarks as signs on what to improve when asking next time.
Try to avoid questions to which the answer is open. Prefer yes-no questions, meaning the questions to which the answer is one from given set of options. For example, ask questions to which the answer could be a “yes” or “no”. If the question is more complex, offer the other persons few options to choose from (a,b,c,…) and ask them to choose exactly one.
If you want someone to do something (e.g. test something), describe it step-by-step (example: 1. login to the system, 2. click on X, 3. click on Y 4. see the result of Z, …).
Always read your question again before sending it. Sometimes the answer may magically come to you just before you press the “send” button… 🙂
Use public chats
Remote work is often criticized for offering no social interactions. People start feeling alone and a bit out of the loop. One of the reasons for that is that remote workers communicate too much on private channels. It makes the rest of the team unaware of the issues being discussed between two coworkers.
The solution is to overcommunicate. It means that it’s better to write more to more people than less to fewer people. Try to use public channels (like a group Skype chat or Slack channel) as often as possible. It makes everyone in the loop and feeling more like a team.
Private communication should be used for solving personal manners or providing feedback. Especially negative feedback, which shouldn’t be provided publicly.
If you have an idea to spread, consider using a screencasts recording software for that. It basically means to record what you do on your computer’s screen and show it to the rest of the team asynchronously.
Screencasts are great for showing the rest of the team results of your work, or a bug you just found in your app. They are also perfect for presenting the other developers some new framework/tool/technique you just learned and want to share this knowledge.
You don’t have to organize a meeting to present something. Download one of the free screencasts recorder tools – for Windows you can use ShareX, while macOS seems to support it out-of-the-box. Record your screen, preferably with your voice comments. Then upload the video to YouTube, generate a private link and send it to interested people. They can watch and comment in their own time. No more wasting the team’s time at a meeting.
Use tasks management tool
Tasks management tool is the core of every team’s productivity. It not only allows to track the effectiveness of the team, but also organizes everyone’s work in a nice way. Some of these tools allow a task-based communication which even more empowers remote and async work.
You can use tools like JIRA, GitHub or Nozbe for organizing your team’s work. It doesn’t really matter which of them you use. The most important is to keep your work organized and divided into small tasks. I recommend creating tasks that can be realized in 2-4 hours. It makes it all measurable while you can keep getting this god feeling when checking the next tasks our from the list 😉
Consider resigning from Pull Requests (if they block your process)
There’s recently a hype in some IT environments on hating the Pull Requests technique. If you are not familiar with that, a Pull Request is a step in the software development process where a programmer, having his code finished, asks his/her colleagues for approval. This is often the moment when the code review is done and the newly checked-in code is accepted or not.
I don’t see Pull Requests as a totally bad thing. They help the team stay up-to-date with what’s happening in the codebase. They also let people learn from each other. However, in your case the Pull Requests might be blocking your team’s work. In effect, it might badly affect the productivity of the team. If your colleagues hate Pull Requests and don’t see any value in them, try to resign from this step in your development process. It may increase your team’s productivity a lot.
You can read more about Pull Requests and their dark sides in this article.
Avoid unnecessary meetings (unless you have a goal in them)
Meetings should have a goal and address a specific problem. It applies especially to scheduled meetings that occur on a regular basis.
Scheduled meetings are fine, as long as they have a precise and really necessary goal. One of these goals may be to socialize, especially in current pandemic times. However, such coffee meetings might often be transferring the bad habits of random chats in the corporate kitchen from the office environment. Remember to be clear about such meetings’ goals. If possible, make such meetings optional, so people don’t feel overwhelmed by having to attend them.
Prefer ad-hoc communication to scheduled meetings
You might be wondering – if there are no (or less) scheduled meetings, are there any meetings at all?
I think meetings are not a bad thing, as long as they have a purpose. I prefer ad-hoc communication to scheduled meetings.
Having an issue? Organize a quick 1-1 or a group call (optional to join) to solve the problem together. Such spontaneous meetings are good for knowledge sharing and better interaction between teammates. Such unexpected meetings can also be more interesting than scheduled ones.
Don’t expect immediate answers in asynchronous communication
If I sorted the points in this article by importance, this would be the number 1. When working remotely, don’t expect that someone will answer your message/call/question immediately. We work asynchronously – it means that the person you ask might not be available at the exact same moment as you are.
It seems obvious, but it’s a change of mindset to stop expecting immediate answers. However, when learned, it really frees your mind.
Let everyone work on anything
Try to avoid specializing in a given area of your work. If you are a software developers team, don’t let programmers specialize in given areas of your system. It’s better if everyone can work on anything. Why? See the last point.
Always have some spare tasks prepared
In most cases we work on one thing at a time. But what if you are blocked waiting for a crucial answer about this issue (don’t expect immediate answers, remember?) to be able to continue?
It’s good to always have more tasks defined than there are people working on the project. It’s even better if all of them are able to work on any of these tasks. In case a person waits for an asynchronous answer from someone else, (s)he can take any other task from the list and start working on it in the meantime.
I hope you found these advices useful. If you work synchronously today, give asynchronous communication a try. If you’re not a decision-maker in your team, send the link to this article to your manager. Maybe it encourages them to at least try asynchronous communication 😉