I build distributed systems and the tooling around them. I recently finished my MSc at FEUP, where my thesis work centred on set reconciliation across multi-replica networks. Most of what I write is Rust, Go and C++, with TypeScript when something needs a front end.
I'm currently looking for a systems or backend engineering role.
Distributed Set Reconciliation Simulator · Rust
A modular simulator for measuring how hybrid Rateless Bloom Filter and IBLT algorithms behave when replicas diverge. It runs reconciliation across up to 100 nodes over 3 network topologies and reports the bandwidth and round-trip cost of each approach.
| Project | What it does | Stack |
|---|---|---|
| Music Player DSL | A domain-specific language for composing and playing music, built on the Java MIDI API | Java |
| Activity Library | An online library for browsing and organising activities | Go |
| Camp Scheduler | AI camp-scheduling assistant — chat with Llama 3.3 70B over WebSocket to build and persist schedules | TypeScript, Cloudflare Workers, D1 |
Systems: Rust · C/C++ · Go
Backend: Go · Python · Java · Kotlin
Web: TypeScript · Next.js · React
Tools: Docker · PostgreSQL · Git · Neovim

