~/shahin-kiassat
← all posts

#architecture

5 posts

9 min

Designing a deterministic kernel

Event-driven systems rot into callback soup where no two runs behave alike. Here's the cure I used in a trading engine: one queue, one pure reducer, one journal, one effect executor — and the discipline that makes two replays byte-identical.

9 min

Fast event-driven IPC in .NET, with ZeroMQ and NetMQ

Two processes, one firehose of events, no broker. What ZeroMQ actually is, which socket pattern fits which job, real throughput numbers, the foot-guns that eat your messages silently — and the lock-step protocol that buys determinism over a socket.

4 min

A trading engine as a pure function

Most backtesters are a second implementation of the strategy — so they prove nothing about the code that actually trades. Build the engine as a pure reducer and the backtest, the live path, and the debugger become the same thing.

2 min

Don't trust the agent — verify it

Autonomous coding agents lie by omission: they report success they didn't earn. The fix isn't a better prompt — it's an orchestrator that independently checks every claim.