Back to articles

Conway's Law: Why Your Architecture Mirrors Your Org Chart

The structural force that binds your organization's communication patterns to your system design — and how to use it strategically.

The Most Important Law in Software That Nobody Taught You

In 1967, computer scientist Melvin Conway submitted a paper to the Harvard Business Review. It was rejected. The idea it contained, however, turned out to be one of the most durable and consequential observations in the history of software engineering. Conway wrote:

Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure.

This observation — later dubbed Conway's Law by Fred Brooks in The Mythical Man-Month — is not a suggestion or a best practice. It is closer to a law of physics for sociotechnical systems. It describes a force that is always operating, whether you are aware of it or not. If you have ever wondered why your software architecture feels tangled, rigid, or oddly shaped, the answer is almost certainly staring at you from your org chart.

Why It Works: Communication Boundaries Become System Boundaries

The mechanism behind Conway's Law is straightforward once you see it. Software systems are built by groups of people who must communicate to coordinate their work. When those people are organized into teams, the boundaries between teams become the natural boundaries between system components. Teams that communicate frequently build tightly integrated components. Teams that rarely communicate produce components connected by thin, brittle interfaces — or no interface at all.

Consider a company with separate frontend, backend, and database teams. Each team has its own planning cycle, its own backlog, and its own manager. The result is predictable: a three-tier architecture with a rigid boundary at each layer. Changes that cut across layers — which is most meaningful user-facing changes — require cross-team coordination, ticket handoffs, and scheduling negotiations. The architecture did not emerge from a deliberate design decision. It emerged from the communication structure of the organization.

This is not a failure of the engineers involved. It is the natural, inevitable consequence of how human collaboration works. People design the parts of the system they can see and influence, and what they can see and influence is defined by who they talk to regularly. Communication boundaries become API boundaries. Org chart lines become service boundaries. Reporting structures become architectural layers.

The Evidence Is Everywhere

Decades of research have confirmed Conway's original observation. A landmark 2008 study by Alan MacCormack, John Rusnak, and Carliss Baldwin at Harvard Business School examined multiple software products and found a strong correlation between organizational structure and system architecture. Products built by tightly coupled organizations had tightly coupled architectures. Products built by loosely coupled organizations — including open-source communities — had more modular designs.

Microsoft Research produced similar findings when studying their own codebases. They discovered that organizational metrics were better predictors of software defects than code metrics. The number of teams touching a component, the organizational distance between contributors, and the pattern of cross-team handoffs all predicted bugs more accurately than code complexity, code churn, or test coverage. The org chart was literally encoded in the defect rate.

Google's internal studies reinforced this further, identifying cross-team dependencies as one of the strongest predictors of project delays — stronger than unclear requirements or technical complexity. When architecture mirrors an organization that was not designed for the task at hand, friction is the inevitable result.

The Accidental Architecture Problem

Most organizations do not design their team structures with Conway's Law in mind. Teams are formed around historical accidents: an acquisition that brought in a separate engineering group, a reorg driven by headcount targets rather than technical strategy, a team that grew too large and was split arbitrarily down the middle. These organizational decisions, made for managerial or political reasons, silently imprint themselves onto the technical architecture.

The consequences compound over time:

  • Unnecessary services proliferate. When two teams need similar functionality but do not communicate regularly, each builds its own version. The system grows not because the domain demands complexity, but because the org chart does.
  • Integration becomes a permanent tax. Components that should be cohesive are split across team boundaries, requiring constant synchronization. Every feature becomes a multi-team coordination exercise.
  • Refactoring stalls at org chart lines. Engineers can refactor code within their team's boundary freely. But refactoring across team boundaries requires negotiations, shared roadmaps, and political capital. Architecture solidifies along organizational lines, regardless of whether those lines make technical sense.
  • Monoliths resist decomposition. Organizations that try to break up a monolith without changing their team structure find that the new microservices quickly recombine into a "distributed monolith" — because the communication patterns that created the original monolith are still in place.

The Reverse Conway Maneuver

If Conway's Law is a force, it can be harnessed. This is the insight behind what Skelton and Pais, in Team Topologies, call the Reverse Conway Maneuver: deliberately designing your team structure to encourage the architecture you actually want to emerge.

Instead of asking "how should we architect the system?" and then figuring out which teams will build it, you ask: "what architecture do we need, and what team structure will naturally produce it?" If you need a modular, loosely coupled system of independent services, you need small, autonomous teams with clear ownership boundaries and minimal cross-team dependencies. If you need a cohesive, tightly integrated platform experience, you need teams that communicate intensively and share context.

The Reverse Conway Maneuver is not a one-time trick. It is an ongoing practice of aligning organizational design with architectural intent. When the desired architecture changes — as it should, in response to evolving strategy and market conditions — the team structure must evolve with it.

Practical Steps for Engineering Leaders

Applying Conway's Law strategically does not require a massive reorganization. It starts with awareness and small, deliberate moves:

  • Map your current state honestly. Document which teams exist, what they own, and how they actually communicate (not how the org chart says they should). Look for places where team boundaries create unnecessary architectural boundaries.
  • Identify where architecture and org structure are misaligned. Are there components that should be cohesive but are split across teams? Are there services that exist only because two teams could not coordinate? These are signals of Conway's Law working against you.
  • Design team boundaries around desired system boundaries. When forming new teams or restructuring existing ones, start from the architecture you want. If you want independently deployable services, give each service to a team with full ownership and minimal external dependencies.
  • Reduce mandatory cross-team communication. Every regular sync meeting between teams is a signal of coupling. Work toward X-as-a-Service interactions wherever possible — one team provides a well-documented capability, another consumes it through a clean interface, with no standing meetings required.
  • Watch for drift. Organizations evolve continuously. New hires, departures, and shifting priorities gradually reshape communication patterns. Periodically revisit your team-to-architecture mapping to catch drift before it calcifies into structural problems.

From Awareness to Action

Conway's Law is not a curiosity for software history enthusiasts. It is an active, ever-present force shaping your systems right now. Every time a team is formed, merged, split, or relocated, the architecture shifts with it. Every cross-team dependency in your organization is simultaneously a coupling point in your architecture. Ignoring Conway's Law does not make it go away — it just means your architecture is being designed by your HR department instead of your engineering leaders.

The first step is making the invisible visible. When you can see how your teams are connected — who depends on whom, where coordination costs are highest, and where organizational boundaries are creating architectural friction — you can start making intentional choices instead of living with accidental consequences. That visibility is exactly what dependency mapping provides, turning Conway's Law from an obstacle into a strategic advantage.

Ready to put this into practice?

Map Your Team Dependencies