Several major trends in recent years have suddenly made work-from-home and distributed development teams the norm for a lot of companies.
The shortage of skilled developers in some cities has made it impossible for many companies to find the talent they need locally. Other companies find that they simply can’t afford to hire locally.
Of course, the COVID pandemic forced us to adapt to a changing world faster than anyone could have expected.
As the world has begun to return to “normal,” many companies are opting to remain mostly or entirely virtual.
Pros and Cons Of A Remote Software Development Model
Whether you prefer to work entirely on-site or entirely remote, there are always trade-offs. Here are some of the most commonly-cited pros and cons of managing a remote team:
- Your potential hiring pool just went from a 15-30 mile radius to the entire globe. Many major markets have a negative unemployment rate in our industry – there are more job openings than people available to fill them. Casting a wider net is essential for many tech companies’ survival.
- Your dollars go further. Even within the United States, if you can hire a coding prodigy from Springfield, Illinois, their cost of living and salary expectations are tiny compared to candidates in New York or the Bay area. If you can hire elite developers from the Philippines, you can conserve capital or accelerate growth by adding more talent to your team more quickly.
- Productivity improves. In a recent survey, 68% of developers said they get more meaningful work done at home. There are fewer distractions (let’s be honest – many people believe the open office environment was invented specifically as a form of torture for software engineers), commute time is eliminated, and developers have more freedom to choose when and how they work most effectively.
- Employee satisfaction improves. Many surveys and studies have indicated that developers have been happier since they were given the opportunity to work from home. 75% want to continue working from home. 48% reported feeling happier and less stressed despite the whole global pandemic and economic crisis thing.
- Collaboration (particularly on complex challenges) can be more difficult. No question – it’s hard to replace the energy of a group of smart people brainstorming in a room together with a whiteboard. We’ll highlight a few tools below that we’ve found helpful in bridging that gap.
- Some report feelings of isolation and loneliness. While many developers were thrilled by the idea of avoiding human interaction (*…raises hand…*), most normal people want to connect with other human beings once in a while.
- Not all home work environments are equal. From poor internet connections to shared space limitations, cats who’ve taken up residence on keyboards or toddler triplets, some WFH setups are less ideal for focused, uninterrupted work.
- Younger workers fear they’re losing out on career advancement. Mentoring relationships and knowledge transfer often take shape organically based on proximity. This leaves many junior developers worrying that they won’t learn or advance nearly as quickly if they’re “out of sight and out of mind.” This issue can be mitigated with some more intentional, structured processes for communication and interaction.
Some companies pursue a hybrid model where the leadership team is all local and able to meet on-site. The tech architect and/or most senior developer(s) are based at company HQ, while they source the best talent from anywhere in the world to augment their team. At Full Scale, we’ve seen many of our most successful clients use this model to radically accelerate their growth.
Getting The Best Results From Your Remote Software Development Team
The companies succeeding in this environment share a number of common traits, tools, and approaches. We asked some leaders and developers to weigh in on what makes remote software development teams successful and share a few highlights below:
Communication Is Everything
Whether you’re face-to-face or scattered across the globe, you can’t build great software without great communication!
It doesn’t matter what you’re building or where you’re building it – if you’re not clearly communicating expectations, project requirements, status updates, etc., you’re dead in the water. If you can’t gather around a conference table or a whiteboard, you need to bring in some tools to bridge the gap.
Structure – More Important Than Ever
While many studies have found that both companies and employees report increased productivity from working at home, creating and enforcing structure is even more critical for developing software when your team is remote. Here are a few recommendations to keep your team aligned, no matter where they’re located:
At Full Scale, all of our team members submit daily reports through our talent management portal. It’s just a five-minute pulse check on today’s progress, tomorrow’s plan, and any blockers holding things up.
Keep On Standing Up
The daily standup has long been a staple of the agile development process. True, with everyone working from home, you may relax the requirement that team members must be physically standing, but that team check-in is still important. Whether you do a quick Zoom video call or you opt for an asynchronous method like GeekBot, you don’t want to lose out on the alignment that comes from these meetings.
Regular Pulse Checks
Pre-pandemic, Full Scale’s floor managers would make their rounds at the office, checking in on developers and how they felt projects were progressing. The “floor” is a bit more spread out these days, but we still conduct these check-ins, supplemented with a brief survey filled out by the development team and the product owner or client. When we ask “Are all project requirements clear?” and the product owner scores it a 5/5 while the developers score it a 2/5, we know there’s a problem that needs to be escalated and addressed.
Share The Big Picture
Working remotely, it’s easier to get tunnel vision. We can forget that we’re part of something larger than the code we’re writing. It’s important to regularly remind your team of the WHY behind their work, to share customer feedback, and to include them in the long-term vision of the company.
This sort of vision-sharing keeps people motivated and inspired, which can be a lot more difficult when they’re alone in a home office or bedroom 90% of the time. Sharing the vision can also lead to sparks of brilliance – the “what if we did X…” ideas that revolutionize a business never come from an employee who’s kept in the dark.
There Is No One Right Answer
It should come as no surprise to anyone that, on average, developers hate meetings more than the typical person in another field. The ability to focus at home is a huge perk for many, but it can’t be an excuse to let communication break down!
Find the tools and methods that work best for your team, then be consistent! Structure and consistency are more important than ever. If you see signs of deadlines slipping or miscommunication, figure out where those balls are being dropped and supplement with additional touchpoints.
Visualization and Communication Tools For Remote Software Teams
For some teams, the hardest part about working remotely is losing the simplicity of the whiteboard brainstorming sessions. Here are our favorite tools to translate the whiteboard experience to a remote development environment.
InVision has a powerful suite of tools that bring the whiteboard experience to remote teams, with freeform boards as well as elements to quickly create flowcharts and basic mockups.
To really dig in on collaborative design, InVision Studio is a robust prototyping and UI design tool made for remote teams. Building clickable, interactive prototypes is the best way to dispel uncertainty and get everyone on the same page:
If you’re looking for an even more robust tool for mind mapping, diagramming, or flowcharting, look no further than Miro. It’s intuitive, packed with features, and has a ton of remote collaboration features built in:
The Usual Lineup
We’re not going to waste your time extolling the virtues of tools like Zoom, Slack, Google Drive, and GitHub. If you haven’t worked out video calling, chat, file sharing, and code management by now, we probably can’t help you.
That said, keep an eye on new features from your favorite platforms and don’t hesitate to experiment with Slack Apps, Zapier integrations, Google Add-ons or custom scripts, and other things that’ll help you get the most out of these tools.
Team Building And Morale
Remote workers often report feeling disconnected from their coworkers. A lot of team bonding used to happen organically over lunch, coffee breaks, and happy hours. Here are a few ideas that may inspire you and your team to stay more connected:
- Create designated spaces for unstructured, informal chat. If employees can’t gather at the coffee machine or in the lunch room, how do they get to know each other informally? Some companies create Slack channels just for personal interaction (note – this works even better if someone is tasked with periodically asking people to share pictures of pets, family, favorite places, etc.). Others use a Zoom lunch room where you can sign in and eat with coworkers.
- Get structured about sharing kudos and praise. Whether it’s a slack channel or a part of your weekly agenda, find a way to incentivize your team recognizing each other’s accomplishments.
- Do some virtual team building activities. The options here are limited only by your creativity. Some companies have reported playing variations of party games via Zoom, doing virtual escape rooms, and even playing episodic team games like Dungeons and Dragons. You may get some grumbling (it’s not teambuilding if nobody say’s it’s a stupid waste of time), but finding ways to connect like this will build camaraderie, team morale, and trust.
Don’t Be Afraid To Try Something Crazy
Our favorite story from early in the pandemic lockdown came from a company that was struggling with the monotony of Zoom calls and Slack chats.
Seriously, tell me that’s not 1000x better than logging in to your 9th Zoom call of the week:
While we love the idea of meeting around a virtual campfire, there are, of course, some trade-offs:
If the threat of wolves and bandits seems like a bit much, you can always try a less M-Rated game like Minecraft or Animal Crossing:
The pandemic accelerated a trend that was well under way, and normalized Zoom calls and other remote collaboration methods. Now that employees have gotten a taste of that life, many are going to fight tooth and nail to keep it.
We happen to believe this is a huge opportunity for agile organizations. As larger, traditional firms force employees back to work, more flexible companies can scoop up top talent who want to keep that flexibility. That’s exactly what we’ve done at Full Scale.
Full Scale clients get access to world-class remote developers who’ve been vetted, tested, and receive regular ongoing training. Our developers work full-time for your team, while also benefitting from being part of the Full Scale team. Our management system streamlines daily reporting, time tracking, and spotting potential communication gaps. We also organize in-person outings for teams located in the same city to keep people feeling connected!
If you’re ready to expand your team with remote software developers but want a partner who can help keep them engaged, happy, and productive, we should talk.