- ·Lead engineer on an Innovate UK funded platform used by planning assessors across five West Yorkshire councils — Leeds, Bradford, Wakefield, Calderdale and Kirklees.
- ·Architected the entire backend in Python and FastAPI: async route handlers, Pydantic models on every request and response boundary, dependency-injected services, and background tasks for the long-running jobs that must not block a request.
- ·Designed the geospatial data model on MongoDB with 2dsphere indexing, so nearest-neighbour lookups, polygon intersections and catchment queries run as spatial queries in the database rather than as computation in application code.
- ·Built the ETL layer in Python — a loader per dataset plus a domain processor per concern — unifying millions of postcode, flood risk, air quality, road noise, deprivation, crime, EPC, transport and land registry records into queryable spatial collections, with Pandas doing the heavy reshaping.
- ·Engineered the scoring engine producing weighted 0–100 indices across environmental, economic, social and regulatory pillars for 700+ candidate sites, backed by live spatial queries rather than precomputed snapshots.
- ·Made every score defensible: an explain endpoint decomposes each calculation into its inputs, weights and per-metric contributions, and missing data is flagged explicitly instead of being silently scored as zero.
- ·Built an LLM-backed assistant in Python that answers natural-language questions about a site grounded in that same decomposition, so an answer is always traceable back to the data behind it rather than generated free-hand.
- ·Profiled and optimised the expensive spatial computations, adding geospatial indexing and a Redis caching layer targeted at the geometry itself, so a score stays live and correct while the costly work underneath it is reused.
- ·Automated planning-grade PDF report generation in Python, cutting manual reporting effort by roughly 70%.
- ·Provisioned and operated the full AWS deployment — EC2, S3, CloudFront, TLS and CI/CD — from first commit to production.
- ·Delivered the map-driven React frontend too: MapLibre GL, TanStack Query and Tailwind, consuming the same APIs I designed, so the contract between the two halves was never a negotiation.
built here














