Skip to content

WHITEPAPERS

The CTO’s Guide to Leading a Distributed Team

Many companies have asked employees to work remotely amid the uncertainties presented by COVID-19. This new approach to work requires CTOs to use a new playbook.

Avatar photo

The Very Team

Avatar photo

The Very Team

June 12, 2020
11 min read

Top Challenges of Going Remote

Many companies and universities have asked employees to work remotely amid the uncertainties presented by COVID-19. Even though close to 25% of the United States workforce worked from home at least part of the time already, new mandates to work from home are leaving many managers working out of the office and separated from their employees for the first time.

We’ve been working remotely for so long that it’s difficult to imagine what it’d be like to be thrown into a remote working environment without warning. Ideally, companies should establish clear remote work policies in advance, but in times of crisis, few companies have that luxury. Luckily there are specific, proven techniques that engineering leaders can use to improve productivity and engagement for remote employees.

It’s important for leaders to understand the factors that can make remote work uniquely demanding. You may see job performance and engagement decline at first, even among high-performing employees.

Face-to-Face Interaction

Virtual teams don’t have informal conversations that office-based employees take for granted, like sharing information over lunch or problem-solving on a coffee run. It’s easy to miss out on non-verbal cues that let you know whether a person on your team is on board or annoyed. The natural tendency is for managers to check in more often when they don’t have direct visibility into team and individual performance, but doing so obliterates one of the key advantages your team will gain when going remote – focus.

Remoteness yields increased opportunities for focus,” says Ryan Prosser, CEO of Very. “Rather than checking in with your team often – and interrupting their focused time – I recommend having a single weekly checkpoint with each member of your team. Collect all of your items into one list and have them do the same. This gives them the space to take advantage of increased focus.”

Remote 1x1s

As with all of our meetings, these one-on-ones always happen via video conferencing with each person’s camera turned on. By adding the face-to-face interaction back into the equation, you get the benefit of non-verbal cues during your meetings. This is just one piece of our Remote Code of Conduct.

Our remote code of conduct

A Professional Workspace

Each new team member designs their own distraction-free workspace using a generous stipend, and all employees get an annual office stipend to make improvements.

Video and Bandwidth

To make consistent video conferencing possible, all team members must have access to at least a 15Mbps connection. We encourage our team to get the fastest internet available, and we pay for it.

Audio Requirements

Clear communication requires clear audio. Team members must use a headset with a microphone or a podcast-quality desktop mic. We also encourage the use of Krisp to block out distracting noises.

Core Working Hours

When we work together, it helps to work together. Our core working hours are from 9 to 5 EST. A week consists of 33-40 high-quality client hours, and up to 8 hours for professional development and internal projects.

Remote Pair Programming

Pair programming is an excellent boon to code quality. But in a remote work environment, how can your team pair effectively when they are thousands of miles away from each other? After some very successful pair programming experiments during our work on a facial recognition-based beer tap project, we created a remote pairing guide to help our developers be even more successful in helping our clients. Some of the key pieces include:

  • Schedules: Before they start pairing with a new partner, your engineers should share their timezone and their normal daily schedule. Some parts of their schedule may be set in stone. For the parts that aren’t, they should consider making adjustments to accommodate their pair’s schedule.
  • Environment: It’s hard to focus when your pair is in an audibly or visually noisy environment. This effect is amplified when the noise is blasted through headphones into your ears. For this, and other reasons, Very has a remote code of conduct.
  • Equipment: To be best practitioners of pair programming, Very expects our programmers to make use of high-quality equipment. While we do not universally mandate particular equipment, some of our suggestions include:
    • A wireless headset with a mic such as the Logitech G533 or a desktop mic like the Blue Yeti with a headset.
    • Reliable, high-speed Internet.

We at Very have found that with some thought and preparation pairing between programmers at opposite ends of the country can be just as effective as pair programming in person. The tools are continuously evolving, as are our methods and practices. Read the full guide here.

Challenge 2: Lack of Access to Information

Newly distributed teams are often surprised by how much extra time and effort they spend trying to locate information from coworkers. Getting an answer to what seems like a simple question can feel like a big obstacle for remote workers, stalling work and blocking projects. Here are some of the tools we use to ensure each team member has access to the information they need to do their jobs effectively:

Communication Hub

When you go remote, you need a nerve center for communication. For us, it’s Slack. We have channels dedicated to each department in our organization along with “just for fun” channels. However, it’s incredibly easy to miss out on important information due to the sheer volume of messages being shared. That’s why we created an In Case You Missed It (ICYMI) bot.

The ICYMI bot was created to flag internal content that might otherwise get overlooked in a constant stream of Slack messages. When employees come across content that feels relevant to the entire team, they mark it with a specific :icymi: emoji. This emoji response triggers an action that records a link to that Slack message in a database. Messages can be upvoted in importance by the number of :icymi: emoji responses that they get from the team. On Mondays, the ICYMI bot automatically publishes a weekly digest to our #general channel with all the ICYMI posts from the previous week, in order of importance. It has been an invaluable resource for flagging important content within the company.

Knowledge Hub

We use Guru for all policies and process documentation. Instead of having these live in stale documents only to be forgotten, Guru captures all of our company’s info and expertise and creates a single source of truth. It’s also easy to navigate. Each piece of information in Guru is held in a card that has an owner within our organization and a cadence at which it needs to be re-verified – because policies and processes change. It’s easy to see if a card is out-of-date or inaccurate and ask the owner to re-verify the content.

There’s also a Guru Slack integration, which makes it simple to pull information into a conversation with a simple slash command.

Project Management

Whether you use Jira, Pivotal Tracker, Trello, or another service, it’s essential to have a tool that serves as the backbone for your development workflow. All work needing to be done is represented as a story, and stories can have task lists, attachments, and conversation threads. They are grouped and organized to fit the evolution of the product you’re building.

Code Repository

We always store one of our most important assets – an application’s code – on Github. Its version control tooling allows multiple developers to work on your application at the same time without overriding each other’s work.

Challenge 3: Social Isolation

Loneliness is one of the most prevalent complaints about remote work. Newly remote employees miss informal social interaction they used to get in an office setting. Over a long period of time, isolation can cause any employee to feel less like they “belong” to their organization, and research shows that it can even result in increased intention to look for a different job.

We combat social isolation in a variety of ways. Here are a few things we recommend:

Have a Policy for Sharing Video (and Stick to It)

Whenever the whole company gets together, we need strong video conferencing software that can support everyone’s video without crashing. After trying many different solutions, we’ve standardized on Zoom. One of our requirements is that each employee must use their video when on calls – whether it be a 1:1 or a group setting. When you are on a voice-only call, you aren’t able to see the other person’s facial reactions or body language, which can create quite a disconnect.

Schedule Regular Team Meetings

Each department sets its own cadence for regular meetings. Most teams get together every two weeks for about 30 minutes where they hear announcements from the department head, review departmental metrics, and work through any issues that need to be addressed by the team.

In addition to departmental meetings, we have company-wide meetings that follow one of two formats:

  • Firesides: These hour-long meetings are the only time we meet as a company each month. We use a bit of time to recognize excellent work across the company and to get to know a new member of the team. Then we do company updates from each department including an overview of our financial performance over the last month.
  • Townhalls: We reserve this meeting format for big changes we’re looking to roll out that we’re looking to get feedback on. We post the topic of each townhall to our internal forum and get initial feedback there. Then we have a meeting where we go over the proposed approach and invite the team to poke holes in our strategy. This is a great way to pressure-test our strategies and to help our team feel like a part of the decision-making process.

Support Peer-to-Peer Recognition

We are always trying to come up with more ways to unite team members. We use Bonus.ly to give recognition where it is deserved. Each month, each employee gets Bonus.ly “dollars” to dole out to whomever for whatever reason. These dollars can be dolled out using a simple slash command in Slack. Not only are these bonuses great because employees can use them towards gift cards, but everyone in the company can see who is getting rewarded and why.

Host Social Events

We’ve created a Remote Game Night for anyone who wants to unwind after a hard day’s work. Each game night, we have a different game master who puts together a slideshow of different trivia questions. Learn how to coordinate your own Remote Trivia Night in this blog post.

Challenge 4: Securely Working Remotely

There are a host of cybersecurity concerns with allowing employees to connect remotely. There are two main areas you should be paying attention to: technical limitations and user knowledge.

From a technical perspective, connecting remotely, rather than from within a secure network, involves using different equipment and devices to communicate. Working remotely brings with it the scary prospect of using the public internet as the main communication medium.

On the flip side is the person doing the connecting. Most of your employees who are suddenly having to work remotely won’t know that their actions could inadvertently cause security problems. Employees with limited technical knowledge would find it difficult to do complex configurations to connect.

Unfortunately, at this moment you don’t have the luxury of time to implement new remote work procedures. You need steps you can take immediately to help those who you need to send home now or have already sent home. So what are things you can do right away that can help you make your workforce more secure now?

Solution Shouldn’t Require Heavy IT Support

Realistically, you can’t call your entire IT team back into the office to implement a large scale solution that takes days or even weeks to set up and deploy (much less maintain while they are all remote). You need a solution that is plug and play.

You need a secure virtual server that can be set up and running quickly, and virtually eliminates the need for centralized IT support for configuration and activation. It should have incredibly low overhead for maintenance and support, which means your team doesn’t need to deal with constant upgrades, updates, and patches.

Solution Should Be Device and Architecture Agnostic

Given that you may have multiple different types of endpoint devices that you need to connect to your network, you’ll need a solution that works with any and all of them.

You also won’t be able to pick and choose elements of your existing network, like operating systems and servers, that you can change to support a new solution. You’ll need to make sure that whatever solution you choose to deploy can work with any architecture that you currently have in place.

Solution Should Require Little-to-No Training

As previously mentioned, the best thing you can do to ensure users stay secure is to take as much of the burden off of them as possible. Especially in the current atmosphere, where a solution must be deployed quickly, a requirement for lengthy or intense training won’t work.

Give them the basics: Provide a brief Cybersecurity 101, remotely of course, that teaches them some of the most important basics (e.g. always use the VPN, how to identify spam, etc.). Make everyone feel comfortable enough to ask questions and speak up.

Make sure the team knows how to report problems. Create a culture of “if you see something say something.” If a user notices strange activity on their device or a suspicious email, they should be ready and willing to notify the security administrators or systems administrators.

Challenge 5: Distractions at Home

We’ve all seen the pictures representing remote work that show a parent wrangling a child or a pet while trying to type on their laptop and sitting on the couch or living room floor. This is a poor representation of an ideal remote work situation. We ask that employees have a dedicated workspace that’s distraction-free. However, with the sudden transition to remote work (plus the closure of most schools), many employees are dealing with suboptimal working conditions and parenting responsibilities.

It’s more important than ever to set clear expectations with your employees. For instance, we ask that during client-facing calls, our team is 100% present without interruptions. However, we’re more flexible during internal calls. Overall, it’s important to balance the need for efficiency and productivity with compassion for employees who are dealing with uniquely challenging circumstances.

In Conclusion

Especially in the context of an abrupt shift to remote work, it’s important for engineering leaders to acknowledge stress, listen to employees’ concerns, and empathize with them. If you see a newly remote employee is clearly struggling, ask them how they’re doing. Even a general question like, “How is the remote work situation working for you?” can help you learn important information that you might not otherwise hear.