Your Team Is a Distributed System
Model your team as a distributed system. Learn why culture is structure—not vibes—through message passing, locality, loss, asynchrony, and non-linearity under load.
This essay places
culture-as-structure
over
culture-as-vibes.
We will model a team like a distributed system.
The properties we'll look at:
- Message-passing
- Lossy
- Locality
- Asynchrony
- Non-linearity
We will examine constraints.
We will trace failure modes.
We will explore structures.
Just lawful system dynamics.
Maintaining coherence under load.
Message-passing
Actor:
Autonomous.
System-like.
Member of any number of systems.
Replace "service" with "actor".
Everything else stays the same.
Actors receive messages.
Actors send messages.
Some messages are explicit:
- Written (e.g. Ticket, Slack)
- Verbal (e.g. whispering, screaming)
Some messages are implicit:
- Body language (e.g. eye-contact, posture)
- Tone (e.g. bored, cutting)
Ideally each actor actively integrates each message.
100% uptime.
(Sad laugh.)
TL;DR: Communication is message-driven.
Lossy
Huh?
..
What did you say?
We lost a packet.
System coherence degrading.
Lets resend the message.
..
Silence.
No ACK.
Let's resend the message.
Yeah, yeah, I got it.
ACKed.
System coherence stabilizing.
(Right?)
TL:DR: The Two Generals' Problem applies.
Locality
Let's look at storage.
- Wiki = HDD
- Whiteboard = SSD
- Brain = RAM
According to "everyone":
Speed is king.
Local lookup the fastest.
Fragmentation inevitable.
Actors only have their local state.
Maintaining coherence requires alignment.
Actors need to actively integrate
each received message
for realities to align.
Through lossy channels.
Good luck.
Failure mode?
Fragmentation (Tech Debt).
TL;DR: Fragmentation is a primary (in)variant of human systems.
Asynchrony
Integration is an expensive process.
Literally.
Integration is an asynchronous process.
Literally.
✅ Message received.
⏳ Integration pending.
Oh no.
This is getting complex.
TL;DR: Pending.
Non-linearity
Example: Promotion.
Who are our candidates?
The 10x engineer.
Knows the codebase inside out.
Fixes bugs in hours.
Resolves incidents in minutes.
The glue engineer.
Maintains the team calendar.
Facilitates the most retros.
Lightens the mood during late night on-calls.
"Speed is king"-mindset:
10x engineer all the way!
Here's a fancy new title!
The glue engineer eventually leaves.
Lack of recognition.
What happens next is predictable:
Loss of structure.
Loss of coherence.
Fragmentation (Tech Debt).
TL;DR: Feedback loops all the way down.
Structure
If this resonates, use these questions in your next retro:
- What assumptions are being made but not named?
- Which work is currently invisible but load-bearing?
- When should we optimize for coherence over speed?
- How can we increase alignment in our ceremonies?
- Where does ambiguity live in the system?
Intrigued?
This work can be done deliberately.
Systemic Engineering is how I help teams and leaders
restore coherence in complex systems.
You can reach me at:
📧 alex@systemic.engineer
Or sign up to get practice-oriented insight and ready-made structures.