Managing international engineering teams — Hezheng Yin // Merico
- Part 1 Managing international engineering teams — Hezheng Yin // Merico
- Part 2Contribution analysis for your Dev Team — Hezheng Yin // Merico
Show Notes
-
02:10How Merico became an international engineering teamMerico was conceived and built in America, but the first client was in China, so having a service team in the country made sense. That became the start of a global team.
-
05:11Expanding the team to Canada, India, and FranceThe expansion into other countries was based on the belief in the open-source way of working.
-
06:20What is the open source way of working, and how is it different from the standard scrum of stand ups?The fundamental challenge is that sometimes you can't even have a scrum meeting with your team members across three time zones. How do you manage that?
-
08:03Rituals and ways to keep the team on the same pageHave an asynchronous update channel distributed by teams, and use OKRs to align teams.
-
09:29How do you encourage collaboration across teams regarding a specific technical solution?Thats where the open-source way of working comes to play. Someone makes a proposal, and everyone chimes in, and sometimes a vote is taken. And if everyone is aligned, the team moves forward with it.
-
11:22What characteristics of how open source communities work are helpful to manage your team?Transparency, keeping everything in public within the organization, and reaching a consensus on critical decisions so everyone feels a part of the decision-making.
-
12:43Handling disagreements before consensusThere's always a negotiation phase led by the person who proposed and works with someone against a proposal to reach a consensus.
-
13:53What happens when the community of teams fails to reach a consensus?Try to get some juries together, not just the person proposing and the minus one, to share perspectives, and if they dont reach an agreement, the CTO vetos. Avoid overriding decisions as much as possible.
-
15:35Managing cultural differences in a distributed teamHave a common work language. The cultural issues will appear mostly in communication, but the team will learn and trust each other in time.
Quotes
-
"Our company is a big believer in the open-source way of working. Initially, the first idea we pitch to the investor is to help with the open-source sustainability problem by inventing an algorithm to decide every developer's contribution to the software project. So that when the project has some income, we can automatically distribute that income to every developer in the project." - Hezheng Yin
-
"The fundamental challenge is that sometimes you can't even have a scrum meeting with your team members across three time zones. We have one analytics engine team with US, France, and China members. Finding time for everyone to get together for a scrum meeting is almost impossible. So, we had to do that asynchronously. Everyone posts an end-of-day update to the update channel to summarize what I have done today. And are there any pull requests that need to be reviewed? What are my thoughts on other items for us to sync up?" - Hezheng Yin
-
"A lot of things are similar with non-remote teams. For example, we found OKRs effective in aligning teams together. Every quarter, we set OKRs and align our objectives. And that's very helpful for orchestrating a remote team working towards the same goal." - Hezheng Yin
-
"How do we manage team collaborations? One person proposes linking the relevant GitHub issue, and we discuss it. Everyone chimes in, and sometimes we take a vote. And if everybody's aligned, then we move forward with it. It's very similar to how the Apache open-source communities work together." - Hezheng Yin
-
"I think of some open-source principles we are trying to follow. The top priority is to keep everything in public. Ensure the discussion is not in a private channel or among a small team group. Put it in a major channel of our team that everyone can see. Everyone can participate and know what's happening in the team. Our top priority is transparency, keeping everything public Secondly is consensus. When we move one thing forward, we try to get everyone's opinion around it, have a discussion, sometimes a heated debate, but bring everyone on board so that we all give our thoughts to this decision. And we are part of the team moving forward." - Hezheng Yin
-
"What happens when the team fails to reach a consensus decision? When that happens, we try to get some juries together, not just the person proposing and the minus one, right? But bring some other colleagues together to share those perspectives. See if we can reach a consensus before I can make a crude, brutal decision and no arguments. We try to avoid that as much as possible." - Hezheng Yin
- Part 1 Managing international engineering teams — Hezheng Yin // Merico
- Part 2Contribution analysis for your Dev Team — Hezheng Yin // Merico
Up Next:
-
Part 1Managing international engineering teams — Hezheng Yin // Merico
Leveraging global engineering talent is increasingly impossible to pass off. But how do you manage such a team with diverse cultural backgrounds? How do you ensure everyone is in sync when a scrum is impossible to schedule? And how do you foster collaboration among teams to move your company forward? Tune in to this episode of the CTO Podcast as Hezheng Yin, Cofounder & CTO at Merico, discusses strategies to manage international engineering teams.
-
Part 2Contribution analysis for your Dev Team — Hezheng Yin // Merico
Development is a continuum, with team after team continuing to improve the code base. How do you handle inherited code base and technical debt? How does a new team measure and value its contribution to the product against the inherited code base? Listen to this episode of the CTO Podcast as Hezheng Yin, Cofounder & CTO at Merico, discusses contribution analysis for dev teams.
Play Podcast