THOUGHTS + NOTES

BLOG

Field notes on backend architecture, distributed systems, delivery tradeoffs, and practical lessons from production work.

gRPC + Go + Kafka + Cassandra: A Stack for Low-Latency Financial Data
AwsCassandraDistributed SystemDistributed SystemsFintechGoGrpcInfrastructureMicroservices

gRPC + Go + Kafka + Cassandra: A Stack for Low-Latency Financial Data

This post is the write-up I wish existed when I started. Not the "hello world gRPC tutorial" kind. The kind where I tell you what actually happens when you push 400K quote updates per second through this stack, what happens when a Kafka consumer group rebalances during a market open, what Cassandra does to your disk at 3 AM during compaction, and why your gRPC load balancer is silently routing everything to one pod.

35 MIN READ
Read articlearrow_forward
Building a Chat System at Scale: Microservices Lessons
AwsCeleryDistributed SystemDistributed SystemsFintechGoIbkrInfrastructureInteractive BrokersMicroservicesMqttMt4Mt5PythonRmqTrading

Building a Chat System at Scale: Microservices Lessons

We needed one real-time connection per client to carry both financial tick data and social chat - with sub-100ms delivery for prices and guaranteed delivery for messages. This is how we unified both workloads on a single MQTT broker cluster, wired four programming languages through RabbitMQ, ran self-managed Kubernetes on AWS before EKS existed, and built a TradingView-integrated OHLCV pipeline from raw MetaTrader ticks.

28 MIN READ
Read articlearrow_forward
FIX Protocol Demystified: Building Real-Time Stock Quote Distribution
Distributed SystemsFintechFixGoInfrastructureMicroservicesTradingXml

FIX Protocol Demystified: Building Real-Time Stock Quote Distribution

This post is the guide I wish I'd had when I first had to build a real-time market data distribution system. We're going to cover FIX from the wire format up through session management, market data semantics, a full working implementation in Go using QuickFIX/Go, the XML-to-Go code generation pipeline that makes it all type-safe, and finally how to actually deploy and run this thing in production on Linux with systemd - because that's where it lives in the real world, not in some Kubernetes cluster that your DevOps team just discovered at KubeCon.

5 MIN READ
Read articlearrow_forward