How to set up development process with remote team

· 4 min read
How to set up development process with remote team

We’ve been working remote-first in our team for the last three years. That means that all team members work from locations that they find comfortable while being able to visit the office when they feel like it (though it rarely happens). So far it’s been a fantastic experience, but there are certain adjustments we had to make to have a genuinely efficient process.

Have a work schedule

Remote work is often associated with a laptop lifestyle, where workers travel the world while doing their job, occasionally using their laptop on the beach or in the coffee-shop somewhere in the jungle. It quickly became apparent that no serious work can be done this way, mostly because effective work happens when people are available to each other. That means that internet connection should be stable, there shouldn’t be any background noise for the call and the connection should be good enough for video chat.

More importantly, a work schedule should be in place with all team members being available at the same time. I’m not a fan of workplace distractions and ad-hoc meetings, but more often than not there are simple questions that impact team efficiency. Without the schedule, these questions sometimes take days to be answered seriously degrading overall team performance. Something that can be resolved by a quick series of emails or slack messages takes days of messaging back and forth.

All time spent should be logged and attributed to a task

When you’re a manager and all your team members are far away from you there’s no way to look over the shoulder and see who’s slacking off and who are working hard. Of course, in the office, it’s also a false feeling of control, but at least you have a sense of control. With a remote team, you have zero control, and the only way to judge how someone is performing is to compare time spent on a task with the outcome. Of course, this can be faked, but only for a short period.

It doesn’t mean that managers should use time spent on a task as a performance metric to compare employees to each other. Every person and every job is different, so that doesn’t work very well. But keeping an eye on time tracked will allow you to spot performance issues when someone is not feeling good and just not telling you, or when the task is more time-consuming than expected.

Meetings are evil but necessary

Meetings are considered harmful by a lot of developers. David Heinemeier Hansson calls them toxic in his book “Rework”, and I couldn’t agree more. But when working remotely, meetings are the only way for team members to get together and feel like part of something bigger. We tend to have calls a few times a week and a big monthly call with all employees to keep everybody on the same page about what’s going on within the project and the company.

Having a clear understanding about meeting goal is essential. It doesn’t mean that every meeting should have an agenda though, we have one-hour sessions to hang out together and share our lives with each other. But project-related meetings usually have a clear plan and a set of questions that have to be resolved. That reduces the time we spend on such meetings and helps us move forward

Use right cloud-based tools

Communication is essential for remote work and choosing the right tools has an enormous impact on it. In the end, you would need a group chat app like Slack and project management tool like Jira or Basecamp. We use a more sophisticated tool called TargetProcess but only because it allows us to do roadmapping, task management, and project management at the same time. You would also need a tool for group audio and video calls. Skype did a terrible job for us, so we switched to Google Meet which seems to perform much better.

Collaboration tools are essential for every team but setting up remote process allows you to invest a bit more into the setup because you can save your budget on office space. For example, we switched to Figma from Sketch because it allows us to collaborate with designers in real-time, store all source files and their history in the cloud and present our work to clients all in one place. We’ve also utilized Business plan for G Suite because instead of regular google disk it includes a concept of vaults and unlimited file history so that nothing is ever lost. We’ve also set up our own VPN server and enabled 2-factor authentication to make sure that employees are working through secure connection and data of our clients is always protected

Trust your employees

When I talk to fellow managers, they name trust issues as one of the main reason they’re not building remote teams. Of course, there are many people out there who don’t have enough remote work experience and treat work-from-home opportunities as an easy way to combine work with something else like childcare. But professional remote workers know how hard it is to work from home efficiently. They will typically be eager to work on schedule as opposed to ad-hoc laptop-style workers. They usually have a separate place to work without distractions with a perfect setup. They will value the opportunity to stay home and save commute time and will be happy to invest that time into work instead.

Over last 15 years, conditions of remote work improved significantly, but it’s still considered as something less efficient, less scalable and less reliable than traditional office work. Parents tell their children to ‘get a normal job’, remote-based companies are treated as not real and professional remote workers are sarcastically called freelancers. I’m sure that over the next few decades we’ll see an even more dramatic shift from traditional office work to working remote. Not only it allows employees to spend more quality time with their families, but it will enable companies to work more efficiently and pay more attention to the process setup versus relying on everybody sitting in the same room so that things somehow work out themselves.