The Decisions You Make in Year One Decide What You Can Do in Year Four
There is a pattern worth naming, because it repeats across companies that otherwise have very little in common.
A company builds quickly in its first year or two. The system works. Customers arrive. Then somewhere in the third or fourth year, things begin taking longer than they should. Deals sit in security review. Integrations get quoted in quarters. A second product line takes far more engineering than the first one did. Nobody can point at the cause, and the usual answers — hiring, process, focus — do not fix it.
The cause is almost always a small number of structural decisions made very early, when moving fast was the right thing to do.
The decisions in question
They are rarely dramatic. In most systems they come down to four or five choices:
- Whether a change to a record is written over the old value, or kept as history.
- Whether isolation between customers is built into the platform, or maintained by convention.
- Whether access rules live in one place, or in every screen that needed them at the time.
- Where the authoritative version of a customer, an asset or a transaction actually sits.
- Whether an audit trail is a property of the system, or a feature on a few pages.
None of these are mistakes when they are made. They are the correct trade at the time — fewer moving parts, faster releases, and no customer yet asking the questions that would make the harder choice worth it. Speed in the early years is what buys a company its later years.
They become structural the moment everything built afterwards assumes they are true.
Why this is different from ordinary technical debt
Every engineering team carries technical debt, and every competent team knows how to retire it. A messy service, an untested path, a slow query. It sits inside a boundary. It can be scoped, funded and cleared.
This does not sit inside a boundary. It sits underneath one. When the tenancy model is wrong, or access rules are spread across fifty places, or history was never kept, the problem is not in any single module. It is in the assumption every module was built on.
It is the difference between replacing a window and moving a load-bearing wall. The first is work. The second is a different kind of project entirely, and it has to be treated as one.