Team coordination has always been important, but it is particularly important when all team members are remote.
Here are 10 things to consider when coordinating work among many remote team members:
1. Define clear and useful goals
People work best when they have a goal to aim at. Goals come in a variety of formats, such as:
- Sprint goals
- Requirements, specs., user stories, and epics
- Test cases and test plans
- Task definitions and milestones
“Clear“ means that the provider and recipient have the same understanding. “Useful” means that it represents an end goal, something the next event downstream wants.
A backlog item stating, “As a developer, write some code,” is neither clear nor useful.
2. Establish a communication plan
When everyone works remotely, stakeholders can be out of sight and out of mind. Develop a list of all the stakeholders (e.g., team members, management, customers, support staff, vendors) and write down:
- What information each person needs to help achieve the end goal
- When they need it (daily, weekly, monthly, or on specific dates)
- How they would like to receive it (email, chat, live call, project web page)
Don’t forget to communicate the communication plan!
3. Distribute goals and confirm understanding
You probably have your own way to get the work shared among team members. The Agile “grabbing” approach works well by having each team member grab work from the list. Grabbing is a way for people to commit publicly to the work.
When the work is distributed, spend some time to explain the overall goal, and then have each person explain back what their piece is and how it ties to the goal. This “confirm understanding” step allows you to determine what is understood and what is not.
4. Develop a master schedule and choose your level of detail
Teams with well-established project management practices always develop a master schedule to paint an overall picture of where teams should be at different points in time. You can choose the level of detail you want. An Agile team might have blocks on the schedule that represent every sprint deliverable.
Below is a picture from BigGantt, which is a plug-in to Jira to display schedules.
5. Check that estimates and deadlines are achievable
An un-achievable schedule can demoralize the team, create chaos during a mad rush, and encourage severe corner-cutting.
All great project managers or Scrum masters work with their teams to ensure that the data in the schedule are meaningful and achievable. If it is too difficult to predict estimates far ahead, focus on the next few iterations.
6. Assess risk and mitigate
Since things can go wrong and often do go wrong, assess, prioritize and mitigate risks.
7. Test remote tools and networks – fix stuff now
Every week I work with a client on a remote event, and each client has a different tool of choice. Tools include: Join.me, GoToMeeting, Zoom, Adobe Connect, Microsoft Teams, Webex, Whereby and Ring Central. Some of them work well, some work occasionally (I won’t mention Skype here), and some have features that are very clunky or hard to enable.
To be productive:
- Thoroughly test and evaluate the tool you select
- Then run practice sessions — I use my adult kids and business partner
- Develop and share work-arounds to address issues
- Replace mics, upgrade network speeds, tweak firewalls to allow stuff to function
- Identify backup call numbers
- Start every call at least 15 minutes early to resolve connection and tool issues
- If all else fails, throw the system out and get another one
8. Track progress weekly or biweekly — use demonstrations to make invisible work visible
When team members are remote, software development can become invisible.
Agile does a good job of making work visible by having iteration demos. Demonstrations allow teams to show progress, clarify understanding, keep the end goal in mind, and make issues visible early so they can be addressed. Whether you are Agile or not, consider adding a demonstration of a feature every two or four weeks.
9. Address schedule issues aggressively and replan
When schedules start to go off track, it is tempting to think that things will speed up and everything will be OK. If the schedule is off by twenty percent every two weeks, then the project will be way behind by week 10.
10. Address lessons learned aggressively
One feature in Agile is the retrospective event. At the end of every sprint the team determines what is going well and what is not. This event, along with the demonstration, is a great source of information that can help a team be more productive next time. However, many teams don’t act upon the lessons collected and so existing problems just pile up. Either the problems are too sticky, or there is no time, or both.
Retrospectives are particularly useful when teams are resolving issues caused by remote work, such as new work environments, new tools, and new coordination challenges. Don’t let these issues pile up and go unaddressed.
Remote work needs a lot of planning, coordination and tracking. Assess where you are on the 10 steps above and pick one or two areas to improve.
Forward this email to your boss! Subject: Here’s a cool tip for you] Quick Link