With Covid-19 in the picture, tech companies such as Amazon, Twitter, and Facebook had to switch to remote work, but software development was one of the most remote-oriented industries even before the pandemic.
However, managing a development team is no picnic, and managing a remote one is even more challenging. Still, remote work is here to stay, so you’ll need to make necessary adjustments to stay successful.
To help you out, in this article we will share seven proven tips for managing remote software development teams.
Table of Contents
Hire self-sufficient devs
Your employees need to be self-sufficient because there is simply less guidance in remote teams. When people work from home, asking the person sitting next to them for help is not an option.
So, while hiring, make sure to look for signs that candidates are suitable for remote work.
For instance, Agnieszka Kasperek, the CMO of the Estonia-based Taskeo.co, also recommends hiring only devs who demonstrate the qualities essential for remote work. In fact, she finds those qualities even more important than their professional skills.
“That is, people who aren’t intimidated by software or learning how to use it, self-starters, motivated and independent. In remotely working companies, certain character traits are more important than the skills that the new person comes with. The skills can be learned. Character traits—not so much.”
Sheena Ponnappan, the CPO of Everise, also looks for similar traits while hiring.
But what are those traits exactly?
Well, one of the main traits most employers look for in a candidate for remote work is having good communication skills.
This comes as no surprise since anyone who works remotely needs to be able to get their point across to other team members through email, video chat, and other online means of communication. And it’s no different for a remote software engineer.
For instance, at Help Scout, a global software remote company, they prioritize good communication because their developers mostly communicate over chat.
“Good communication, especially writing, is key! Most of our communication happens over chat so we look critically at their ability to explain complicated things clearly in writing.
Some other things remote software companies tend to pay attention to while hiring new devs are previous experience in remote work, strong work ethic, critical thinking, and finding solutions instead of being told what to do.
Being a problem solver is one of the most valuable skills for remote employees, as they are more often left to their own devices.
So while hiring a remote developer, look for one that is independent, has excellent communication skills, and is able to work with little direction, not one that needs help and attention all the time.
Invest 110% in onboarding
After you hire self-sufficient devs, the next thing you need to do is integrate them into your company. You can’t do that without a good onboarding process.
Remote onboarding is a bit more challenging than the kind done face-to-face, but with the help of technology, you can still provide a splendid experience for your new employees.
Remember, the development of your product will depend on the information your team gets, so make sure to provide them with clear, structured processes and give them access to all the documentation and tools they’ll need as soon as they join the team.
For instance, a global workforce management technology company ServiceNow uses its own onboarding software system to help the new hires with the required paperwork.
In ServiceNow, they’ve employed remote workers even before the pandemic, and they are used to doing the onboarding process virtually. However, there was an area in which they needed to make some improvements, and that was the orientation process for new employees.
According to Pat Wadors, their CTO and CHRO, they now conduct orientation completely digitally, via Zoom, and invite many guest speakers to make it more engaging.
“We bring in partners from across the organization, including product, global talent, finance, IT, and sales, to name a few.”
Their virtual onboarding starts with a six-hour session on the first day, followed by a 90-minute session on the second day, during which new hires can ask additional questions and hear from some other important figures within the company.
At GitLab, they also like to use their own product for the onboarding process. All onboarding tasks are completed in a GitLab issue, their own kind of collaboration medium.
The onboarding issue template consists of a set of tasks and steps for each new developer, and the whole process is self-driven and as asynchronous as possible.
Another thing GitLab is well-known for is its detailed handbook. Unlike traditional in-person companies, remote ones need to make information easily accessible, so they’ve implemented a handbook-first approach.
This means that the whole company uses the handbook, and it’s constantly changing and evolving as the team learns new things.
It contains over 2000 web pages of text and serves as the company’s central repository and a single source of truth for all team members.
To sum up, remote onboarding is all about the technology, tools, and processes. Make sure to have everything documented and prepared so your new devs can be integrated into the team as soon as possible.
In this section, we will discuss the impact that scheduling communication has on managing your remote software development team.
David Grossman did a survey on the costs of inadequate internal communication within companies and found that the average company with over 100,000 employees loses around 62.4 million dollars a year to miscommunication.
His follow-up surveys have shown that even smaller companies with 100 employees lose around 420,000 dollars a year because of the same reason.
Bug and crash reporting tool for your mobile app.
So we can say that almost every company loses lots of money due to communication issues. But how does this happen?
Well, poor communication leads to lower productivity and an increase in the number of errors, especially within remote teams.
The cause for this is often poor timing.
For instance, if you want to communicate some crucial information while your employee is preoccupied with his or her tasks, it might result in a misunderstanding, or simply lead to forgetting some important details.
The solution is to schedule regular meetings with your software team via Zoom or other platforms, like the one pictured below. Make sure to keep them short, precise, and relevant.
However, keep in mind that these types of meetings also have their downsides, especially if your devs aren’t in the same timezone. In those circumstances, insisting on meeting too often can actually lead to decreased productivity.
For example, the remote team at Solitaired has improved their productivity by 23% just by reducing the number of video meetings and switching to chat ones.
“Overall, over the past year, we found that we were able to improve developer velocity by 15%, employee engagement by 21%, and self-reported scores on productivity by 29%.”
They’ve concluded that their pre-pandemic work schedule was doing them more harm than good. Back then, their logic was that communication would improve if everyone worked at the same time.
However, over time, they’ve noticed that this was not practical for some devs on their team and decided to switch to flexible work windows.
But the change of working hours was not the only thing that led the team at Solitaired to switch up the type of meetings they used.
Their developers were complaining that there were too many video meetings which made it hard for them to find enough time to do other work, so the team has switched their video stand-ups on Google Meet to chat-based ones on Slack.
Therefore, while scheduling communication is essential to keep remote developers engaged, you should be careful not to overdo it, so keep it short and to the point.
One of the rules in remote work, for every industry, is to over-communicate. In the previous section, we have said that you need to keep your communication short and precise, so this tip might seem a bit contradictory, but it’s not.
The key to overcommunicating is to provide all the necessary information, even the details that seem already implied.
Over-communication is especially important during some kind of change on a departmental or organizational level. If you neglect regular communication at that time, important details might get lost, and your developers could end up feeling confused.
Also, make sure to always provide more information in your Slack messages and emails than you would usually do when talking face to face, in order to ensure more clarity.
Finally, always communicate all the Ws:
And, of course, there are some great tools to help you inform everyone of important updates and other things you want to mention to your devs.
For asynchronous communication, we suggest making explanatory videos using software such as Loom.
Eric Nograles, director of engineering at Crossbeam, claims that he wouldn’t be able to manage his remote team without Loom since it enables rich nonsynchronous messaging that offers better context than mere writing.
“Using it for demos in our Code Reviews has yielded far less buggy code and a QA mindset.”
So even though over-communication sounds like a bad thing, it’s only unproductive if the information you are sharing isn’t that important or if your timing is poor.
Try not to spam your developers with irrelevant stuff but at the same time, make sure to over-communicate important matters, to make sure they’ve fully understood you, and to avoid any misunderstandings.
Provide constant feedback
While remote workers need to be independent and seek solutions to problems on their own, you still need to guide them to maximize their productivity. And an excellent way to do that is to provide them with constant feedback.
However, this can be a double-edged sword: if done poorly, constant feedback can end up misinterpreted and create confusion.
It’s important to mention that employees react to negative events five times more strongly than positive ones. That’s simply how human nature works. So, if you need to give negative feedback, try to be wise about it.
Many other authors agree with this.
For instance, Kim Scott, author of Radical Candor, suggests that employers follow one criticism with 3-5 praises. While providing negative feedback, you need to highlight your developers’ strengths and show them that they matter.
So don’t flat out say to your devs that they did something wrong; focus on why you’re giving feedback—to improve performance from now on.
For example, you can say what needs improving positively, mention something they did right and give them recognition.
And when it comes to the stuff they need to improve, always provide at least one clear and recent example of an alternative approach. People learn best when given examples, and the chances of a misunderstanding decrease in that way.
So let’s look at some key elements feedback should have.
It should be specific—never about a person, always about a particular issue. It also needs to be timely, meaning that you need to address problems as soon as possible, don’t wait a month to give feedback.
Use simple language to make sure your dev can easily understand you and ensure it’s oriented to a specific goal you’re trying to achieve.
To sum up, remote teams rely on constant feedback, and it can’t always be positive. Nobody likes to receive negative feedback, but it’s important to improve your developers’ productivity and efficiency. Be wise about it; remember, you don’t want to hurt your dev’s feelings; you only want to improve their skills.
Arrange annual get-togethers
Even with all the technology out there, remote teams still lack personal connections. Sure, virtual get-togethers are a great substitute, but you should still make an effort to arrange some in person.
When arranging a get-together, we’re not talking about going on a company picnic or having your team over for a few beers at your local bar. In order to establish trust and share ideas and information, you need your team to do something fun and exciting.
To get some inspiration, take a look at the pictures from Screencloud’s first offsite get-together; it sure seems like they had loads of fun.
However, finding fun, creative ideas for company events can be a challenge. Everything seems to be expensive or not everyone’s cup of tea.
Honestly, we wouldn’t advise you to go for the extremes and take your team skydiving or bungee jumping anyway. A good old company party will do just fine, and to spice things up a little, you can add a theme.
But if themed parties aren’t your thing, you can arrange an employee talent show.
We are sure that writing code isn’t the only skill your devs have. Maybe they sing in their spare time? Perhaps they are fantastic dancers?
You never know what talents they keep hidden behind computer screens.
It’s also important to note that you don’t need to have company get-togethers too often, keep in mind that everyone is busy living their lives and spending time with family and friends.
So it’s best to arrange such events sparingly. For example, Aha!, a cloud-based software company, meets up like this twice a year.
Another thing you can learn from Aha! is to always make your get-togethers both productive and fun. Just look at their team having fun hiking and exploring.
As the company points out on their blog:
“When you are working with a remote team, it is essential that everyone works to build meaningful relationships. Spending dedicated time together really helps.”
A great way to make a get-together both productive and fun is to, for instance, set different objectives or themes for the event.
One dinner can be about cross-company gratitude, and on another one, you can give your devs some topics to stimulate conversation. The last dinner can be a random one; your team will already have some common topics by then.
Long story short, a sense of community is always important, and arranging in-person get-togethers every once in a while will keep your remote team on the right track.
Use lots of collaboration tools
And of course, we must not forget that collaboration tools are essential while managing a remote software developer team.
Technology has made life easier for everyone, and an effective remote team will always use a whole set of tools. This includes email service, file sharing, a platform for instant messaging, project management software, and video conferencing.
Here are some suggestions.
Utilizing the right set of tools can help to structure workflow for a remote team efficiently. Developers especially love to use Trello and Slack.
This is not surprising since, for example, Trello is one of the most straightforward project management tools for managing remote teams out there.
Another plus is that it has a free version well suited for smaller teams and that’s it’s available for desktop and mobile.
Instead of piling on more systems and tools, some companies prefer to use Trello to meet all of their needs.
For example, the world’s leading conversion software for architectural and engineering designs, Scan2CAD loves to use Trello in creative ways.
Their CEO Luke Kennedy is dedicated to simplifying their product for their customers, but he also figured out that there is no reason not to simplify business processes for his employees as well.
In his opinion, the best way to describe Trello in one sentence would probably be:
“One tool, endless uses.”
So, Scan2CAD uses Trello to manage everything, from simple to-do lists to more complex workflows. For instance, their developers have adapted Trello to suit their needs.
They create Trello cards for every release and use the checklist feature for deployment and launch.
Basically, thanks to the use of a single tool and with a few minor adjustments, the company has managed to save time and money.
And when it comes to instant messaging, Slack is the way to go for most teams. This communication platform owes its popularity to the ability to create various Channels and dedicated spaces for remote teams to collaborate and communicate.
The fact that it’s available for Windows, macOS, iOS, and Android makes Slack even more appealing. If you’re still not convinced, just look at some of the nice things developers are saying about it on Quora.
So, clearly, in order to successfully manage your remote software development team, you’ll need to use lots of collaboration tools. Pick them wisely and use them to their fullest capabilities.
Building a successful remote software development team doesn’t happen overnight. It takes time, dedication, and effort from both ends.
Since your developers are not near you in person, you’ll need to learn how to communicate on a whole different level and provide some top-notch collaboration tools.
Don’t neglect the importance of feedback, and make sure to invest in onboarding. Also, try to hire independent devs and treat them to a get together once in a while.
So, as you can see, there are many challenges you’ll need to overcome, but if you follow these seven proven tips we’ve shared with you, you’ll do just fine.