I'm a self-taught full-stack software engineer with 10+ years of turning ideas into products people actually use: pixel-perfect websites, SaaS platforms, cloud pipelines that chew through hundreds of gigabytes of documents, and Rust engines that stream live data onto a 3D globe.
In plain English: I take messy, real-world data and turn it into fast, secure, good-looking software.
- ๐ฆ Building FusionVault, an open-source data platform in Rust and TypeScript
- ๐ค Studying a Diploma of Artificial Intelligence, and shipping AI features (RAG, OCR, local LLMs) for real
- ๐งฑ Off the keyboard: Lego builder, traveller, gardener and forever-learner
- ๐ฌ Ask me about stream processing, geospatial maths, or why your RAG might not need a vector database
- ๐ฆ Built a serverless cloud pipeline that processes 200 GB+ document datasets to find leaked personal data after breaches
- ๐ข Designed zero-downtime CI/CD from scratch for a high-traffic, highly regulated national platform
- โก Created monorepos and local testing tools that sped up delivery for whole teams
- ๐ง Shipped an AI document platform (OCR + RAG + entity extraction) and a QR-code ordering SaaS for restaurants
- ๐ Led a move to modern headless web architecture, with the work recognised at an industry conference
- ๐ฆ Published 8 open-source Rust crates and made 1,800+ commits to FusionVault in 2026
The short version: pull data from many systems (aircraft, sensors, documents, spreadsheets) into one live, searchable digital twin of the world, explore it on maps and a 3D globe, and make sure every person sees only what they're allowed to see.
Under the hood it's Rust on Apache DataFusion, Kafka, Iceberg and OpenSearch, fine-grained access control with OpenFGA, machine-learning enrichment, and a React console with MapLibre, deck.gl and Cesium. These pieces are open source:
| Project | What it does | |
|---|---|---|
| ๐ | Streams |
A stream-processing engine. Describe a pipeline in one TOML or SQL file and it handles windows, joins, checkpoints and exactly-once output. Runs the full Nexmark benchmark suite. |
| ๐ | geo3d |
3D geodesy with zero dependencies: Earth-centred frames, look angles, line of sight, closest approach. |
| โฑ๏ธ | geo4d |
Adds time: nanosecond atomic clocks, trajectories, "will these two aircraft get too close in the next 10 minutes?", even tectonic-plate drift. |
| ๐ | geo5d |
Adds gravity and relativity. Tested against the Tokyo Skytree optical-clock experiment, because clocks really do tick faster upstairs. |
| ๐ | datafusion-opensearch |
Query OpenSearch or Elasticsearch with plain SQL, pushing filters and limits down to the cluster. |
| ๐ | downsampling |
Shrinks millions of points into a chart line or map track that still looks right. |
- ๐ pageindex: RAG without a vector database. An AI agent reads a document's table of contents the way a person would, then cites the pages. Indexes a 758-page textbook in about 1 second, 16ร faster than the original.
- ๐ฐ๏ธ Satellite radar tomography (coming soon): rebuilding a published radar-imaging method from scratch in Rust, every equation pinned by tests, to independently check it against open satellite data.
- ๐ฝ๏ธ DineQuick: QR-code ordering and menu management for restaurants and franchises.
- ๐ฎ Just for fun: a fish tank game, Tetris on the raw Canvas API, and 2dcraft, a 2D take on Minecraft.
- ๐ Home-lab tinkerer: my NAS runs my own APIs and webhooks, and my house speakers announce alerts.
Also: Apache DataFusion ยท OpenFGA ยท RAG ยท OCR ยท NER ยท ONNX ยท vector search ยท Ollama ยท MapLibre ยท deck.gl ยท Cesium




