Interested in generating passive income? Join our partnership program and receive a commission on each new client referral. Learn more.
7 min read
Interested in generating passive income? Join our partnership program and receive a commission on each new client referral. Learn more.
We recently published an article where we talked about our journey towards a hybrid work mode and what we’ve done in the efforts of optimizing our processes to make sure our remote development teams function efficiently and fill in the gaps that the absence of face-to-face interactions usually leaves behind. We mainly focused on how we’ve modified existing agile ceremonies and introduced practices that enhance synchronous interactions within our team. Still, another huge element in making this whole managing remote development teams dance work is the proper selection of the tools you use for it.
So here goes our ode to the tools we so vehemently use and that make our lives easier.
Effective management of remote teams heavily relies on maintaining transparency in operational processes. It basically means that everyone on the team is on the same page operation-wise and is well-informed about ongoing activities and the progress being made.
However, achieving a complete shared state of context understanding across all development teams can sometimes feel overwhelming.
At Redberry, we have implemented various tools that make this task much more manageable, ensuring transparency is at the core of our remote software team management approach. So here is what our core tool stack looks like:
We use every inch of Github to achieve maximum productivity within our development teams.
Since our DevOps follows infrastructure as a code approach and the overall development process is highly automated, the development team can do almost anything from Github: starting from provisioning, configuration and setup of a new environment to the automated run of our CI and CD pipelines.
Moreover, Github plays a big role in the team communication process since code reviews happen on Github.
Also, the releases are fully documented on Github, together with the full history of deployments to different environments.
Automating Jira and plugging it in fully with the development operations helps us increase transparency and productivity within the development team.
Our Jira projects are fully integrated with Github. When developers engage with specific issues assigned to them in Jira, they indicate the issue id both in commit messages and short-lived (max several hours) feature branch names.
This way, issues in Jira change statuses automatically, and they are 100% in sync with reality.
Besides, we can fully see per each Jira card the commits, pull requests and deployments associated with it.
Bringing structure and transparency to the QA operations is of paramount importance.
We use Zephyr for the documentation and execution of test plans, test cases and test cycles;
Since Zephyr is a Jira app, they are highly integrated with each other. Any team member accessing the Jira story can see which test cases cover that particular story. Also, how and when those test cases were executed and what was the outcome.
We also built our custom tooling to integrate Zephyr with Cypress and Pest. This enables us to execute test cycles in Zephyr with our automated test suites.
Our Notion repositories include all the product, design and technical documentation, including but not limited to:
We pay huge attention to documenting all of our work as it helps us with knowledge transfer and context sharing among the team members and all project stakeholders. This greatly contributes to increasing productivity.
We use Sentry for application-level error monitoring and Cloudwatch for infrastructure-level monitoring. Both send notifications to the specific Slack channel so that the team gets alerted when needed.
At Redberry, every project has several Slack channels, each with a different purpose:
This way, we foster seamless communication among team members while automating vital updates, ensuring everyone stays informed and connected, regardless of their location.
When it comes to the productivity of a remote software development team, there's one more thing that can make all the difference - the active involvement of the development team lead. They are the people who hold the responsibility of being proactive and setting an example for others through their consistent and effective communication during the day.
The team leader is like a bridge between team members, always reaching out and keeping communication wide open. They frequently ask how the team is handling tasks and if they need any help. It's like starting a friendly conversation - a simple "Hey, how's it going?" can work wonders. This approach breaks the ice, and once it becomes natural, the team communicates and asks questions freely without overthinking if it's worth it or not - they just do it.
It’s also worth noting the significant impact communication tools such as Slack and Huddle have in this context. By having those quick and easy chats, these channels make it much easier to create micro-interactions within remote teams. So once the team lead has all that managed, they can be sure that at least one aspect of effective team management has been successfully established.
Overall, managing remote development teams effectively comes down to proactive communication and implementing appropriate operations and tools. So by keeping these practical tips in mind, you’ll not only keep your remote team in sync but make their work process even more productive.
We are a 200+ people agency and provide product design, software development, and creative growth marketing services to companies ranging from fresh startups to established enterprises. Our work has earned us 100+ international awards, partnerships with Laravel, Vue, Meta, and Google, and the title of Georgia’s agency of the year in 2019 and 2021.