Published: November 8, 2023
23 min read
In this article, you'll learn:
1
📖 How to Build a Distributed Scrum Team
2
🙋 How to Hire the Right Team Members?
3
❔ Managing Remote Teams: Top Challenges and How to Deal with Them
4
⚙️ How to Handle Code Review & Technical Debt in a Distributed Tech Team
5
🛠️ Software to make your team more organised
6
💡 Takeaways
As the pandemic made most of various companies change their work style, the establishment of a good remote team became a necessity. However, even if it wasn’t for the pandemic, the prosperity of a remote era wouldn't take too long. Bursting with the advantages compared to in-office work, managing a remote team will let you connect talents from all over the world, alongside making your workers’ experience unique and delightful.
Work from home allows team members to save about 40 minutes of daily commuting in average (image by Felic Art Team)
In case you made a decision to build a remote team from scratch for your business or startup, you may be drowning in questions:
In this article we’ll answer these questions and share some tips and tricks that will help you build an efficient remote tech team.
To make project management easier and well-planned, it’s important to pick a convenient agile methodology. Without a doubt the most notable approach nowadays is Scrum and in this section we will take a closer look at it in terms of distributed teams management.
Remote team management is getting easier with the use of any agile methodology (image by Unini)
To put it simply, Scrum is a framework that allows teams to productively create value with the use of adaptive solutions for complex problems. According to it,you can combine mandatory structure with additional elements for the experience that exactly fits your team.
Scrum is a representative of agile values, thus follows 4 main rules of the Agile Manifesto:
As a project managing framework, Scrum supposes self-organised remote teams providing a finished product within the fixed terms. You may already know that the methodology itself consists of three key concepts: roles, events and artifacts.
Main Scrum Artifacts | ||
---|---|---|
Product Backlog | Sprint Backlog | Product Increment |
This artifact looks like a list of various ideas, tasks, features or customer requirements that will help the scrum team to understand stakeholders’ wishes and to create value. The product backlog is an artifact that is updated whenever the new information regarding the project appears. | The sprint backlog contains the variety of organised tasks that need to be done during one sprint. Usually assignments for this artifact are taken from the product backlog, but changing them to fit a sprint time period. | The product increment stands for all the tasks from the product backlog that were completed through one sprint. Also this artifact contains the value of every previous product increment from the sprints that already took place. |
Even though you may be already familiar with roles and rituals, we’ll take a fresh look at them and explain how you can adapt scrum tools to a remote work environment.
Regarding the number of members in a scrum team it is recommended to adopt Amazon's “two pizza” rule: “A Team should be no bigger than two pizzas can feed”. On average this means your team should be in range from 7 to 10 people. However for effective remote team management you may need to split it even in smaller sub-teams up to 4-6 people. Generally a scrum team, consists of three main roles:
Product owner is the one who presents all the requirements from stakeholders and customers to a development team. He must have a clear vision of the product to create a development roadmap as conflicting priorities and unclear directions are one of the common challenges. Also, his task is to organize user stories and prioritize them by story points.
When working remotely, a PO keeps all his responsibilities regarding prioritization and communication. However, since communication in distributed teams may be challenging, it’s important to implement tools and practices that streamline it:
Development team is a group of specialists that fulfills every technical task that is required to finish the product. The “developer” role in scrum isn’t limited just to software engineers; UX/UI designers, QA specialists and DevOps engineers can also be a part of the Development Team.
Transparency and self-organisation are the two core things you should promote in your distributed development team. Later on, we’ll provide you with some tips and tools on how to build up these values in your company and keep your remote workers productive.
Scrum master is a so-called work coordinator for the whole scrum team. He lets a product owner and a development team members work without any distractions and reduces the unnecessary communication for them to focus on their projects.
Every part of communication with stakeholders outside the scrum team itself lays on his shoulders. Also, he is responsible for coaching the team and creating an environment that supports scrum.
The main task of a remote scrum master is to help remote team members addressing challenges regarding unnecessary communications (image by Oleg Tishchenkov)
Scrum master in a remote environment is a “playmaker” that faces even more obstacles in scrum project management than regular team members. The top skill that a Scrum Master needs to master when working in a distributed environment is asynchronous communication. They may do this by adopting following practices:
📝 Personal API | 📹 Async Videos | 💬 Public Communication |
---|---|---|
Create a document that exposes your communication preferences: working hours, when you typically check internal communication platforms, what is the best way to approach you urgently, etc. | Video calls are often needed when it’s necessary to show something. Yet, as it’s not always possible to get everyone on the call, you may record an async video to explain the problem or offer a solution. It can be done using tools like Zoom or Loom. | Passive |
Sprint is a basic unit of work that stands in scrum as one iteration. Sprint is a time period for solving tasks and getting a predetermined part of a project done by a scrum team. As a rule of thumb, sprints last 2 weeks, even though some companies stick to one- or three-week-long sprints.
However, just like any other part of the scrum methodology, sprints and related activities need to be adjusted to the specifics of remote work:
Sprint planning is a scrum event that marks the start of a sprint. Planning the sprint determines the amount of work for the upcoming time period, its duration, the starting point and the ways to solve the tasks.
In a remote environment it gets harder to align everyone and to provide the right amount of airtime for all of the team members. To reach productivity and not to turn the meeting into a mess of thoughts, some liberating structures may come in handy. For example, a 1-2-4-All technique allows you to generate and filter a lot of ideas by making team members share their thoughts in separate video conferencing rooms constantly changing the formations.
Sprint planning is a first event in Scrum project management (image by Pierre Kleinhouse)
Another common issue of online sprint planning sessions is that they may take up too much time.
A good way to address this issue is to have a predefined meeting agenda. Distribute it at least one day in advance, so the team can have a clear picture of what’s going on and offer their own amendments. This will reduce the number of unexpected questions and ensure a smooth meeting.
Also, you can opt for work in smaller groups. Sprint planning in groups of 4-6 people instead of 7+ can create an environment where people are not so easily distracted and can speak up without taking too much time.
Sprint review is an event that is held at the end of a sprint before the retrospective part. During review, a scrum team demonstrates the results to stakeholders and gathers feedback. The purpose of this event is to celebrate success, develop a culture of how to deliver work as well as make sure the team is on the same page with other stakeholders..
In a review both scrum team members and stakeholders are taking a closer look at what was already achieved during the previous sprint (image by Amanda ☻rtiz)
To make sure your remote sprint review goes well, we’ve prepared a few tips:
During the sprint retrospective a team discusses what went well during the sprint and what should be improved in the next sprints. The main point of this event is to make the upcoming sprint more productive than the previous one.
Sprint retrospective for remote employees should be an event of sharing ups and downs, but not making anyone guilty (image by Unini)
Let’s take a look at some tips for a productive remote sprint retrospective:
Daily scrum is a short event for every member of a scrum team. The main point of this everyday meeting is to track the progress of achieving sprint’s goals and applying any small changes to the plan or backlog if needed.
The structure of daily standups consists of 3 questions:
As daily scrum is the most frequent event in the whole methodology — it requires a proper organisation.
To have a proper understanding of each task progress and set the new ones for your remote workers - a daily team meeting is a necessity (image by Geekbot)
To save some time structuring the information regarding what every employee is working on at the moment, we recommend you asynchronous standups. The point is to have your team members share their progress or tasks in an arranged form throughout the day, so that a scrum master can have an understanding of what is everyone responsible for in a nick of time.
Asynchronous standups are useful as they not only let you save some precious time, but also allow employees from different time zones to report whenever they can without being distracted from the working flow or having their message overlooked.
When it comes to managing asynchronous standups there are 3 handy Slack bots to make the process easier: Geekbot, Standuply and Polly.
Building a remote tech team is not only about setting up internal processes but also about finding the right stars to join your team. Some of the most common questions at this stage are:
In this section we’ll provide you some recommendations on how to hire new employees and what, in our opinion, are the qualities of a great remote employee.
Actually, there is not much difference in qualities of remote and office employees. However, despite the similarity, the specificity of working remotely directs the spotlight onto the qualities that weren't the center of stage working at the office. In our opinion the following list makes great remote employees and shows what is needed to be productive on a distant job:
There are several effective ways for you to find potential new employees which are social networks and job boards. We've gathered the most known services for hiring a remote workers
Now that you found some candidates with suitable hard and soft skills that match your hiring requirements, there is also one crucial part that we can't look over. Cultural Fit Interview. Even if it seems that the candidate is ideal for the job offer, a cultural fit test is not something you should skip.
However, this test isn’t something that should be conducted separately from the main audition. To save both your and candidate’s precious time, implement some questions for the cultural fit into your usual interview flow.
Workers that do not share similar values and priorities with a company will create many obstacles in future cooperation and management (image by Uran Duo)
Every employer wishes to build a prosperous relationship between a company and an employee. However, if both parts of a mechanism move towards different directions, their collaboration will definitely be unsuccessful. For you as a manager to find out whether your cooperation is going to be huge we recommend adding another step before hiring a candidate - a cultural fit interview.
According to Indeed the most common cultural interview questions are:
You can use these questions or come up with your own that fit better, to have a deeper look at a candidate’s personality, priorities in life and personal values. Then, after analyzing their answers based on how much they coincide with the company’s culture and priorities you make a final decision whether to hire a person or search a little more for the right one.
Before building a team it is important to realize that remote work is usually accompanied with various efficiency-breakers such as time zone difference, employee’s distractions, motivations, etc.
In this section, we’ll make you more familiar with some hardships you and your team may encounter on your way to an efficient remote team and find the ways of getting rid of them.
The main advantage of building a remote team is that it doesn't let you miss a worthy employee because of their location on the world map. However, the more team members you have in different time zones, the harder it gets to bring them together for online meetings and collaboration.
Remote team management throughout different time zones makes you pay closer attention to your team members’ schedules (image by Chaim Devine)
We have some recommendations for you to make working with a time zone difference easier:
Ensure you have a working hours overlap with your main time zone. Even as a distributed team, you’ll likely have a HQ or a decent part of your team located in one time zone. Make sure that all other team members have ~3-4 hours of their working time overlapping with your preferable time zone.
Get to know the available working hours of every employee. It’s important to arrange a transparent schedule for the whole team, so everyone can set time when they are available for communication. After doing so, your team members can use any time zone conversion tool to find when their working hours cross for team gatherings. Some of the tools you can use are Timezone.io and World Time Buddy.
Let the asynchronous communication in. Managing a remote team with different time zones will get you to a situation where your employees won't be online at the same time. In times like this — asynchronous communication will let you deliver the information to your colleague in the most suitable time for him. With the use of Slack, Trello, Google Drive you can create a digest of important information so that it reaches every worker without the need of being online simultaneously.
Although a remote job is much more flexible and time-saving for employees, it can also make them feel uncomfortable in a certain way. Constant working on a task alone may cause several scenarios:
You have the power to rid your employees of feeling isolated by implementing appropriate social management events and techniques (image by Jonathan Holt)
Luckily, there are many solutions for these scenarios. For both cases it is great to include team building meetings to improve connection between the teammates such as:
Virtual Clubs | Chit-Chat Time |
---|---|
You can select once a week a day for some events to get closer as a team. For example, creating so-called club activities will let your employees share their interests with passion. It could be different voice or text channels like virtual book, film, music or even board-games club. Speaking of remote teams, hiring specialists from around the world may create language barriers as your employees may be not native English speakers. Thus, creating a virtual English club or similar activities will not only bring teammates together but also will let your team fight these barriers. | To create a positive and friendly atmosphere as well as to let your employees be more open-minded, we recommend you to provide a couple of extra minutes before your work-related meetings. Thus, you will let the teammates have a small-talk as if it happened casually in the office so that they can become a little closer. P.S. Showing your pets to colleagues also works amazing 😸 |
Pair Them Up! | Virtual Parties |
It is important for better cooperation, that your team members know and get along with each other. However, workers often prefer to stick to inner groups they make at work. Thus, they don’t try to get to know the other colleagues outside their “friend group”. To acquaint everyone deeper, we recommend you to randomly pair your employees for some activities. As an example, a Donut extension for Slack will grant you access to many different templates that will make your pairing experience easier. It can help you manage code reviewing practices by randomly matching your employees for this task, or automatically create a room for a small chit-chat between two colleagues. | Is there even a more bring-together activity than having a party for the whole team? We don’t think so. In a relaxed and non-formal atmosphere people tend to open for new friends much easier. The ideas for it vary from watching movies together to making a virtual cooking or painting session. If you want to be original in organising a party you can book a virtual comedy club, quiz or an escape room with the help of services like Escape Team Events. |
Distractions of your employees is something you can face in every working format. However, an office environment creates less opportunities to switch one’s attention to something else and helps to stay focused. A distant job also requires from an employee some self-organisation and focus skills, because not every person is able to resist the distractions that often occur while working at their homeplace.
When your employees work remotely their productivity mostly depends on their ability to focus, however you as a manager can help them to stay concentrated (image by Radostina Georgieva)
There is no silver bullet for this problem, yet, there are some tips on how to help workers stay focused:
Use time tracking software. It will help you to analyze how workers spend their time and where they might need your help to hit the goal faster. Software examples: ProofHub, DeskTime.
Make regular call-ins and daily check-ins to see the constant progress of the task. Thus, along with maintaining a decent communication level in your team, you can determine if an employee is struggling to accomplish a task and needs some help.
Learn the basics of asynchronous communication. The point of this communication is not to chase the need of your recipient being available at the time you send a message. Vice versa, you can take your time working on a task and reply to an email or a message when you are done or are not in “the zone”. This technique will let employees not be distracted by texts when they are non-urgent and can take a while to be responded to.
Reduce the approval layers. Try to minimize the level of approvals your employees have to proceed before getting back to a task. Unnecessary approvals only interrupt the working flow of your team and waste the time that could have been spent on upgrading the product.
Always working remotely, employees have to deal with motivating themselves. As solving tasks from home creates a relaxing atmosphere, it is important for you as a manager to help your team to stay motivated. Let’s acquaint ourselves with some tricks to keep your team’s motivation at its highest:
Provide feedback | According to Jack Zenger and Joseph Folkman’s survey: 92% of respondents agreed with the statement that negative feedback, if delivered appropriately, is effective at improving performance. | |||
Recognize your employees | It is not surprising that 69% of employees say they would work harder if they felt their efforts were being better recognized. It gives an employee a sense of pride and realization that their skills are needed and appreciated. When your workers are valued enough, the chances of them staying motivated, feeling like a part of the team and being interested in the overall success of the company drastically increase alongside with making them more productive and delighted. | |||
Encourage working in groups | According to Queens University of Charlotte, about 75% of employers rate teamwork and collaboration as “very important”, yet only 18% of employees get communication evaluations at their performance reviews. Previously we have already talked about social isolation and the value of a worker feeling relevant. To improve relationships between coworkers — use a simple trick. Team them up! There is no better way to acquaint your employees more to each other, than working on a task in groups. | |||
Be clear with your expectations | Whenever you set goals or provide a task — always be specific. It’s so unmotivating for employees to work on an assignment without understanding clearly what your expectations of the result are. And the very first step to keep your worker focused and dedicated is to clarify the expectations regarding their performance, behavior and company goals. | |||
Trust your team | Besides being recognized, one of the most motivating things for an employee is to feel trusted enough. And you as a manager can easily provide your team with this feeling. The rule is — do not interfere with the work of a specialist. Remember, you were the one who hired this employee as an appropriate one, so let them do their work without being distracted. Show your team that you completely trust their capabilities, and do not intrude, unless you were asked to. |
Code review is a common practice in tech teams for improving the code quality. This technique supposes giving to another team member a piece of code to check for bugs or errors and find any potential ways of improvement. Besides generally improving the code, this technique will also let your team members enhance their collaboration level. But how to set up code reviews remotely?
Pick one or two candidates for a code reviewing meeting. For example, if you use Jira as your project managing service, you can integrate Outlook features to your board to choose the responsible ones easily. Or you can connect a Donut extension for code reviewing to your team’s Slack channel and make the process even more convenient.
Determine an appropriate date and time for both sides. Pick a suitable time for both reviewers considering their time zones and preferred working hours. With the help of Outlook meetings for Jira you can have access to an interactive calendar for setting an appointment right away. After picking the reviewers and choosing the date for the task the preparations are done.
Although the productivity of code reviewing meetings mostly depends on your employees, you can still provide some recommendations to help the reviewers achieve better results:
To make the review productive, your employees should understand what they are trying to achieve doing the task. Providing your expectations will allow them to know what to look for and prioritize their evaluation criteria.
It is important that every team member once in a while is involved in such tasks, so that they don’t have a feeling of the social isolation that we have already described before and have a chance to grow closer with teammates.
Managing remote teams will get easier as your employees get to know their colleagues better (image by Unini)
Constructive feedback over the destructive one. The reviewers must acknowledge one simple fact: “You are reviewing a code, not a coder”. Do not let your employees provide any kind of assumptions regarding the partner's personal qualities. Constructive feedback about the code is a priority, nothing else matters.
Review no more than 400 lines of code at a time period. According to a SmartBear study of a Cisco Systems programming team the peak productivity is achieved when around 200-400 lines of code are reviewed at a time. It is not recommended to review more than 400 lines of code per session so that the productivity stays at its highest.
Do not review more than 60 minutes per session. The best approach to this process is to conduct a review more often but for shorter periods of time. After 60 minutes of reviewing a person’s attention level for details drops significantly, making the further revision less efficient.
_Decide how to split codes beforehand _ As we stated in a previous part, it is better to make reviews as short and effective as possible. However, to achieve that, you need to rationally split the code in a way that doesn't ruin the integrity of a part. We recommend you spend some time deciding how to divide the code into parts before giving out a task.
There is a variety of tools used for code reviews. The most notable examples are:
If none of those suit you for some reason, here are some alternative options — Gerrit, BitBucket, Code Climate.
The first thing you need to know: technical debt isn’t something you need to be afraid of. Of course it’s better not to have any debts, but this is the price you pay for prioritizing product delivery speed over the quality control.
There is no critical difference between the methods remote teams and non-remote ones are using to handle a technical debt (image by Holly Guacamolly)
To have a better understanding of what a technical debt can be and how it is managed in different situations, we recommend you to check out the related article in our blog:
To be honest, there’s not much difference in managing technical debt remotely, compared to a non-remote experience. Either way, it’s all about 2 things: prioritization and clear communication.
Determining the priorities regarding technical debt is the first thing tech teams should agree on before starting the project development. Basically, it splits into two paths:
Before you pick a path that suits you, and after a discussion you need to prepare your team for a chosen work format in advance. Especially when you manage a distributed team make sure that every member is acquainted with the developing path.
Managing a distributed team means using a lot of tools to organise daily work — from video calls and file sharing to scheduling. In this section we’ll share the top 3 tools to make your teamwork smooth.
It’s essential for every team to have a place for a fast exchange of files and documents. Key features that are worth considering for a file-sharing platform are uploading and storage limits. Here are the top three tools for a remote team to share files and data:
Box | Google Drive | DropBox | |
---|---|---|---|
Free account storage space | 10 GB | 15 GB | 2 GB |
Free account max file size | 250 MB | 5 TB | 50 GB (via website) |
As we’ve already mentioned earlier, the key to any team’s success lies in proper communication. The better tools for communication you use, the easier it will be to get in touch and work together. The most common and trust-worthy services for communication and video calls are:
Calendar management tools will help you and your remote team not to forget about any meetings you need to attend. Some interesting candidates are:
Managing remote employees always requires appropriate project management. When it comes to tracking the process of the task or controlling your remote employees work time, you can pick one of these options:
Without a doubt, building remote tech teams is not a piece of cake, especially if done from scratch. Nevertheless, with the right values and practices in hand you’re much more likely to create a healthy & productive environment for your team members, no matter where they are.
Let’s briefly summarize key points from this article that will help you to create a decent remote tech team:
We hope that the tips from this guide will serve you in a great way on your road to establishing a happy and productive remote tech team! In case you have some additional questions left or need a hand in your mobile or web product development — let us know. We are looking forward to helping you!
Was it helpful?
Read also
Our clients say
When I was working with Stormotion, I forgot they were an external agency. They put such effort into my product it might as well have been their own. I’ve never worked with such a client-focused company before.
Alexander Wolff, CPO
Sjut