Melbourne, Australia
AI and systems engineer
who builds the whole stack.
Senior AI Engineer, at Senior Manager grade, at Deloitte. More than eight
years shipping production machine learning across law,
healthcare and insurance, including the engine behind Amica, the national
online family-law settlement service. Outside work I have written an LLM
stack from scratch in C++ and CUDA: a trainer, an inference engine and a
research lab that turns arXiv papers into runnable experiments. I also
contribute to Mathlib and run an independent research programme.
From-scratch systems
An end-to-end LLM stack, train → export → serve → study, written as
separate implementations. Because the trainer and the engine were built
independently, argmax parity between them checks both sides.
paperkiln
C++ · CUDA · Python
A self-contained ML research lab. Paste an arXiv link and it fetches the
paper's LaTeX, extracts the architecture with an evidence snippet
for every value, trains that exact model, exports it to GGUF, and
lets you chat with it, all in one browser tab.
Underneath: a from-scratch autograd engine over hand-written CPU and CUDA
kernels (the raw CUDA runtime API, no cuBLAS), LoRA/QLoRA, blockwise
quantisation, and GGUF/safetensors export. The core engine is under 4,000
lines. Experiments are pre-registered with committed decision rules, and
the negative results are published next to the wins.
coalfire.cpp
Training · C++ / CUDA
A transformer training engine in pure C++ and CUDA with no ML
frameworks. Custom kernels for fused softmax with cross-entropy, fused
attention, SwiGLU and MoE routing; FP16 mixed precision, gradient
accumulation, RoPE and GQA; resumable checkpoints; GGUF and safetensors
export. It trains small models to coherent multi-turn dialogue.
ember.cpp
Inference · C++ / CUDA / WASM
A cross-format LLM inference engine in pure C++ with an optional CUDA
backend. It loads Llama 2 and 3 from GGUF and safetensors, including
quantised types (Q4_K_M, Q6_K, Q8_0, Q8_K), with hand-written
speculative decoding, Python bindings, a built-in web server, and an
unmodified build to WebAssembly for in-browser inference.
Production impact
Amica
Legal AI · amica.gov.au
A national, AI-assisted online service that helps separating couples
reach agreement on property without going to court. I modelled its
data-driven percentage-split engine and co-built the
cloud infrastructure. The family-law machine learning behind it supports
an estimated $80M in justice-system savings. iAwards
winner, 2020.
Thomas, L., & Reich, J. (2021). Empowerment by design: using
technology to enable better decision making. Australian Society for
Computers & Law Journal, 93, 28–30.
Healthcare
2022–2025
More than $15M in cost savings from production ML and
AI systems: a fine-tuned multimodal LLM with retrieval over medical
knowledge bases, OCR and NLP pipelines for large-scale medical
documents, and forecasting for workforce planning.
Document AI and agents
Insurance · 2025–2026
A production document-understanding system (Textract and LLM
extraction on AWS, served with vLLM, with confidence-scored human
review): 778 of 782 fields correct across six form
types on held-out evaluation. Also a serverless agent runtime on
Bedrock AgentCore.
Mathlib
Lean 4 mathematical library
10 merged pull requests
Contributions to Mathlib in Lie theory, toward the
Killing–Cartan classification: the Cartan matrices of
the classical and exceptional types, their explicit forms, determinants,
and simply-laced and non-simply-laced properties. Seven of the ten merged
pull requests are in this series. The others include the
Lawvere fixed-point theorem. Every merged result is
checked by the Lean kernel and reviewed by the maintainers.
About
I hold an M.Sc. in Bioinformatics from the University of Melbourne (High
Distinction thesis), a B.Sc. from Monash, and a B.A. (Honours) from
Melbourne. My work moves between fields on purpose: methods that are
mature in one discipline often settle an open question in another.
I also write poetry, much of it experimental: poems built from protein
notation, corrupted memory records and device telemetry.
The list is here.