When the system does not exist yet, or the one that does cannot survive what is coming.
We produce the complete design of a system before a line of production code is committed. Not a recommendation deck. The actual architecture, decided and justified, that a team can build from and a stakeholder can defend. We design how the system decomposes, how it talks to whatever it has to talk to, hardware included, and how it holds at the scale it will actually be asked to carry rather than the scale in the demonstration.
A handful of decisions here are effectively permanent: the hardware commitment, the decomposition, the scale model, the consistency and state model, the failure architecture, and the partition between what is bought and what is built. Every one of them is cheap now and a rebuild later. Where there is existing hardware, we validate what it actually supports before designing around it, because a specification is a claim, not a measurement.
Decompose the system
Decide how the system breaks into parts, what each one owns, and where the hard boundaries are.
Choose and justify the stack
Every technology choice is defended against the alternatives and against what the competition got wrong, not selected by default or by fashion.
Protocol and scale strategy
Decide how it talks to everything it must, hardware included, and how it holds at the scale it will actually be asked to carry.
Validate the hardware
Where hardware or a codebase already exists, test what it actually supports before designing around it, because an untested assumption is a liability, not a plan.
Roadmap the delivery
Produce the build sequence and the team needed to execute it, so the design can be acted on rather than admired.
Anonymized, all real delivered work. Described by domain, architecture, and outcome, never by client.