Tag State Machines

Designing an Exchange Matching Engine

A system-design perspective on ultra-low-latency order matching, price-time priority, partitioning, market data, and correctness An exchange matching engine sits at one of the most unforgiving boundaries in financial technology. It receives orders from market participants, validates them, places them into…

When One Transaction Became Five Services

The transaction used to be simple. At least, it looked simple from the application’s perspective. A customer placed an order. The system processed the payment. The order was created. Inventory was reserved. The ledger was updated. The customer received a…