Complexity Is Interest on Yesterday's Decisions

Engineering leaders often explain complexity with growth: more customers, more regions, more features, more teams.

Those matter. But complexity comes from something more fundamental.

Complexity is the accumulated interest on yesterday's engineering decisions.

Every Decision Has Carrying Costs

A new message bus solves a problem. It also creates obligations: monitoring, patching, securing, documenting, troubleshooting, upgrading, and explaining why it exists.

Those costs rarely appear in the initial review. They are paid gradually over years.

Technical Debt Is Decision Debt

Code does not wake up one morning and become debt.

Context changes. Assumptions change. Requirements change.

The original decision keeps generating cost under new reality.

Simplicity Is Economics

Simplicity is not just elegance. It is economics.

Every unnecessary dependency creates recurring operational expense. Every additional service increases cognitive load. Every custom workflow becomes another thing future engineers must understand.

Annual Carrying Cost

Architecture proposals should include not only initial implementation cost, but annual carrying cost:

  • Operational overhead
  • Security maintenance
  • Cognitive load
  • Onboarding complexity
  • Future migration difficulty

Organizations would make different decisions if they priced complexity accurately.

Senior Engineers Reduce Interest

Junior engineers often create capabilities. Senior engineers often remove obligations.

They simplify, delete, collapse abstractions, and retire processes.

They reduce the organization's interest payments.

Nexplane is open source. If this resonated, star the repo — it helps others find it.
⭐ Star on GitHub