Anssi Piirainen

Execution is everything

Espoo, Finland   –  4 min to read

How to Organise Remote Work for High Productivity

My iMac

The popularity of remote work is on the rise, and in the past weeks, the demand has seen exponential growth. Following are some of the non-obvious reasons for using remote workers and remote teams:

Right mow, the Coronavirus is forcing many companies to have their employees working from home. Suddenly there are a lot of employers and employees trying to figure out how to operate in this unusual situation.

Companies are always looking to increase their productivity and profits. Based on my ten years of experience as a remote worker, I can say that not every remote team is working effectively and achieving high productivity. The world is full of companies and organisations that have no clue about remote work and are now suffering when the virus forces them to practise it.

Companies need to have the right practises in place to make remote working effective.

The best practises for remote teams

There are a lot of practises that can improve remote working. In this article, I'm presenting the top three.

  1. Backlog of work
  2. Asynchronous communication
  3. Timely feedback

Backlog of work

The Backlog ensures that people have a place to go when they need new work.

Many software development organisations know how to use backlogs and visual boards for organising work. The backlog is a prioritised list of work that the organisation wants to complete. The backlog needs to be available for access from anywhere and online tools, like Github boards and Trello, are excellent for this.

These tools are not only for distributed teams: Many on-site teams are using them as well. Visual boards are useful tools for everyone. For remote teams, having tools like this is more important because in a distributed setting, people cannot rely on face-to-face communication nearly as much as in a co-located setting. For remote teams, the practice of asking around does not work well.

All items in the backlog should be planned.

People need to be able to trust that the task they take from the backlog represents work that the organisation wants to complete. People don't want to invest their time on stuff that is not needed. Nobody likes wasting their time on busywork.

Everyone in the team should be familiar with the tasks that are in the backlog.

Joint planning is one way to make sure that everyone is familiar with the tasks. The team could assemble the backlog as a team exercise. In Scrum, the whole team gets together periodically to plan the tasks for the next iteration of the project. After the sprint planning session, the team members know the tasks well enough to be able to start working on them later in the iteration.

I have seen the Scrum backlog planning approach work well for building a working backlog.

Don't be too attached on the idea of the backlog here. The most important thing to take away from this is that there needs to be some mechanism in place which ensures that people always know what to do next. You and your team can together decide what the best tool for you is.

Asynchronous communication

Programming requires deep concentration. You should not interrupt a programmer at work if you don't want to destroy his focus. Achieving the flow state of tight focus takes time, and interruptions will harm focusing. In fact, frequent interruptions may prevent a person to never reach the flow state. His concentration never gets deep enough to achieve the state of deep work and high productivity.

In recent years, open offices have become less popular. Companies have realised that the constant communication and interaction which happens in open workspaces can kill productivity. Knowledge workers, like programmers, need private spaces to be able to concentrate.

That being said, not all work is deep work that happens in the flow state. Knowledge workers need to communicate to share information and to synchronise their work to achieve shared goals. This is where async communication comes in.

Async communication can improve productivity because people can concentrate on it when they have a break from their deep work sessions. People should be able to alternate between deep work and between communication at their own rhythm — this would be the recipe for high productivity.

Companies should encourage async communication. It should be part of the standard working culture of the company. Tools like Slack can be excellent for async communication. To make async communication effective in a tool like Slack, have the following rules in place:

It should also be noted that async communication can make it possible for people to work in different time zones. Not all messaging needs to happen when the time zones overlap. You can send a question when the recipient on the other time zone is sleeping, and then receive the answer the following morning when you wake up.

Timely feedback

Sometimes developers run into situations when they cannot make progress on a task before they get some from someone else. A decision needs to be made, a question needs to be answered, or some new tool needs to be purchased, before work can continue.

You don't want your developer to be stuck for long times. You should quickly help him (or her) so that he is free to continue his work.

Async communication means that you don't need to answer peoples messages and questions immediately. On the flip side of this, you should not take too long with your answers and feedback. Long delays can be frustrating and, for obvious reasons, delays are disastrous for the overall productivity.

Summing up

To succeed with distributed teams, the top things to prioritise are:

  1. Make sure you have a solid backlog of work available at all times
  2. Promote asynchronous communication
  3. Provide timely feedback

Thanks for reading and keep up the good (remote) work!