In today’s article we’re taking a look at remote work organization. How to organize a remote team of programmers? How to do that efficiently? There are a few simple techniques that can make the team’s communication and cooperation much smoother and better. I’m sharing 5 useful tips to make remote teams working better.
The tips mentioned in this article can be applied to not only team of software developers, but to any kind of remote team that involves communication and cooperation between its members
Types of remote teams
First of all, we should define what a remote team is. In general, remote team is associated with remote work. However, there can be several types of remote teams:
- Fully remote team – all team members work remotely and there’s no physical office at all. Team members can meet from time to time to socialize, but generally everyone is working 100% remotely.
- Part-remote team – some team members are remotees, while the others are working physically in an office.
- Sometimes-remote team – all members usually work in the office, but can get some home-office days, e.g. 1 or 2 times a week.
In this article we’re focusing on the first and second type of remote teams. We’ll not discuss sometimes-remote teams, because in that case completely different organization rules apply. We assume that our team is mostly remote, so the remote team organization must be put in place.
Let’s now move straight into the remote programmers team organization tips.
Plan constant communication time (if you have a goal in it)
Our team at Yumasoft is the second type – a part-remote team. Half of our team works remotely, while the other half works at the office with 2 days during the week working from home. Thanks to that, everyone – also “non-remote” guys, are remote-minded. Before kicking-off this remote work style, we agreed on a common, constant communication time. We established a daily meeting once per day.
We decided to meet at some constant hour, which suits everyone – also me being in different time-zones. There are a few goals of such a daily video meeting:
- to feel like being a team, seeing everyone at least once per day
- socialize, talk about normal, casual stuff like you’d talk in the office – not necessarily related to work
- to share the status of the work tasks if needed – it somehow helps to unblock someone or perform a live, group “code review”
- to organize help – if anyone needs it, we arrange the next calls/meetings individually during this daily status meeting
As mentioned above, the meeting is a video call. We use Skype or Microsoft Teams for that. It actually doesn’t matter which tool you use. The most important lesson here is that it’s good to create the team feeling between remote workers. Daily meeting is a great way to achieve that.
On the other hand, remember to only schedule such a meeting when you have a precise goal in it. Notice how I listed 4 goals we have in our daily meetings. Nowadays, when more companies are switching to remote work, such scheduled meetings can be a trial to move their office habits into the online world. This is not a good thing. Remote work gives us new possibilities, and we shouldn’t transfer every thing we used to do in the office to an online environment.
Be open to what your team things about the meeting. Ask if they find it useful or disturbing. As soon as it becomes an obstacle for them – try resigning from it and switch to as-hoc calls.
Launch an off-topic communication channel
When working in an office, there are moments for small talks. Coffee break, lunch or just talking in the corridor. You don’t have it in the remote team or… You can have it 😉 It’s important to keep all team members in the loop, also remote ones, so create an off-topic channel in your communication tool of choice. At Yumasoft, we have some Skype chats for that purpose. It’s very engaging and just funny to have a place where people can share everything, including memes and other interesting stuff 😉 Socializing is an important aspect of remote work organization.
Try to synchronize working hours
Even if some members of your remote team are in different time-zones, try to organize everyone’s working hours to have some common ground. It’s good to be flexible, but it’s also very efficient to have everyone together at least 3-4 hours every day. If possible, try to organize your team like that.
If that’s not possible or not desired by your team, see the next point.
Learn asynchronous communication
In a remote team, especially in a distributed team, where its members are located in different parts of the world, it’s important to communicate asynchronously. It means that often you’d ask someone about something, but they will not respond immediately. The reason for that could be the above-mentioned time-zones differences.
Asynchronous communication requires the sender to ask precise and clear questions. It’s worth learning how to write short and concrete emails or instant messages. It’s also a good idea to get the other team members used to communicate asynchronously. Especially if the team is like our – part-remote, the non-fully-remote people might get frustrated if you don’t answer or answer late. With time, practice and a lot of understanding from all the team members it all can be learned and dealt with 🙂
Async communication can make remote work organization much easier. It might limit the need to synchronize working hours as well. You can read more about asynchronous communication in this article.
Use proper, but not too many tools
In a remote team, it becomes much more important than ever to use proper work management tools. It includes both project management apps and communication tools.
It’s good to have the documentation and data about your tasks organized in some kind of system, which is not Word document files only. It’s good to use a system like GitHub, JIRA or Nozbe for tasks management and information exchange within the team. The exact choice is not that important – choose one that suits your team and is easy to use. It’s just important to not keep all information on emails or in Word documents – otherwise you can get lost quickly. Especially if the communication is asynchronous (as it should be in a remote team). Having proper tasks management system, the knowledge can be exchanged using task-based-communication, which suits very well the asynchronous communication model.
The same applies for online communicator tool. If Skype or Slack does its job for everyone – don’t overcomplicate and keep using it. At our team in Yumasoft, we tried few different communicators and while none of them is perfect, we keep using Microsoft Teams for online meetings and screen sharing. It works, so it’s not worth overcomplicating things.
Remote work organization – summary
I hope these tips are helpful for organizing work of your remote team. Remember to not overcomplicate things and always keep all members in the loop on what’s happening in the team 🙂
What are your ways of working remotely? Share in the comments!