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

Managing Different Timezones: Inclusive Collaboration Methods

19 May

Jonathan Belcher, Engineering Manager at Curative, shares an unknown side of synchronous communication tools and advises managers on how to handle a team that’s spread across the globe.

Remote
Internal Communication
Collaboration
Cross-Functional Collaboration
Jonathan Belcher

Jonathan Belcher

Engineering Manager - Patient Experience at Curative

Streamlining Product Processes After a Reorganization

16 May

Snehal Shaha, Lead Technical Program Manager at Momentive (fka SurveyMonkey), details her short-term technical strategy to unify processes among teams following an acquisition.

Acquisition / Integration
Product Team
Product
Building A Team
Leadership
Internal Communication
Collaboration
Reorganization
Strategy
Team Processes
Cross-Functional Collaboration
Snehal Shaha

Snehal Shaha

Senior EPM/TPM at Apple Inc.

Managing Culturally Diverse Remote Teams

11 May

Tom Hill, Engineering Manager at Globality, Inc., shares how he works with a culturally diverse team based within a thirteen-hour time gap.

Scaling Team
Handling Promotion
Remote
Onboarding
Hiring
Cultural Differences
Tom Hill

Tom Hill

Engineering Manager at Torii

Navigating Disagreements When It Comes to Priorities

9 May

Pavel Safarik, Head of Product at ROI Hunter, shares his insights on how to deal with disagreements about prioritization when building a product.

Innovation / Experiment
Product Team
Product
Dev Processes
Conflict Solving
Internal Communication
Collaboration
Convincing
Strategy
Prioritization
Pavel Safarik

Pavel Safarik

Head of Product at ROI Hunter

How to Successfully Hire a Team in the Remote World

22 April

Jay Dave, Sr Director Of Engineering at Synack, explains how he overcame the hiring struggles while transitioning into a remote environment.

Alignment
Remote
Company Culture
Hiring
Jay Dave

Jay Dave

Sr Director Of Engineering at Synack

You're a great engineer.
Become a great engineering leader.

Plato (platohq.com) is the world's biggest mentorship platform for engineering managers & product managers. We've curated a community of mentors who are the tech industry's best engineering & product leaders from companies like Facebook, Lyft, Slack, Airbnb, Gusto, and more.