Programming & Data
- Python, SQL
- Data modelling and transformation
- Statistical analysis and data exploration
Data Engineering & Analytics Consultant • UK
I’m a data engineering and analytics consultant with a strong mathematical background. I enjoy working at the intersection of data engineering, analytics, and statistics, with a focus on building systems people can trust and understand.
I hold a Master of Advanced Study in Pure Mathematics (Part III) from the University of Cambridge and a First-Class BSc in Mathematics from the University of Surrey. This background gives me a rigorous approach to problem-solving and a strong intuition for data, structure, and modelling.
Alongside technical delivery, I place a strong emphasis on communication: explaining complex ideas clearly, supporting stakeholders, and producing work that is easy for others to maintain and build upon.
AI-based vehicle tracking, counting, and lane estimation
A Python implementation of a deep neural network with a focus on understanding the mathematics behind forward propagation, backpropagation, and optimisation.
An end-to-end AI vehicle detection and tracking pipeline using YOLO, with motion analysis, border-based counting, unsupervised lane estimation, and analytics-ready outputs.
A collection of repositories and exercises focused on data preparation, querying, and structuring data for analysis and reporting.
A small ecosystem of projects that fit together as a pipeline: API extraction (Bronze) → modelling in dbt (Silver/Gold). The extraction repos produce raw JSON data designed to feed the dbt analytics layer.
A dbt Cloud project snapshot modelling Amplitude and Mailchimp data into trusted, analytics-ready models using layered patterns, documentation, lineage, and testability.
Extracts raw, event-level product analytics data from the Amplitude Export API, normalises raw files, and uploads to S3 for downstream modelling.
Extracts campaign metadata and email engagement activity from the Mailchimp Marketing API, writes JSON, uploads to S3, and logs retries/errors.
A lightweight ingestion example demonstrating extraction, cloud loading, and a repeatable pattern suitable for scheduling — designed to feed downstream analytics modelling.
Short, practical guides you can fork and run locally. These are written as “follow-along” repos to help you get set up quickly and learn by doing.
A quick setup guide for getting started with Python using GitHub in VSCode, fully self contained, including configuring your first project with a virtual environment and Git repository.
A walkthrough for setting up a Python environment in VS Code and making Gemini API calls, including one-shot prompts, chat, and streaming output.
A clean, minimal personal website template designed to be easy to customise and deploy. Includes a fast workflow for filling content using AI tools.
A quick setup guide for writing LaTeX in VS Code on Windows, with a repo structure that keeps PDFs tracked and auxiliary files ignored. Includes a small Sympy example to support maths workflows.
A quick intro to creating, storing, reading, and manipulating MATLAB tables (including mixed data types), with console output to support learning.
I regularly write about data topics with a focus on accessibility and practical understanding. Topics include:
A self-contained mathematical essay proving the Hodge Decomposition Theorem, with a geometry-first extension to manifolds with boundary.
Supplementary A-level mathematics notes developed through tutoring, focusing on method selection, reasoning, and clear worked solutions.
Co-author of a graph theory research paper exploring structural properties of graphs: Graphs with equal girth and circumference.
Beyond data and code, I’m a music producer with published work.
If you’ve found my work helpful, you can support me here—thank you!
☕ Buy me a coffeeYour support helps me dedicate time to open-source projects, writing, and learning.