Projects

ML engineering, platform infrastructure, and analytics projects — from enterprise GenAI evaluation to Bayesian inference frameworks.

The Invincibles Decoded

Arsenal 2003/04 Football Analytics

An interactive analytics dashboard exploring Arsenal's historic unbeaten 2003/04 Premier League season. Built with StatsBomb open data, featuring shot maps, passing networks, and player heatmaps across all 38 matches.

  • D3.js visualisations: xG shot maps, passing networks, and binned heatmaps
  • StatsBomb open data pipeline processing 38 matches, 544 shots, 20K+ passes
  • Interactive match and player filtering across all dashboard panels
ReactNext.jsD3.jsTailwind CSSStatsBombPython
Read more →

Drafty

FPL Draft League Analytics

A live analytics dashboard for FPL draft leagues. Tracks bracket standings, league position over time, transfer history, and bench efficiency with automated weekly data refreshes.

  • D3.js visualisations: standings timeline, bench efficiency bars, transfer summaries
  • Python/DuckDB pipeline with automated GitHub Actions weekly refresh
  • Next.js static export deployed on Vercel with zero server costs
ReactNext.jsD3.jsTailwind CSSPythonDuckDBGitHub Actions
Read more →

BayesLands

Bayesian Landscape Evolution

Bayesian inference framework using Parallel Tempering MCMC for Badlands — a landscape evolution model. Estimates geological parameters with surrogate-assisted sampling for computationally expensive simulations.

  • Published in Computers & Geosciences (Elsevier)
  • Surrogate neural networks to accelerate MCMC convergence
  • Parallel tempering across HPC clusters for multi-modal posteriors
PythonMCMCBayesian InferenceNeural NetworksHPC
Read more →

BayesReef

Bayesian Coral Reef Modelling

A Bayesian inference framework for pyReef-Core using Metropolis-Hastings MCMC. Quantifies uncertainty in coral reef growth predictions by estimating parameters as full probability distributions.

  • Uncertainty quantification for reef growth under climate scenarios
  • Metropolis-Hastings sampler with adaptive proposal tuning
  • Integrated with pyReef-Core stratigraphic forward model
PythonBayesian InferenceMCMCGeoscience
Read more →