Safkat Nirjash
Writing/Leadership
Use Case5 min read

Leading distributed engineering teams across two continents: what actually works

A practical framework for engineering teams split across North America and South Asia, built on async-first rituals, clear ownership, protected overlap time, and documented decisions.

Safkat Nirjash·

The problem with "we'll make it work"

When companies hire engineering talent across time zones, the default plan is usually optimism. "We'll make it work." Video calls get scheduled at 7am for one team and 9pm for the other. Documentation becomes an afterthought. Six months in, the distributed team feels like two separate companies that happen to share a Slack workspace.

I've led engineering teams split between North America and South Asia, specifically between Canada and Bangladesh. The 10 to 11 hour time difference is real. The cultural communication differences are real. The collaboration friction is real. None of it is fatal if you design for it on purpose.

"We'll make it work" is not a design. Here is what actually works.


Why distributed teams fail (the honest version)

A synchronous-first culture dropped into an async context. Most teams default to meetings as the way decisions get made. When your team spans 10 time zones, someone is always in a meeting at midnight, and slowly checking out.

Invisible blockers. On a co-located team, a blocked engineer is obvious from across the room. On a distributed team, a blocked engineer can sit for two days waiting on a reply buried in a thread while their standup still reads "in progress."

Cultural communication differences misread as performance problems. Engineers from South Asian technical cultures often raise blockers indirectly, defer to hierarchy, and avoid breaking bad news in a group. North American engineering cultures often read directness as clarity and silence as agreement. Both readings are wrong.

Misaligned working rhythms. The North America team pushes new requirements at the end of their day. The South Asia team picks them up, starts building, and has questions, but North America is asleep. The handoff breaks right at the seam.


The framework: four practices that hold distributed teams together

+--------------------+     +--------------------+
|  ASYNC-FIRST       |     |  CLEAR OWNERSHIP   |
|  RITUALS           |     |                    |
| - Written briefs   |     | - DRI per feature  |
| - Video > meeting  |     | - Decision log     |
| - 24hr response    |     | - No shared        |
|   SLA              |     |   ambiguity        |
+--------------------+     +--------------------+
          |                          |
          v                          v
+--------------------+     +--------------------+
|  GOLDEN HOUR       |     |  DOCUMENTED        |
|  OVERLAP           |     |  DECISION-MAKING   |
|                    |     |                    |
| - 1hr daily sync   |     | - ADRs for arch    |
| - High-signal only |     | - Written > oral   |
| - No status        |     | - Async review     |
|   updates in sync  |     |   before sync      |
+--------------------+     +--------------------+

Practice 1: async-first rituals

The shift I make on every distributed team is to treat asynchronous communication as the default and synchronous communication as the exception.

Every sprint brief, architecture decision, and feature spec gets written before it gets discussed. Engineers review on their own time and add questions or concerns in writing. By the time we're on a call, we're settling genuine disagreements, not walking through context that should have been documented.

Short video walkthroughs (Loom or whatever) for complex technical context replace the 30-minute meeting that half the team attends at midnight.

Practice 2: clear ownership

Ambiguity is a tax, and distributed teams pay it at a higher rate than co-located ones. I assign a Directly Responsible Individual to every significant piece of work. The DRI owns the outcome, not just the execution. They make judgment calls inside defined boundaries without waiting for a meeting.

That takes explicit trust delegation, which is a harder conversation than it sounds. But it's the single most effective way to keep a distributed team moving.

Practice 3: the golden hour

Every distributed team I've run has exactly one hour a day of genuine overlap, where both sides are working at the same time. That hour is protected.

The golden hour is not for status updates. It's for unblocking: architectural questions that need a real conversation, decisions where two perspectives are genuinely needed, and the relationship-building that async communication can't fully cover. Status goes in the written standup. The golden hour is for what actually needs to happen in real time.

Practice 4: documented decision-making

Oral decisions on a distributed team are institutional knowledge waiting to evaporate. Every significant architectural or product decision gets written into an Architecture Decision Record or something like it.

The format barely matters. What matters is that the decision, the context, and the reasoning are written down somewhere findable. That kills the "but I thought we decided..." conversations that cost distributed teams an enormous amount of time.


Team communication model

graph LR
    subgraph NA["North America (EST/PST)"]
        PM[Product / Stakeholders]
        TLA[Tech Lead NA]
    end

    subgraph SA["South Asia (BST / +6)"]
        TLB[Tech Lead SA]
        ENG[Engineering Team]
    end

    subgraph SHARED["Shared Infrastructure"]
        ADR[Decision Log / ADRs]
        BRIEF[Sprint Briefs - Written]
        ASYNC[Async Video Updates]
    end

    PM -->|Written brief| BRIEF
    BRIEF --> TLB
    BRIEF --> TLA
    TLA <-->|Golden Hour - 1hr daily| TLB
    TLB --> ENG
    ENG -->|Written standup + blockers| TLB
    TLB -->|Escalation only| TLA
    TLA -->|Architecture decisions| ADR
    TLB -->|Architecture decisions| ADR
    ADR --> ENG
    ASYNC --> PM

What this does not fix

This framework won't save a team where trust has already broken down, where the distributed structure was set up purely to cut costs with no real investment in process, or where leadership treats the offshore team as a code factory instead of an engineering team.

Distributed teams aren't inherently harder than co-located ones. They just punish process debt faster and reward good written communication habits more visibly.


The takeaway

If your distributed engineering team feels like it's running at half speed, the bottleneck is almost never the engineers. It's the communication infrastructure around them.

You don't need everyone in one room. You need clear ownership, protected overlap time, and a culture where the default answer to ambiguity is to write it down instead of scheduling a call.

Work with me

Ready to discuss your architecture?

I work with founders and engineering leaders as a Fractional CTO to translate business goals into technical strategy - and execute on them. Free 30-minute Technical Health Check to start.

Book a call