Hacker News new | ask | show | jobs
by bluejekyll 3809 days ago
I don't even know what to say about this article, except that it perpetuates this ridiculous idea that there are laborers at the bottom and people above those laborers who know how to communicate and effectively distribute knowledge across all other groups.

If people were computers, then what's being described is a tree of systems, and each node in the tree has full connection to its siblings and its children. But anyone who's designed large scale networks knows that this is horrible for data, because it doesn't allow for failure, and creates bottlenecks. This is why spine leaf architecture is so important.

But people are not computers. Communication is way more lossy than that. What this article fails to point out is that you actually have multiple decision trees in organizations, the architects and technical leads in a software group, vs the people managers. And combining those two roles creates horrible inefficiencies in descision making. Similarly, empowering people closest to the problem to make decisions means that the organization is much more nimble and increases agility.

I don't know what this article's point is, because it does help understand what effective leadership is.

1 comments

The article is talking about the numerical scaling laws that you understand intimately from your day job but that most people who don't think about node-based communication structures on a daily basis are surprised by. Specifically, the article is pointing out that the cognitive loading placed on managers grows much faster than linearly in the number of reports.

Have you thought about how to translate spine-leaf into an organizational design and/or what sort of organizations it might be optimal for?

I'd like to think that modern network design actually could inform organizations, especially large ones, of better methods of communication.

The goal IMO is to increase collaboration between as many groups as possible. Where scrum teams, or similar, are autonomous in making decisions and the scrum masters (or managers) are responsible for inter-team communication and collaboration, but that shouldn't be the only channel. There should be other people from the scrum team responsible for interdisciplinary collaboration.

Basically, as an organization grows, I believe it becomes more important to have redundant communication channels into the scrum team. Like network design, this would be akin to have multiple uplinks from the ToR leading the the spine.