The Computing Series

The Decision Hierarchy

A decision well made at the CTO level follows a sequence:

1. Mental Model (F1): What is the nature of this problem? Is it a State problem (consistency, who owns what data)? A Feedback problem (the system is responding to itself in an uncontrolled way)? A Networks problem (the communication structure is producing the wrong architecture)?

2. Principle (F2): What properties must the solution have? Idempotency? Fault Tolerance? Observability? If the solution violates a principle, it will create a failure mode later.

3. Tradeoff (F4): What is being chosen over what? Name it explicitly. An unnamed tradeoff is a decision made by default, not by design.

4. Law (F9): What constraints apply? If this is a scaling decision, what does Amdahl say about the sequential bottleneck? If this is a team decision, what does Conway say about how the team structure will determine the architecture?

5. Review Questions (F5): What questions has the proposed solution not answered? The unanswered question is usually the failure mode that appears six months later.

This sequence is not rigid — it is a checklist. The CTO runs it fast, in parallel, while listening to a presentation or reading a document. The goal is not to produce a formal report — it is to find the thing that everybody else missed.


Read in the book →