Hacker News new | ask | show | jobs
by sillysaurusx 1321 days ago
Software engineers: we’re engineers

Also software engineers: be sure not to fire Ned or else the whole bridge might collapse

5 comments

At the scale of a company like Twitter, the product and infrastructure are less like a static bridge and more like a complex living, evolving organism. So the analogy is not a very good one.

So your patient might be ok if you fire Ned, but if you try to make changes and a critical system goes down, it might take you a lot longer to fix things without the specialists in that system.

You could keep one specialist around for each system, but then you have a very small bus factor.

Bridges have ongoing inspection and maintenance work that will lead to collapses if you decide to just skip it for no good reason too.
It’s not one bridge it’s thousands of bridges, it’s just not know how critical each bridge is. Or how critical it becomes when another one is down.

Look at all the other major engineering failures in history, it’s always small things (a gasket) on a bad day (too cold?) that somehow works day after day until one day it magically doesn’t and you get the Apollo incident. Everything goes catastrophic over tiny things. Imagine if NASA fired half their team before that incident. The only guy who knew the gasket can’t get cold might not still be there because Ned got laid off.

Management: Ned didn't print enough code from the last 60 days. There weren't enough pages of paper. Firing Ned.

Software engineers: We did document he was a load-bearing Ned. He was Ops, of course he doesn't code regularly.

To be fair this is how a lot of industrial engineering works too. Ol joe retired and now we don’t know what’s that special modification we need to make to smooth the flight of planes, cause Joe just knew. This is a lot of military and airplane production.