Skip to main content

Technical Skills

My work sits at the intersection of physics, AI, and infrastructure. I enjoy combining rigorous experimentation with pragmatic engineering so that research teams can ship trustworthy results without losing speed.

Programming & Data Science

Python & PyData

100%
8+ years Daily driver for experimentation with NumPy, pandas, SciPy, Plotly, and friends.

PyTorch & JAX

85%
6+ years Research-grade neural and probabilistic models, including differentiable physics workflows.

Probabilistic modelling

80%
5+ years Bayesian calibration, density estimation, and uncertainty-aware ML for scientific data.

Scientific Computing & HPC

Slurm & Lmod stacks

85%
5+ years Scheduling, accounting, and user enablement for institute-scale clusters.

Containerised workflows

80%
5+ years Singularity/Apptainer, Conda, and CUDA images for portable research pipelines.

GPU & MPI workloads

70%
4+ years Profiling multi-GPU, MPI/OpenMP jobs and helping teams scale their experiments.

Reproducibility & Research Software

Git + testing

85%
8+ years Git, pytest, mypy, and packaging that link notebooks to published figures.

Documentation pipelines

75%
7+ years Sphinx/LaTeX/Markdown stacks so collaborators can follow every experimental step.

DevOps & Platforms

GitLab/GitHub automation

80%
5+ years CI/CD, container registries, and release workflows for research services.

Security & monitoring

70%
4+ years CVE tracking, dependency scanning, and lightweight observability for HPC services.