Blogmark
Squeeze the hell out of the system you have, by Dan Slimmon
via jbranchaud@gmail.com
This article is great because it gets at the higher-level thinking that engineering leads and CTOs need to bring to the table when your team is making high-impact technical decisions.
Anyone who has been in the industry a bit can throw around the pithy phrases we use to sway approval toward the decision we're pitching, e.g. "micro-services allow us to use the right tool for the job".
That can be a compelling argument alone if the stakes are low or we're not paying attention.
The higher-level thinking that needs to come in looks beyond the lists of Pros that we can make for any reasonable item that is put forward.
We have to have an understanding of tradeoffs and a more holistic sense of the costs.
But don’t just consider the implementation cost. The real cost of increased complexity – often the much larger cost – is attention.
The attention cost is an ongoing cost.
[Clever solution that adds complexity] complicates every subsequent technical decision.
Squeeze what you can out of the system, buying time, until you have to make a concession to complexity.
When complexity leaps are on the table, there’s usually also an opportunity to squeeze some extra juice out of the system you have.
because we squeezed first, we get to keep working with the most boring system possible.