Architecture Gallery
Every diagram is interactive.
Click nodes to inspect them. Connections highlight on hover. Each architecture reflects the constraints that shaped it.
Dynamic Pricing Engine
Instead of replacing the pricing model, I introduced an event-sourced pricing layer alongside it. The monolith continued to emit pricing requests; a new engine answered them. The engine's decisions were idempotent and fully auditable. The old system gradually received less traffic until it was inert.
Click any node to inspect
Key architectural decisions
Auditability was a hard requirement. When a pricing decision is wrong, we need to replay exactly what the engine saw.
The cost of a mistake was too high. Gradual rollout let us catch race conditions under 2% traffic before they affected 100%.
Rules encode yesterday's market. A signal lets the engine's decision function evolve without redeployment.