Back to resources

Enhancing Communication in Distributed Development

Remote
Internal Communication

6 August, 2021

Zeev Vax
Zeev Vax

Director of Engineering, iOS at TuneIn

Zeev Vax, Director of Engineering at Wonolo, explains how to enhance communication in distributed development teams by creating processes that will simplify and centralize communication.

Problem

I am managing a development team that was started in San Francisco and soon spread to the East Coast and Canada. From the very beginning, our QA was located in Vietnam, which is a 13 hours time zone difference. But that was not all. Not many people on the QA team spoke good English, which made video chats tiresome. Moreover, not everyone on the QA team felt comfortable speaking, so one or two people were speaking on behalf of the entire team.

Not long after I joined, I found myself staying late nights going over bugs in Excel spreadsheets and discussing with the team how to solve those. I was trying hard not to fall asleep: it would already be too late, and I couldn’t understand half of what they were saying. I was still onboarding myself and didn’t fully understand all the details, so the meetings were anything but efficient. We relied on video chats mainly because no one seemed to use tools like Jira and Confluence or even Slack or any tool that would require written input. As a result, many things that were shared in a meeting would remain undocumented.

Actions taken

I knew from the start that using collaborative tools was critical to improving communication. Therefore, I was all set to make the team use those tools, but I knew I had to simplify the existing processes. For example, people felt that Jira was too complicated to use and hence moved to Excel spreadsheets. That signaled that I have to simplify Jira much more if I wanted them to use it. In a nutshell, all processes had to be simple, straightforward, and easily accessible if people were to adopt them.

Then I decided to centralize the process of collecting and storing information. Too often, different pieces of information were scattered over various documents without sufficient context or regular updates. Links to product requirements and design or relevant development information would frequently be missing, which was impeding communication. I decided to create one collaborative document per feature where all information would be added. This document would be regularly updated throughout the development lifecycle and structured to enhance communication. Once I put in place those documents, I couldn’t care less if developers were in different time zones or were discussing problems in Zoom and Slack. Once the decision was made, they would be required to use the existing template to document relevant information.

My efforts to centralize information didn’t end there. Since we were doing development for iOS and Android while also having some back-end components, all information was scattered across different stories. I would have all those stories collected in that one Confluence page, making it easy to sync up between different platforms. To do that, apart from simplifying the Jira process, I also made sure that linking between Jira and the feature page in Confluence was aligned, which made the navigation easy.

Taking away verbal communication eliminated late-night meetings. We cut down time spent on communication to 10 to 15 percent of what we were spending just months before. Enforcing written communication and encouraging documentation also made everyone more comfortable because people in Vietnam didn’t have a good command of spoken English but communicated well in writing.

Lessons learned

  • Simplify communication. Centralize communication. If you manage to make your processes simple and adjust them to your team dynamics, that will directly translate into improved communication.
  • While written communication is a must, sometimes you need to hop on a call. If you start your communication on Slack and end up with more than 15 messages, it’s time to jump on a video chat. Also, when a new person joins the discussion, it’s hard to follow extensive Slack communication, so quick video chats that will clarify context sound reasonable.
  • Centralization has its own limits. When people try to add comments on a single Jira ticket, something usually gets lost in translation. I would strongly recommend creating a new ticket for any new bug instead of adding a comment to the original one.Keep things simple. For example, submitting five straightforward Jira tickets would be much better than one with 40 comments on it

Discover Plato

Scale your coaching effort for your engineering and product teams
Develop yourself to become a stronger engineering / product leader


Related stories

How to Maintain Happiness: The Underrated Aspect of Creating Team Dynamic

2 August

Jonathan Ducharme, Engineering Manager at AlleyCorp Nord, encourages the importance of a workplace environment that cultivates mental wellness.

Personal Growth
Company Culture
Leadership
Internal Communication
Psychological Safety
Jonathan Ducharme

Jonathan Ducharme

Engineering Manager at AlleyCorp Nord

(Re)Organizing Your Teams Using Domain-Driven Design

12 July

A proposal for how to create an org structure that will deliver software systems that you want, not ones you get stuck with.

Alignment
Architecture
Scaling Team
Building A Team
Internal Communication
Reorganization
Ram Singh

Ram Singh

CTO at REAL Engagement & Loyalty

Dealing with Uncertainties and Adapting as You Go

14 June

Muhammad Hamada, Engineering Manager at HelloFresh, addresses the uncertainties brought on by the pandemic, how these have affected our work environments, and how we can adapt.

Goal Setting
Internal Communication
Collaboration
Roadmap
Stakeholders
Prioritization
Muhammad Hamada

Muhammad Hamada

Engineering Manager at HelloFresh

Promoting Interdepartmental Teamwork for More Efficient Problem-Solving

13 June

Roland Fiala, Senior Vice President of Engineering at Productsup, raises an interesting issue about autonomy in teams: does it hinder collaboration opportunities that lead to better problem-solving? He shares his system for promoting teamwork in engineering departments.

Internal Communication
Collaboration
Roadmap
Team Processes
Cross-Functional Collaboration
Roland Fiala

Roland Fiala

Senior Vice President of Engineering at Usergems

The Importance of Effective Communication Skills in Technical Roles

3 June

Dursun Mert Akkaya, Software Development Manager at Product Madness, encourages a change in mindset for heavily technical individuals as he explains the importance of communication skills.

Different Skillsets
Personal Growth
Leadership
Internal Communication
Collaboration
Convincing
Career Path
Mert Akkaya

Mert Akkaya

Software Development Manager at Product Madness