A Bloom filter in forty lines of Java
The smallest useful implementation, the two parameters that matter, and how wrong the false-positive rate gets when you guess them.
Notes from building backend systems: what I designed, what broke, and the reasoning I wish I had written down the first time.
Topics
Not tutorials. Working notes: what I tried, what it cost, and what I would tell myself before starting.
Agents, LLMs, RAG and AI architecture — what I build, test and break.
Distributed systems, databases, messaging, caching and scaling.
Working references from Java, Spring, PostgreSQL, Kafka, Redis and Kubernetes.
Full write-ups from problem to trade-offs, with the diagrams to match.
Latest
Newest first. Some are finished thoughts, others are still moving.
The smallest useful implementation, the two parameters that matter, and how wrong the false-positive rate gets when you guess them.
Executors, CompletableFuture and virtual threads — written down so I stop rediscovering the same three pitfalls.
Next
I am always up for a conversation about architecture, trade-offs, or a bug that refuses to die.
Start a conversation