Skip to content
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ categories: ["engineering"]
subCategories: ["Blockchain & Web3"]
tags: ["Solana", "Ethereum", "Smart Contract", "Solidity", "Anchor"]
landingPages: ["Blockchain-Onchain infra"]
heroColor: "#5E86E2"
heroColor: "#398DAD"
thumb: "thumb.png"
thumb_h: "thumb-h.png"
intro: "A systematic introduction to the fundamental differences between Ethereum and Solana in account models, execution mechanisms, and fee systems."
Expand Down
71 changes: 71 additions & 0 deletions articles/The Architecture of Startup Distributed Teams/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
---
published: false
title: "The Architecture of Startup Distributed Teams"
author: ["Peter Wang / CEO"]
createTime: 2026-02-05
categories: ["engineering"]
subCategories: ["Management"]
tags: ["Startup", "Distributed Teams", "Engineering Management"]
landingPages: []
heroColor: "#3991C0 "
thumb: "./thumb.png"
thumb_h: "./thumb_h.png"
intro: ""
previousSlugs: []
---

Over the past decade, I’ve overseen the launch of over 120 MVPs. I’ve watched companies evolve from napkin sketches to Series C scale, some as independent startups, others as incubated ventures within mature tech organizations. Combined with my experience running global engineering teams as a VP of Engineering for a public company, this vantage point has taught me a singular truth: distributed work succeeds brilliantly, or it fails in ways that slow companies down for years.

There is a mythology around remote engineering that suggests you can simply "hire the best talent anywhere" and magic will happen. Without deliberate design, this leads to six engineers in five time zones, constantly waiting on one another. Therefore, the future of engineering will be decided by how well teams are designed to learn, adapt, and ship.

Mastering team design is one of the highest-impact lessons a founder can learn to navigate the rocky transition from looking for product-market fit to achieving it. Deliberate organizational design is necessary to unlock scalability. Without bringing intentionality to this process, the founders risk becoming a bottleneck that limits future growth.

## Phase 1: The Pre-PMF Reality and the Embedded Model

Pre-Product Market Fit typically encompasses the Pre-Seed and early Seed stages, with the objective of high velocity of experimentation. A firm needs to run as many experiments as possible to find the signal. In our embedded model, everyone communicates with everyone; it’s a mesh network of "node-to-node" communication across timezones and locations.

![](./illustration-a.png){.d-block .mx-auto .my-3 .mw-100}{width=500px}

This works for Pre-PMF startups because the founders are the central routers. They are always on the product, always available, and they drive the communication. They act as the glue that holds disparate nodes together. This approach works because we inject capability by providing niche expertise, and it provides access to velocity by plugging in high-quality engineers to bypass slow local hiring.

The embedded model inevitably fails when the founders move from building to running the company. As the founders get pulled away by investor prep, hiring, and client meetings, the central routing node disappears. This is when node-to-node communication starts to break down. Without a deliberate redesign, the key communication responsibility shifts to other folks in the organization who may lack well-defined roles or the technical context to drive the mesh. Friction increases, and velocity drops.

### The Pivot Point: Conway’s Law

> "Organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations." — Melvin Conway

As a startup moves through the Seed stage, strong PMF signals begin to emerge. This is the danger zone. In the early days, the prior approach worked because the codebase was monolithic and the founder was the arbiter for everything. But as you scale, the founder becomes the bottleneck.

![](./illustration-c.png){.d-block .mx-auto .my-3 .mw-100}{width=500px}

## Phase 2: Post-PMF and the Pod Model

Post-PMF does not mean slowing down becomes an option, as a firm still needs speed to drive experimentation at a wider scale. At this phase, though, the firm has a mandate to protect the core of the business. You have users, revenue, and a reputation. You cannot break the main application while testing new features. To solve this, we move from the embedded model to the pod model.

The Pod Model is the organizational equivalent of a microservice. It relies on well-defined boundaries and full ownership. To make a distributed pod function like a reliable microservice, you must design the interface with the same rigor you apply to your codebase.

![](./illustration-b.png){.d-block .mx-auto .my-3 .mw-100}{width=500px}

### Best Practices

#### #1: Architect the Org Before the Work

Just as software systems require clear service boundaries, teams need clearly defined ownership boundaries. This starts by identifying modular domains that a distributed team can fully own, such as a mobile application, an internal admin tool, or a specific microservice.

True ownership also requires the right mix of roles. A successful pod is cross-functional, typically including a tech lead, product manager, and QA, so it can ship end-to-end without relying on external teams. Many organizations benefit from a hybrid topology, where some team members remain embedded within core teams to inject critical capabilities, while other groups operate as autonomous pods responsible for distinct feature sets.

#### #2: Redesign Dependency Management

Redesigning the organization also requires a deliberate rethink of dependency management. The primary objective should be to reduce unnecessary communication and coordination overhead between teams. Roadmaps should be decoupled wherever possible so pods can execute independently without constant back-and-forth. When dependencies cannot be eliminated, they should be formalized through clear service level agreements. For example, if a pod requires an API change from a core team, headquarters must commit to a defined turnaround time. This ensures that distributed teams are not blocked simply because the main office is offline or operating on a different schedule.

#### #3: Identify the Internal Champion at HQ

In addition to structural clarity, every pod needs a dedicated internal champion at headquarters. This individual acts as a human “API gateway” between the pod and the rest of the organization. Typically a lead engineer, engineering manager, or product manager, this person is empowered to advocate for the pod’s needs, resolve conflicts, and remove obstacles. By having a trusted bridge in place, founders and senior leaders can stay focused on the broader vision rather than being pulled into day-to-day execution issues.

#### #4: Define and Communicate Success Metrics

Finally, ownership must be paired with clear accountability through well-defined success metrics. Teams need to understand what success looks like, not just how the work should be done. Product outcomes and team performance metrics should be explicitly defined and communicated consistently. When expectations are clear, pods gain real decision-making authority. As long as they meet agreed-upon quality standards and key performance indicators, they are free to determine how best to build and deliver their work.

## Conclusion

The transition from a founder-led mesh to a scalable, modular organization is one of the most critical evolution in a startup’s life. Designing a deliberate organizational structure is one of the highest-impact actions a founder can take, and it’s a critical step in their growth as both a leader and an executive. It is the difference between an engineering team that becomes a bottleneck and one that becomes a scalable engine for growth. In this way, moving from the Embedded Model to the Pod Model at the right moment can unlock new capability, sustained growth, and operational maturity.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
29 changes: 28 additions & 1 deletion generated/dir.json
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,33 @@
"path": "articles/Image%20Search%20with%20AI%20Models/README.md",
"slug": "image-search-with-ai-models"
},
{
"published": false,
"title": "The Architecture of Startup Distributed Teams",
"author": [
"Peter Wang / CEO"
],
"createTime": "2026-02-05T00:00:00.000Z",
"categories": [
"engineering"
],
"subCategories": [
"Management"
],
"tags": [
"Startup",
"Distributed Teams",
"Engineering Management"
],
"landingPages": [],
"heroColor": "#3991C0 ",
"thumb": "./thumb.png",
"thumb_h": "./thumb_h.png",
"intro": "",
"previousSlugs": [],
"path": "articles/The%20Architecture%20of%20Startup%20Distributed%20Teams/README.md",
"slug": "the-architecture-of-startup-distributed-teams"
},
{
"published": true,
"title": "How to Migrate an Ethereum Protocol to Solana — Contracts (Part 1)",
Expand Down Expand Up @@ -97,7 +124,7 @@
"landingPages": [
"Blockchain-Onchain infra"
],
"heroColor": "#5E86E2",
"heroColor": "#398DAD",
"thumb": "thumb.png",
"thumb_h": "thumb-h.png",
"intro": "A systematic introduction to the fundamental differences between Ethereum and Solana in account models, execution mechanisms, and fee systems.",
Expand Down
2 changes: 1 addition & 1 deletion generated/dir.min.json

Large diffs are not rendered by default.