Wednesday, July 9, 2025

A quick note on "At Scale"

 i will submit that the problem of scale is mostly that you


  1. Have to deal with divergent, incompatible SW development paths
  2. Might not be able to handle losing fine-grained control of every element of the business.
  3. Are likely to accumulate heavy processes with a lot of inherent delay and unpredictability in them.
  4. Have to deal with "the law of the 2nd floor" (LO2F)

The Law of Two Floors

The first few points may be obvious enough to not need explanation, but too few people know the LO2F.

Nobody two levels ABOVE OR BELOW you on the org chart really knows what your days are like.
I think this may well be a proper "law" and not just observational comedy.

It doesn't happen in the small, scrappy startups where there aren't three levels on the whole org chart, or where the entire programming team can sit in the same conference room. It is a problem of scale.

You all have enough production work, customer management, finance, regulatory, and technical work every day. You can't really stay in touch.  You don't know everyone by face and name anymore. You've not had coffee together (maybe ever).

You will become an "abstract person" to people 2-3 levels away from you, AND THEY TO YOU. 

Don't think it's "poor me, they don't value me" because it's also "poor them, you don't value them." 

Both sides make up stories about what they think the others do and how they do it -- usually laced with self-protective suspicion.

"They just want to fire us to shore up their balance sheet."
"They don't care about the business or its people, just their quarterly bonus."
"Those programmers don't want to work -- they're probably goofing off right now."
"The testers don't really care about the product or the users, they're just holding up progress."

One might even be tempted to force-mold the real people into the abstract shape one thinks they should have.

Note the "everyone has to be the same" compliance drive, regardless of who people are or what kind of work they do.


Those are problems of scale. 

Perhaps the most painful problem of scale for software development is in divergence. You can read about that in my blog on easy integration (which is harder to do at scale).

No comments:

Post a Comment