Streaming architectures designed for low latency and high throughput. Event-driven pipelines that hold correctness at volume — from market data feeds to enterprise event buses. I design systems that process continuously, fail gracefully, and recover automatically.
Order book modelling, price formation, and execution logic. Exchange API integration across Betfair, Betdaq, and Smarkets. Automated strategy engines driven by proprietary real-time signals: Weight of Money, Last Traded Price dynamics, price velocity, and order flow imbalance. Production-grade risk controls and hedging logic.
Robust, scalable APIs built with Java and Spring Boot. Designed for reliability, clear contracts, and long-term maintainability. I build RESTful services with proper versioning, error handling, and documentation — and gRPC or GraphQL where they're the right fit. Internal platforms I've built serve millions of requests per day.
AWS systems using CDK, Lambda, and S3. Event-driven patterns and cost-efficient scalable pipelines without over-engineering. I design for operational simplicity: infrastructure as code, automated deployments, and clear operational boundaries that reduce on-call toil.
Optimisation at system and code level. Concurrency, GC tuning, and latency analysis for systems where milliseconds matter. I profile, measure, and tune — not guess. I've reduced p99 latencies by order of magnitude through targeted thread model changes, off-heap allocation strategies, and eliminating contention at the right level.
Hexagonal architecture, DDD, CQRS, and event sourcing applied where they reduce complexity — not as cargo cult. I approach architecture decisions with a clear focus on the problem, the team, and the operational constraints. I've designed systems that have remained maintainable years after initial delivery.
Looking to engage on one of these areas?