Managing remote teams is a challenge by definition. We proved this by own thorny experience and decided to share our best practices for coopration with remote subcontractors. This article would be useful for business owners and CTOs hiring remote teams, Project Managers leading such teams and for team members working remotely as sub-contractors.
6 min read
Hiring remote teams is a regular practice in software services outsourcing. Logicify software development teams also work remotely with clients from abroad. This was the case for one of our FinTech projects: Logicify team worked as a remote subcontractor of a US-based client. The project was long-lasting, and the team on Logicify side comprised developers, quality assurance specialists, and technical support managers led by a project manager (PM). To develop a new integration, the U.S. client hired another remote vendor, from Bulgaria. We at Logicify, had to cooperate with this vendor and develop the integration together. As there was no manager on Bulgarian side, Logicify PM took all the organizational and technical management, like specification and deliverables.
Being a part of such a triangular work model was a new experience for Logicify, and we definitely raised a few bumps along the way. So, we decided to share the challenges faced and the lessons learned from this mode of cooperation as well as our best work practices that proved effective for us.
Challenges of Managing a Remote Team
Managing a remote team, which is a challenge by itself, in this project, has coupled with other issues we could not foresee back then. Since this was the first-time experience for Logicify Project Manager to manage both an on-site dev team and a remote one at a time, she had a hard time aligning both teams’ needs and the customer’s expectations. As a result, this was not always possible to provide 100% accurate ETA or anticipate difficulties any of the teams faced.
Another tough aspect of the manager’s work concerned treating both teams equally and staying non-biased when working with every team member, regardless of their location, achievements, or failures. However, the largest concern of Logicify PM was varied approaches to programming each of the teams had. At Logicify, we stick to an unwritten code of dev ethics, which presupposes cleanliness of the source code, daily code merging, commenting on the code where necessary, no copy-pasting of the source code. Our remote colleagues, in some instances, failed to follow these norms. What is more, they preferred using obsolete technologies or already retired versions of the programming tools, which complicated the whole process for all team members.
Best Practices for Managing a Remote Team
Yes, we used to be green in managing a remote team; yet, there were a few Logicify best practices we used when working with our Bulgarian colleagues. These practices proved effective once again:
- fair play inside Logicify team, between Logicify team and the client, and between Logicify and third-party teams — our foremost rule in whatever project we undertake.
- developing a sense of project ownership. We strongly believe that proper dev culture is impossible without being a part of client’s own business. So we try our best to align our value system and goals with those of the client. This FinTech project was no exception.
- establishing an effective communication between the teams. Transparent and constant (daily basis) communication is the key to success. Online communication tools, such as chats and apps for screen-sharing, were used for this purpose;
- tracking the tasks assigned to both teams on a daily basis. Logicify PM kept abreast of the development and QA processes using online bug tracking systems.
- daily stand-ups and weekly status calls between the teams. No surprise, performance checkups have value when it comes to efficiency. Daily touch points allow to always stay on top of the events. The team members, on the other hand, know there was a support channel in place if they encounter a problem or have questions. Through these calls, both teams and the customer gain insight into the progress of the project and what to look forward to.
Failures in Managing a Remote Team
When the newly hired team came onboard, we should have minded a few aspects of cooperation. However, due to lack of experience in such a mode of work, we failed to do this from the very beginning. And we have indeed learned this lesson for further projects. Now you could learn from our experience not to fall into the same trap. So, as a team that was more experienced in project-specific ins and outs, we should have taken care of the following aspects:
- We should have interviewed the new team members. We had a long relationship with the client, so this was wholesome for the Project Manager and the technical lead of Logicify team to take part in interviewing the new team members and check their professional level. A test assignment could have been the most efficient way to prove the candidates’ skills and motivation.
- We should have outlined the areas of responsibilities inside and between the teams before we started to work together. This could have ensured there were no serious misconception along the way.
- The technical lead from Logicify side should have done regular code reviews starting from day-one. This way, we could have ensured the source code written by Bulgarian colleagues aligned with the specification and overall project design before it was merged with whatever Logicify dev guys wrote.
- There should have been no cross-tasking before we made sure the professional level of both teams was commensurable. This particularly concerned the tasks of similar and equal complexity shared between teams. At the very beginning of cooperating with a newly hired team, the best practice is to assign them easier short-term tasks.
If you are looking for a remote software vendor, contact us now. We are here to help with software development, quality assurance and consulting.
Human factor is the foremost in every team. And, while people are the most valuable asset in every organization, they are, at the same time, the most complicated asset to manage. Every Project Manager knows there are numerous factors to consider while working with remote teams to boost their efficiency coefficient and improve cooperation spirit.
Not everyone knows remote teams are only as productive as a manager’s ability to manage them. This article touched upon a few managerial challenges Logicify faced while working with a remote team of subcontractors. It also summarized some best practices of cooperation and a few lessons learned from this mode of work on a recent FinTech project. Though we used to be unschooled on managing remote teams, we a lot of valuable experience. We couldn’t help but shared these tips as they may come in handy. If you have a software project in mind, contact us for remote software development services. We will be glad to help!
- Logicify Best Practices for Knowledge Transfer Between Developers
- Logicify Double-Sided System of User Behavior and System Condition Monitoring
- IoT: How We Built Logicify Connected Office with a Soldering Iron (Slide Deck)
- Logicify Debut in EdTech: How We Built an Online Platform for Inclusive Education