Managing a distributed development team well
The management practices that decide whether a distributed team works: explicit objectives, decision rights written down, and metrics that are not headcount.
Distributed teams fail for management reasons far more often than for technical or cultural ones. The distance does not create the problems; it removes the informal repair mechanism that was hiding them.
A co-located team with unclear ownership resolves it by someone turning round and asking. A distributed team cannot, so the ambiguity becomes a delay. Everything below is about closing those gaps explicitly.
Set objectives that can be verified without you
The most common management failure is a brief that was clear to the person who wrote it.
What makes an objective workable across a distance:
- Scope stated as what is included and what is not. The exclusions do more work than the inclusions.
- Acceptance criteria as scenarios, not adjectives. “Handles errors gracefully” cannot be verified; “returns a 422 with the field name when validation fails” can.
- Non-functional expectations named — response time, data volumes, concurrent users. These are assumed locally and have to be stated remotely.
- The business reason. A team that knows why something is wanted makes better decisions on the hundred small questions you never see.
The test: could someone who was not in the conversation verify this is done? If not, you have a shared assumption, and shared assumptions do not survive a time-zone boundary.
Measure outcomes, not activity
The instinct with a team you cannot see is to measure activity — hours, tickets closed, commits. Each of these is easy to produce and tells you nothing about value.
Four that resist gaming:
- Lead time for change — from “we decided” to “it is live”
- Change failure rate — the share of releases needing a fix
- Rework rate — work returned as not-done, which is usually a specification problem rather than a skill problem
- Defects found after release, as a share of those found before
Rework rate is the distributed-specific diagnostic. When it is high, the instinct is to blame capability. Almost always the cause is at the start of the process: “done” was not defined clearly enough.
Write down who decides what
In a co-located team decision rights are implicit and mostly work. Distributed, implicit means everything escalates by default — which slows the work and, worse, teaches the team not to decide.
Three categories, written down:
- Decides alone — technical implementation within an agreed approach, refactoring inside their area, tooling choices
- Proposes, you approve — architectural changes, anything affecting other teams, scope trade-offs
- Escalates immediately — security findings, data-protection concerns, anything that puts a commitment at risk
The first category is the one organisations under-fill. A team that cannot decide anything is a queue with salaries, and the best people leave it first.
Communication: overlap beats tooling
Most advice here is about tools. The tools are fine; the structural variables are different.
Overlap hours are the single most important factor. Same-day review, demo and question-answering is the difference between a team and a queue. A 24-hour round trip on each question turns a two-day task into a week, and it compounds across a backlog. This is why CET overlap matters more than distance — a point that also drives delivery quality, as covered in quality assurance in distributed development projects.
Write decisions down where they can be found. In a room, the decision lives in the room. Distributed, an unrecorded decision gets re-litigated in three weeks by someone who was not there.
Make disagreement cheap. The most expensive failure mode in distributed delivery is a team that built something it believed was wrong because raising it felt costly — a status gap, a language gap, or simply nobody ever having modelled it. The diagnostic is whether anyone has pushed back on you recently. If not, assume the channel is closed rather than that you have been right.
Keep the regular contact short and frequent rather than long and rare. A fifteen-minute daily overlap surfaces problems faster than a two-hour weekly review, and a problem surfaced on day one costs a fraction of the same problem surfaced on day nine.
Give the team what it needs to own outcomes
This is the structural precondition behind every practice above: a team that cannot see the consequences of its work cannot own results.
In practice that means access to production telemetry, the ticket queue, real usage data and — where possible — the users. Withholding these and then asking for ownership is asking for something that is not available.
The maturity progression this enables is set out in building a global capability centre to Swiss standards.
The Swiss and DACH specifics
Data access has to be settled before the team starts. Engineers in another jurisdiction touching personal data is a real question under revDSG/nDSG and GDPR. Pseudonymised datasets, documented access controls and sub-processor records answer it — but not retrospectively.
Documentation is part of the deliverable, not overhead. In any regulated context the evidence trail is a requirement, and generating it from the pipeline costs almost nothing while assembling it later costs a great deal.
Commitments are taken literally. A date communicated to a Swiss client is a date. Where a distributed team introduces uncertainty, build that into the estimate rather than into the apology.
Related reading
- Choosing a software development partner in Switzerland
- Building a global capability centre to Swiss standards
- Dedicated engineering teams
If a distributed team is not delivering what you expected, book a call. No obligation.