On running a Global Team with 5 hours time difference
My experiences on managing a team half based in Brazil and half in Spain
Working efficiently in a Global Distributed Team requires time and dedication, it doesn’t come for free. This article is about how we learned from our mistakes, improved on them, and how we are continuously learning on communicating and collaborating globally.
We were two different squads working on two different products during Q2 2021, but working in the same tribe. We knew each other due to some shared meetings we had during the weeks, but we didn’t collaborate closely yet.
During the beginning of Q3 2021, we merged both teams to work on the product A people from Brazil were working on, meanwhile putting on hold product B we, from Spain, we have been working.
We knew that:
People from Brazil had a high product and technology context
People from Spain had a low product and technology context
Existed a high cohesion between old team structures
We needed to work on:
Building trust between team members to be one team instead of two teams working separately
Build the right ways of working that support a Global Team
Starting with the obvious
Handling time difference
First of all, focus on making great use of the overlapping time.
We configured our Google Calendar to show each other time zones (you can see that in the next Screenshot). It gives you visibility on which hour you might want to schedule a meeting to respect each other working hours.
We aim to have as much overlapping time as possible, and we discovered our first cultural differences. Our lunch hours are quite different!
🇪🇸 Spain in isolation. From 2 pm to 3 pm
🇧🇷 Brazil in isolation. From 12 pm to 1 pm
This leads us to have only 3 hours of overlapping time 😣, we needed to adapt each other lunchtime to go from 2 to 4 hours by changing our lunchtimes.
🇪🇸 Spain in a global team. From 1 pm to 2 pm
🇧🇷 Brazil in a global team. From 1 pm to 2 pm
By doing this, we could set that our overlapping time to host synchronous meetings and collaboration to be:
🇪🇸 Spain overlapping hours. From 2 pm to 6 pm
🇧🇷 Brazil overlapping hours. From 9 am to 1 pm
What we did then is creating in hour shared calendar a recurrent event as Focus Hours dedicated to team needs. Our goal is to give priority to our synchronous meetings during those hours to respect each other working hours.
We are in a team that not everyone is fluent in English, and it’s causing different difficulties in working as a team.
In order to minimize the language barrier we do:
Written always in English 🇬🇧
Meetings, we give a space to practice English. Still, when someone is unable to share their ideas in English, then we can fall back to our mother language, and then someone in the team that knows both languages translates the ideas.
This issue cannot be solved from one week to another, and we need to be patient with each other when someone isn’t fluent in English. Still, after one month of practicing English each day, we saw good improvements between team members 😊
My suggestion, create safe spaces to practice English. I wouldn’t recommend team meetings to be a good place to practice it, but during pair programming, it’s a perfect space to practice English and not being worried to fail.
Boosting Knowledge sharing through Pair Programming + Weekly Rotation
By doing pairing between team members from different countries we achieved a huge learning curve in a small period of time. We set up the pairing as:
Pairing needs to happen between new team members (Brazil and Spain)
We rotate once a week
Then, when you rotate the pairs, you mark who paired with who.
This helped us in:
Knowledge sharing on Architecture, Product, Operations
Knowing each other and building relationships
Having safe spaces to practice English
Asynchronous Collaboration and Communication
With only 4 hours of overlapping time, you better make good use of it. We needed to work on how we shared information. Before, we relied a lot on meetings to share context and information.
As a team, we limited the information-sharing meetings as much as possible. Instead, we started to use more and more Confluence to hold information that needs to be durable and volatile information in Slack Theads.
Async Dailies. We run the daily async, and people share that info whenever they can.
Meeting notes are stored in Confluence in a section dedicated to host meeting notes and decisions made.
Discoveries in problems we share the information asynchronously, and we use the meetings to make decisions.
This helped us to use the available overlapping time for collaboration and decision-making instead of informing.
You can see more tips on Asynchronous in this Twitter thread.
Work on expectations on each other
We hosted a session about what we expect from each other, on what we like from people we work with and people that we don’t like to work with.
It helped us to know what was expected of each team member from each other, and then we came up with a Team manifesto. A set of values we honor to work with and we keep each team member accountable.
You can see the team building session explanation here https://www.funretrospectives.com/that-guy-this-guy/
Things I didn’t expect that happened to me as Engineering Manager
Direct Feedback and High Context
I tend to be quite direct about what I think can be improved. Sometimes, without giving all the context on what are my suggestions contexts.
After a month of working with Brazilian people, I found that the way we speak in Spain can be interpreted as rude in the Brazilian culture.
My suggestion is to not assume how people are used to receiving and giving feedback. Dedicate time to understand each other expectations on how people like to collaborate. Then, make these differences explicit between each team member.
When you move async, where the decision happens becomes blurry. As Engineer Manager, I expect the decisions to happen either in meetings or Slack Threads. I would say, that wasn’t as obvious as I expected.
Decisions are always made with the necessary team members, and you need to be explicit when you’re expecting people to collaborate on the decision-making and in which format.
Still, be aware that sharing the opinion in written format is way harder to spoken way. As a team lead, you need to create a space that everyone is able to share what they need to communicate for the decision, otherwise, there’s the feeling that some people didn’t have the chance to express themselves in the decision-making process.
I moved Decision Making again to full synchronous, we are not in a moment to make them asynchronous yet.
I would recommend everyone The Cultural Map Book to everyone that works in a company with people from different cultures. We often underestimate how the cultures influence us and how biased we are towards other people.
Don’t get me wrong, you should care always personally for other people since each of us are different, still, we need to understand the culture of other people to not get misunderstandings.
Hey Aleix, this is a great challenge. I have a like context, and I applied Mob Programming. I know this challenge don't have a solution correct. But, Mob help-me solve some problems for example exchange knowledge, Phases of Tuckman, put the team strong with a learning constant, psychological security, and focus in process lean.
The Mob Mentality is a channel in youtube that has more content to init with this practices.
But, I want know... For you, What the principal challenge in position of manager in this context? Because in my mind, I think it may have had a great cognitive load for you. This transformation is not easy. Can you shared things that you may have had as personal challenges?
So, this can transform in post. I would like read about this. Or you can spoke here.
Thanks Aleix, and congratulation by survive this challenge :D