Strategies for transitioning your technical team to remote work

Transitioning to remote work can be a significant challenge for both individuals and technical teams. It changes the way we work, and more significantly how we communicate with each other. For most teams it’s going to feel a bit bumpy at first. A functioning remote team doesn’t happen by accident - there are many strategies for effective remote work that we can employ to ease the transition and foster an inclusive remote workplace.

Synchronous vs. Asynchronous Communication

A newly remote team may need to adapt the way they communicate in order to keep everyone informed while minimizing noise. It can take some practice to feel out this balance, but it mostly comes down to having a good blend of both synchronous and asynchronous communication methods.

Synchronous communication such as a video call can be a great way to have some face-to-face time with your team and brainstorm together. Similarly, a synchronous Slack conversation might be the fastest way to diagnose a technical issue.

This is often what a newly remote team will default to: the idea that we have to meet more and be “louder” in order to be effective. Somewhat counter-intuitively, this can have the opposite effect. More synchronous communication can make it harder to keep track of all the conversations that are happening right now, create stress around the fear of missing out, and leave little time for focused work.

To get the most out of synchronous communication when working remote:

  1. Build a team culture of trust. With a synchronous communication like Slack it can be tempting to use private messages or private channels, but these create information silos and often feel exclusive. At thoughtbot we follow some of our favorite Slack tips for building trust.
  2. Is it urgent? Receiving a Slack message — especially that @mentions you or the entire team — can feel urgent and may be disruptive when it’s not actually urgent. If the conversation doesn’t need to happen right now, it may be better as part of a ticket, email, or your next team meeting.
  3. Reflect online conversations offline. Conversations that happen in Slack or as part of a video call often get lost in the shuffle. Be intentional about reflecting the outcome (as well as the reasoning behind it) in a ticket, documentation, or other place where it can be easily recalled later.

Asynchronous communication such as Basecamp, GitHub, or the team’s ticketing system of choice are all places that act as documentation of what is being worked on, and also the history of decisions that went into that work. Unlike synchronous communication, you can consult these sources long after the conversations happen. There are many advantages over synchronous communication that really shine when working remotely. Your team is probably using these types of tools already, and remote work is the perfect opportunity to level up your team’s interaction with them.

To get the most out of asynchronous communication when working remote:

  1. Be thorough and descriptive. Taking the time upfront to write a good ticket description, pull request, or question thread will make the subsequent work and communication easier. Be sure to voice not just the what but also the why, which often gets discussed synchronously but goes undocumented.
  2. Ask, don’t tell. This is the most important component of building a strong code review culture, but it applies to all communication. We want to create a space where conversation is welcomed, and that’s especially a challenge when communicating with only text. Asking a question like “What do you think about X?” as opposed to making the statement “I think we should do X.” fosters conversation rather than shutting it down.
  3. Know when to take it online. Some discussions will be easier to have face-to-face. When that is the case, don’t be afraid to suggest it! But make sure to document the conversation for future readers.

Managing Remote Meetings

For an agile team, daily standups build trust and maintain momentum. For a fully remote team, they also serve as much needed face-to-face time together.

Managing remote meetings with a medium to large size team can be challenging. In his article on Remote Tools and Tips in These Remote Times, German Velasco offers excellent meeting tips for remote teams.

This is not just limited to your weekly sprint meetings. Workshops, kickoffs, and design sprints can all operate effectively with a remote team as well. With some extra planning up front and inclusive meeting guidelines, you’ll be up and running smoothly.

Spend time together with your team

Being remote doesn’t have to mean being alone. Consider building opportunities for the team to get together remotely. This could be a daily video call to eat lunch together or a virtual office video conferencing tool such as Remo. Even something as simple as talking or sharing stories in Slack can help to build a sense of togetherness.

If you’re a development team, and you haven’t tried pair programming, it’s a great way to get some face-to-face time with other people on your team and produce higher quality code together. It can feel intimidating at first, but there are some great resources such as tuple’s pair programming guide to walk you through the fundamentals.

Keep the conversation going

Whether your team is going remote temporarily or permanently, these strategies can help you communicate and collaborate effectively with your colleagues. Even if your time remote is temporary, the advantages that come from leveling up your team’s communication skills will be permanent. There is no one way of doing things that will work for every team, so make sure to keep the conversation going around what is working and what isn’t during sprint retrospectives.

At thoughtbot, we’ve developed best-in-class practices for collaborating remotely. Our product team Q&A Being Human in the Absence of Humans explores remote strategies such as adapting agile processes for remote work, and staying close to your customers and users. Let’s talk about leveling up your remote team.