Data Scientist·Python Developer·App Developer
Where data science, code, and product thinking meet.
London-based Data Scientist and Python Developer, trained at Imperial College London with a 96% average. I work across the full data workflow — raw data through to deployed model — building solutions that are clean, well-documented, and grounded in statistical rigour.
But data science is only part of it. Independently, I design, build, and ship — Android apps, trader tools, generative art systems, live wallpapers, screensavers, word-cloud typography. Thirty-four projects across the Google Play Store, Gumroad, Lemon Squeezy, and Envato. This side of my work has given me something most technical roles don't: product instincts forged through real stakes. Pricing, positioning, knowing when to ship and when to keep going. Those lessons sit alongside the code.
There's also a chapter I carry quietly. After major surgery and the birth of my eldest child, something shifted — gratitude has a way of demanding an outlet. I began donating blood, and in 2026 reached my 50th donation, recognised by NHS Blood and Transplant. Each one is a small, deliberate act of thanks — turning the weight of personal experience into something that might reach a stranger.
I write too — not often, and not because I think of myself as a writer. More because some things need somewhere to go. Published on Medium, you'll find those essays in the Writing section below.
A production-grade UK salary intelligence platform built on ONS open data. Aggregates Annual Survey of Hours and Earnings data, applies CPI inflation adjustment and statistical analysis, and delivers fair salary benchmarks via a REST API and React dashboard. Features include regional breakdowns, gender pay gap trends, occupation distribution profiles, and CAGR analysis — all GDPR-compliant with no personal data collected. Deployable to AWS ECS Fargate or GCP Cloud Run via multi-stage Docker.
View on GitHubBuilt an NLP-driven system to parse and analyse CVs in PDF and DOCX formats using Python. Applied spaCy for tokenisation, entity processing, and skill extraction from unstructured text with automated quality checks.
View on GitHubA real-time interactive dashboard built with Python that tracks and visualises stock market data. It integrates live price updates, key performance metrics, and dynamic charts to help users monitor market movements and make informed investment decisions.
View on GitHubBuilt a Python-based system to parse, clean, and analyse Lending Club loan data. Applied pandas and NumPy for data wrangling, performed exploratory data analysis to uncover trends, and developed machine learning models to predict loan outcomes with visualized insights. Automated data quality checks ensured reliability of analysis for actionable decision-making.
View on GitHubA data science project analysing global agricultural and foreign direct investment trends using open datasets from the FAO and World Bank. The project includes data cleaning, exploratory analysis, and visual insights to uncover patterns and relationships in international development data.
View on GitHubA fun, bingo-style maths game for Android. Makes practising maths engaging through familiar bingo mechanics, designed to keep players coming back. Free to download and play.
View on Google PlayAn engaging adventure-based learning app for young learners aged 3 to 11. Combines storytelling and exploration with maths challenges to build foundational skills in a way that feels like play rather than study. Free to download and use.
View on Google PlayA minimal, fullscreen animated live wallpaper for Android that displays the current month. Fully customisable with multiple languages, fonts, and a breathing animation with a live clock. Free to download.
View on Google PlayA minimal, fullscreen animated live wallpaper for Android that displays the current day of the week. Supports multiple languages and fonts with a breathing animation and live clock. Free to download.
View on Google PlayTurn your Android into a living departure board. Inspired by iconic split-flap Solari boards, this app shows live world clocks for multiple cities with authentic flip animations. Supports 300+ world cities and multiple colour themes. Free to download.
View on Google PlayWorld Builders is an Android app available on the Google Play Store. Free to download and play.
View on Google PlayA higher/lower guessing game inspired by higherlowergame.com. Players see two items and guess which gets more monthly Google searches. Features 3,187 questions across 11 categories — Sports, Celebrity, Tech, Gaming, Geography, History, and more — with 3 lives, per-category high scores, subcategory navigation, and smooth card animations. Free to play.
View on Google PlayA clean, self-hosted economic calendar built for traders. High-impact events highlighted first, smart LIVE detection, automatic local timezone conversion, and zero dependencies. Works fully offline as a single HTML file — no app, no subscription.
Know exactly which markets are open right now. Live open/closed status for 25+ global markets, real-time countdown to open and close, holiday calendar pre-loaded, and drag-to-reorder cards. Installs as a home screen app and works fully offline — no subscription required.
A series of minimal, fullscreen animated wallpapers — one displaying the current month, another the current day of the week. Both are fully customisable with 7 languages, 5 fonts, breathing animation, and a live clock. Single HTML files that work 100% offline with no install required. Compatible with Lively Wallpaper and Plash.
Turn your screen into a living departure board. Inspired by iconic split-flap Solari boards, this fullscreen screensaver shows live world clocks for up to 10 cities with authentic flip animations. Supports 300+ world cities, 5 colour accent themes, acoustic click sounds, and works fully offline on macOS and Windows.
An abstract typographic system and real-time digital clock built from pure geometric SVG — zero dependencies, one file. Each digit (0–9) is a hand-composed geometric artwork using SVG primitives layered with CSS blend modes. Dual themes: Studio Light and Gallery Dark, where the same geometry reads as ink-on-paper or light-on-projector.
View on GitHubDigits 0–9 built entirely from programming and data-science vocabulary. Each digit is a living word cloud — unique on every load. Words are placed using canvas pixel masking, a two-gate collision system, and AABB packing, then clipped by an SVG clipPath. Features breathing animations, shimmer sweep, 3D cursor tilt, and palette cycling.
View on GitHubOn growth, change, and the things that stay with you.
Open to freelance, contract, and full-time opportunities — in London or internationally, wherever the work is interesting. Whether you need a data scientist, a Python developer, or someone to help build and ship a digital product — let's talk.
Download CV