The Multi-Year Roadmap That Survives Contact With Reality
A three-year roadmap that locks every quarter is fiction. One with no direction is chaos. The job is building the version that holds a line while reality keeps moving it.
Every multi-year roadmap I've inherited has failed in one of two ways. Either it was a Gantt chart that planned quarter eleven in the same detail as quarter one, and reality shredded it by month four. Or it was a vibe, three years of "scale the platform" and "invest in AI" with nothing underneath, and the team did whatever was loudest that week. Both of them feel like planning right up until reality gets a vote, and then they don't survive it.
The roadmap that works is a third thing. It commits hard to direction and stays deliberately loose on path. It tells you what you're trying to be true in three years, and it refuses to pretend you know the exact route there. That distinction sounds academic until the market shifts, a competitor ships, or a model release rewrites your assumptions, and you find out which kind of roadmap you actually built.
Direction is fixed, path is negotiable
A real roadmap separates two things most companies fuse: the outcomes you're betting the business on, and the work you think will get you there. The first should barely move year to year. The second should be rewritten constantly. When people say a roadmap "changed," they usually mean the path changed, which is fine. The failure is when direction quietly changes because nobody was guarding it.
So I anchor the roadmap to a small number of durable outcomes, three or four, expressed as conditions: the platform supports ten times the load without re-architecture, onboarding a new product line takes weeks not quarters, AI is doing real production work in the core workflow. Those are stable enough to plan against and concrete enough to argue about. Everything below them, features, sequencing, tooling, is a hypothesis I expect to revise.
Plan in horizons, not quarters
The Gantt-chart mistake is planning all of time at the same resolution. Reality doesn't work that way, so the plan shouldn't either. I run three horizons at different fidelity:
- Now (0 to 6 months): committed, sequenced, resourced. This is a plan you can hold a team to.
- Next (6 to 18 months): directional bets with rough shape. Named, owned, scoped enough to argue about, not yet scheduled to the week.
- Later (18 to 36 months): the outcomes and the big architectural and AI bets, deliberately vague on execution. Its job is to keep today's decisions from boxing in tomorrow's options.
The discipline is letting work earn its way forward. Things graduate from Later to Next to Now as you learn, and they get more detailed only as they get closer. If a roadmap specifies month thirty in the same detail as month two, that detail is fiction and it will cost you, because teams treat written-down detail as commitment whether you meant it that way or not.
Architecture and AI are roadmap citizens, not someday-items
This is where most roadmaps quietly rot. Architecture work and AI initiatives get parked in a "later" column that never arrives, because feature work always wins the quarter. Then three years pass, the platform can't take the next jump in load, the AI bet is still a slide, and the roadmap that looked responsible was running up debt the whole time.
I treat both as first-class line items with the same standing as revenue features, because they are the thing that lets you keep shipping revenue features. Architecture earns roadmap space when it's tied to a named future outcome, not refactoring for its own sake, but the specific re-architecture that the ten-times-load outcome demands. AI gets treated the same way: not "explore AI" floating in Later forever, but concrete bets with owners, evals, and cost ceilings, sequenced so the foundational work, data, observability, guardrails, lands before the agentic systems that depend on it. I've run LLM-powered data agents on roughly 250 million records a month across a 75-node cluster. None of that happens if AI lives in the someday column.
Build in the slack reality will demand
A roadmap planned to 100% capacity breaks the first time anything goes wrong, and something always goes wrong. So I leave real headroom in the committed horizon, enough to absorb the outage you didn't see coming or the bet that quietly fails. That isn't padding; it's the part of the plan that admits you're working under uncertainty. The roadmaps that survive have enough give to bend without snapping, which is usually worth more than another layer of detail.
And it has to be reviewed like a living thing, not blessed once and framed on a wall. I revisit the path every quarter and the direction once a year, on purpose, so changes are decisions rather than drift. A good multi-year roadmap doesn't promise what will happen; it takes a clear position on where you're going and stays honest enough to keep rewriting how you get there. Get that balance right and the roadmap stops being a document people quote at each other and becomes the thing that actually steers. If you want help building one that holds, that's the work I do as a fractional CTO.
