Effective communication and a structured work process are crucial when your team is distributed across the globe.
To help you build a healthy and transparent working relationship with your developers, we have prepared this list of remote team management best practices.
Enjoy working with your new developers, and feel free to contact us if you have any questions.
Before you start:
- Give your remote team access to all the technical means they will need for work: project documentation, source code repository, development and CI servers, and task tracking tool.
- Prepare or update your onboarding routine for the new team members. Make sure to provide them with information on your company's mission and values, your Product Roadmap, Product Architecture, and technology stack. Clearly explain the management processes you follow and specify the tools you utilize.
- Share your coding standards and company rules with your new team members.
- Double-check whether your remote developers understand their roles and
responsibilities, as well as what is expected of them and when.
Establish Robust Communication
- Make sure your new coworkers have a clear understanding of your company structure, and know who their Technical Lead, Product Owner, Solution Architect, Product Stakeholders, etc. are.
- Schedule regular meetings/video calls (e.g. Sprint Planning, Backlog
Refinement, Daily Standup, Sprint Review, Retrospective). It is very important for everybody to be on the same page regarding work progress, risks, and hurdles.
- Have a clear agenda for every meeting (you can use the Meeting Agenda Template). Stick to it as much as possible and eliminate off topic chatter. Invite only those people who will be able to contribute to the subject of the discussion.
- Take the time difference into account when scheduling meetings.
- Make sure you have configured your task tracking, video conference and screen sharing tools properly.
- Communicate your expectations clearly and always double-check whether your team members understand you correctly.
Download the guide and find a comprehensive offshore developer onboarding checklist inside
- Create Product Backlog in your task tracking tool and share it with all of your team members. Sort Backlog items (technical tasks/User Stories) by priority. The highest priority tasks should be at the top.
- Make the highest priority tasks detailed enough so that the planning process could be launched immediately.
- Be consistent in the way you describe tasks (e.g. User Story format), as this will help you avoid misunderstanding. Good requirements are correct, feasible, necessary, prioritized, unambiguous, and verifiable.
- Run collaborative estimation sessions. Everyone involved in development should participate in estimation and planning meetings. Otherwise, the accuracy of estimations may fluctuate a great deal.
- Remember, if a task is not documented, it doesn't exist.
- Important: only one person (Product Owner) should be responsible for creating tasks, setting priorities, and accepting results.
- Make sure Product Owner/Manager has enough time to communicate with the team, clarify tasks and product vision, and set priorities on a daily basis.
Give and receive regular feedback
- Give and receive regular feedback.
- Provide regular and honest feedback on individual and team performance. Those who understand their strengths and areas for improvement perform better.
- Provide regular feedback on deliverables. Specify what is good in functionality and code, and what could be improved. Product Demo sessions (Sprint Reviews in Scrum) serve well for this task. Short feedback loops enhance product quality, decrease time-to-market, and eliminate time-wasting activities.
- Hold regular retrospective meetings. Each team member should have something to contribute regarding the following questions:
- What went well?
- What should be improved?
- What should we start doing?
- What should we stop doing?
- What should we keep doing?
- What should we do more/less of?
- Create action items and set due dates as well as people responsible for each item (if possible).
- Ask team members to give their feedback on your product, processes, coworkers and you as a representative of company management. This way, you'll get the chance to discover unforeseen risks, problems, and opportunities.
- Set up several performance measurement metrics. Having an objective way to evaluate people's progress is fair and efficient.
Build the right culture
It is natural for coworkers to create informal groups based on location, and so the people who work from a different location eventually become “them", and the “us vs. them” mindset settles in. Communication gets worse over time, and should a problem occur, distributed groups start blaming each other.
To maintain a healthy relationship between the remote and the in-house team, you need to create an environment in which they can all act as a cohesive whole.
Here are some tips that can help you achieve this goal:
- Bring your distributed team members together at least twice a year.
- Regular video chats are a must. Use additional online collaboration tools, like screen sharing software for technical discussions, an online collaborative estimation tool, an online retrospective tool, etc. Distributed teams need even more communication than co-located ones.
- Be ready to delegate managerial tasks to leaders of remote teams.
- Encourage your team members to be innovative and forward-thinking. Always keep your doors open for any suggestions or ideas.
- Build a culture of mutual responsibility for the final result. Promote five key team values: Courage, Focus, Commitment, Respect, and Openness.
- With the right approach, conflict can be used as a tool for innovation and team building. Make sure conflicts are resolved fairly and quickly.
- Use every opportunity for knowledge transfer inside your team. Knowledge sharing meetings, code reviews, presentations, and pair programming are all great tools that promote knowledge transfer.
After you download the PDF version of the guide, you'll find there an offshore developer onboarding checklist — a guideline with best practices that will help you organize work within a distributed team efficiently. Feel free to add, remove, or change its items based on the size of your offshore development team and your unique requirements. Download the guide and get your comprehensive checklist.