Skip to content
Selected work

Projects

Each write-up covers the problem, what was built, and what changed as a result. Technologies link through to where else I've used them.

GenAI Text Mining

2025 – present

A Gemini-based text-classification platform scaled from an 11-category PoC to 61 production categories, processing 1,200–3,200 records a day.

PythonGoogle GeminiPrompt engineeringVertex AICloud Composer / AirflowGoogle Cloud PlatformBigQueryPolarsMLOps

GenAI Insighter

2026 – present

Architecture of an agentic system for qualitative and quantitive research analysis (IDI / FGI / CAWI), built on deterministic tools rather than free-form generation.

PythonAgent Development Kit (ADK)Google GeminiBigQueryPrompt engineering

MLOps Platform

2024 – present

Co-developed an internal MLOps platform adopted by data-science department as its standard for building and deploying models.

PythonGoogle Cloud PlatformVertex AIDockerMLOps

Operational-level multi-agent battlefield simulation; profiling and optimization cut resource use ~5× and made it ~5× faster.

JavaMASONDockerAWSOptimisation & OR

End-to-end design and delivery of a converter mapping three decision-tree model types onto a common PMML notation, for credit-risk scoring.

Python

Integrated a district-heating boiler digital twin with a Siemens S7 PLC (Modbus) and SCADA, and prepared years of sensor history for predictive models.

PythonTime-series forecasting

A location-scoring model for retail store expansion on geospatial data; migrated from H2O/Java to Python and settled on PostgreSQL/PostGIS as model engine.

PythonPostgreSQLBigQueryGoogle Cloud Platform

A mixed-integer-programming tool for retail staff scheduling, deployed across ~1,500 stores and ~6,000 employees.

PythonOptimisation & OR

An agent-based epidemic simulation on GIS data, calibrated to government data with a genetic algorithm; 3× memory reduction after optimisation.

JavaMASONOptimisation & OR

Prediction, trend, and similarity models for property valuation (Java / Spring Boot / Hibernate), deployed in a public-facing valuation system.

JavaSpring Boot

Benchmarked an early vendor demand-forecasting model against ARIMA on ~600 GB of retail sales history.

PythonBigQueryGoogle Cloud PlatformTime-series forecasting

A client-server system generating class timetables with a MIP optimiser, delegating solver jobs asynchronously to Docker containers queued via RabbitMQ and Celery.

PythonOptimisation & ORCeleryDocker