Published 2026-09-06
tag(s): #random-thoughts #failures #programming
When I wrote about organizations being complex, I touched on the topic of organization sizes:
Whether all orgs need to grow, companies in particular, is a different topic. I am firmly of the camp that most of them need the opposite, to stabilize at a small-to-medium size. And they grow more than that because of market/financial reasons, rather than organization health.
A few days later I read a post or article (don't remember where, and it seems I didn't save a
link) about how software never seems to be done and everyone is constantly adding new
features and over-complicating their products.
Of course this rang true, it made me think
of Zawinski's law.
And then I pondered a bit more on it and connected it the passage I quoted above.
The title assumes speed to market is always the most important thing, which is questionable. I won't deny that it matters, maybe even that it matters a lot. I feel there's a bit of a worshiping about releasing as soon as possible.
But it would make sense that teams grow as you ramp up development and pick up delivery
speed.
Then, what happens after you had a couple major releases? When you move into maintenance and
bug fixing, and you don't need that many people.
Let's say your product/app/website has 3 major modules. There are three senior developers that
did the design of each one.
Even if things are thoroughly documented[1], companies will fret letting go
of those three people that had a major role designing or writing a module. So they hang out
sometimes longer than they are truly needed.
And if a feature or module is perceived as critical, sometimes this same fear applies to a
whole group of people.
(How this fear enables toxic behaviour, either on devs holding companies hostage of their undocumented crap, and companies stunting career development because they don't want to let a dev move on, could be an entire other post)
No manager will be OK with a reduction in head count, out of "organizational
preservation", a kind of survival instinct.
As long as "head count I manage" remains a metric to measure people's importance
within an org, this won't change.
At least, it used to be. Nowadays there are a lot of ways this is spun into positives...
But until a few years ago, a software company letting go of developers was seen as a sign that
they were in trouble.
There are organizational and market incentives that conspire against commercial software ever
being done.
Just like orgs increase in size for reasons that are unrelated to their own health, software
companies keep adding features for reasons unrelated to their products health.
I don't think I discovered anything new, but I thought about it long enough that I felt like writing it down. 🤷🤓