01 · Context
What needed to change
A trading product needed order processing and real-time client updates without coupling each update directly to the database.
02 · Challenge
The hard part
Keep ingestion, persistence, and live fan-out separated so the service could evolve as traffic grew.
03 · Approach
How I approached it
- Designed an independent Node.js order-book service with Kafka for event flow.
- Used Socket.IO to stream updates to connected clients.
- Added Redis caching around database-heavy access paths to reduce load.
04 · Outcome
What shipped
Built the MVP architecture with a modeled 10K operations-per-second capacity target and reduced database load by 40%. The 10K figure was an estimate, not a production load-test result.