Post-covid many companies chose to embrace remote work longer term, either giving employees the option to work remotely or hybrid, or fully embracing remote work 100% across the company. Remote work opens up candidate pools, allowing companies to recruit and hire folks from around the world who don’t want to relocate. It gives employees the flexibility to manage their lives and find a better balance between work and their personal life.
There are some challenges with remote work though, including communication, time zone alignment, employee development, and productivity. Here are some tips for how to effectively manage happy and efficient remote teams.
One of the biggest challenges of remote work is the lack of traditional work structure. Without being in the office for a set number of hours a day it can be difficult for employees to manage their time. If they have family members to take care of, or need to coordinate with co-workers in another time zone, that can interrupt their flow of work and cause a bigger overlap in work and personal time. A way to combat this is to put some of that work structure back in a way that helps remote workers while still being flexible.
Choosing a project management process framework, such as Scrum, Kanban, or Six Sigma gives you principles for how to organize the various tasks and phases of software development. Most frameworks have guidance about how to break down and track work across the team, how often to meet, and what major checkpoints to require throughout the software development lifecycle. You can always modify a framework to better fit your team or use a combination of best practices from multiple frameworks, similar to how Scrumban combines elements from Scrum and Kanban.
Having regular meetings gives teams a sense of structure to their week and lets them know when critical team conversations are happening. Schedule regular planning meetings, checkpoints throughout the software development process, and retrospectives. If your development cycles are longer, schedule more frequent team check-ins to keep communication channels open and everyone up to date on project status. But be wary of too many meetings. Each meeting should have a purpose, an agenda, and be limited to those that need to participate.
Outside of meetings, have established preferred communication plans so that everyone understands expectations and to reduce randomization. For example, if a developer is stuck on a coding problem, what is the best way to reach out for help? Should they email, DM, or schedule a meeting? The answer may vary depending on the person they’re asking for help, so it’s a good idea to let every member of the team document their preferred communication style and keep that information in a central location that everyone can reference. Also clearly document escalation procedures so employees know how to engage help when the situation is urgent.
We’ve already mentioned documenting communication and escalation plans, but there is much that can typically be improved when it comes to business and engineering documentation. Having instructions and expectations written down helps managers and employees have clarity.
One of the most important areas to document is onboarding. Bringing new people onto a remote team is difficult. Even with thoughtful introductions and training, the first weeks of working remotely can be isolating and nerve-racking for new employees who might not understand the culture, team rhythm, tools and processes, or even the scope of their new role.
Documenting your onboarding process gives new employees a clear guide to follow to get their machines and working environment set up properly, tells them which meetings and mail groups to join, and links to other team documentation so they can learn about how the team works.
You should document which project management framework your team uses and explain any modifications your team has made to make the process work better for you. Your team should also have shared documentation around engineering processes such as code review, check-in procedures, bug evaluations, testing and release procedures, etc.
Even if a new employee won’t work in all of these areas, understanding the overall approach to software development can help new employees visualize where they fit in their new company and identify areas of partnerships and dependencies.
While documentation is important and gives people the freedom to learn at their own pace, formal and informal training is critical to employee growth and requires creative approaches when everyone is remote. For some training, such as learning how to use a new tool, it’s relatively easy to transfer an in-person presentation and demo to an online meeting that accomplishes the same goal. For other training—particularly those aimed at teamwork and growing interpersonal skills—it can be more challenging to get the same results online.
One way to approach formal online training is to outsource it to professional training companies that specialize in remote learning. You get the benefit of someone who has vast experience in online training and ready-made remote-first curriculum and activities. Another option is to take some of your existing in-person training and modify it to work online. You can create online quizzes, breakout rooms for small group discussions, or have your team prepare certain materials before the meeting if it’s easier for them to just share the results during the call. Don’t forget to include the fun activities you would normally do in person, such as icebreakers and round-robin sharing.
Another option you don’t want to forget is informal training. Informal training is when someone on a team asks a question and another person shows them how to complete their task or explains a process. This type of interaction happens organically in an office environment and we often don’t even think of it as training but this is the way that much of on-the-job learning is accomplished–-especially for new hires. When everyone is remote, this type of training is not as organic. You can’t just drop by someone’s office or shout your question into the open desks and get a quick answer.
It can be more intimidating to interrupt someone online, especially if the question requires a video call, and new employees may have a hard time identifying where to direct their questions. This is where onboarding buddies and mentors can be beneficial for remote teams. Pairing a new hire with an onboarding buddy gives them a clear person to approach with their questions.
This person can meet with them regularly and complete some of that informal training–-via screen sharing meetings or allow them to shadow them for new tasks—in a more structured way online. Even for employees who are no longer new, having a mentor is a valuable way to leverage experienced employees and have them guide newer employees. Having a person to question or brainstorm with who isn’t a manager allows employees to have broader, more exploratory conversations, without worrying about the impact on their performance reviews.
Finally, choosing the right project management tool is even more important for remote work because that tool, or set of tools, will facilitate team processes and collaboration. You need a tool that is compatible with your chosen project management framework and also flexible enough to accommodate any modifications your team might make to that framework. It will also need to work with your end-to-end engineering pipeline or suite of tools. There are many factors to consider, too many to cover in this article. But we will soon discuss what makes a good project management tool for software development teams, so check back in the coming weeks.
For now, you can review some of the benefits of program management tools and how to use Assembla for sprint planning.