Full-Stack Developer · AI Product Engineer · London
I build AI-native products, intelligent agents, and data-driven applications. My background spans software engineering and social research, so I am particularly interested in systems where software applications and AI meet real-world human problems — from food and health to research workflows and agent safety.
- 🤖 Current Focus: AI agents, RAG and memory systems, evaluation, LLM-powered workflows, and full-stack AI applications.
- 🧱 How I Build: Python and TypeScript, API-first architectures, modular system design, testing, and explicit failure handling.
- 🧠 Cross-Disciplinary Edge: PhD-trained researcher bringing user research, domain reasoning, and systematic analysis into product engineering.
- 🧪 Experimenting through: Gethen Field Labs — an independent AI studio for products, agents, research tools, visual technology, and experiments.
-
Mosaic Kitchen — AI-powered multicultural meal-planning and grocery platform translating my PhD research on food practices into a consumer product. Built around a Node.js/Express backend with OpenAI-powered structured meal planning, with a React + TypeScript web client and PostgreSQL-backed personalisation layer under active development. Focuses on culturally relevant recommendations, household inventory, budget-aware planning, bilingual UX, and food-waste reduction.
-
GrowthPilot — Memory-first multi-agent GTM platform co-built with Python, FastAPI, React, TypeScript, CockroachDB, AWS Bedrock, Titan embeddings and SSE. Implements planner-based agent orchestration, five typed memory classes,
VECTOR(1024)semantic retrieval with hybrid ranking, company-scoped tenant isolation, persistent reflection loops, observability traces, idempotent memory deduplication, CockroachDB transaction retries, integration testing and CI. Built collaboratively for the CockroachDB × AWS AI Agent Hackathon. -
TerraGuardian — Award-winning environmental intelligence platform combining React, TypeScript, Gemini 2.5 Flash, Chainlink CRE, Solidity, Ethereum Sepolia and live public-health/climate APIs. Separates AI interpretation from a deterministic policy engine so model outputs cannot directly authorise downstream actions, then publishes eligible decisions through a verifiable blockchain workflow. Also includes an independent Circom + Groth16 + zkVerify zero-knowledge proof demonstration. Selected as the Overall Winner of the Encode Club Remix AI Bootcamp.
-
Encore — Full-stack live-music discovery application built in a five-person Makers engineering team using React, Vite, Node.js, Express, MongoDB, Mongoose and Better Auth. Integrates the Ticketmaster Discovery API, Google Maps and Geoapify to support location-aware event discovery, filtering, saved events, artist following and personalised recommendations, with a separated frontend/API architecture and collaborative Agile delivery.
Alongside my AI-focused work, I have built conventional full-stack applications across Python and JavaScript stacks through the Makers software engineering programme.
-
Acebook — Collaborative MERN social application built with React, Node.js, Express, MongoDB, authentication, testing, pair programming, and Agile team workflows.
-
MakersBnB — Full-stack booking application built with Python, Flask, PostgreSQL, Jinja, authentication, booking workflows, and PyTest/TDD.
-
Book Store — Python/Flask engineering exercises focused on web application fundamentals, testing, and CI/CD practices.
- Languages: Python, TypeScript, JavaScript, SQL
- AI Engineering: LLM APIs, RAG, embeddings, vector search, AI agents, MCP, memory systems, prompt and evaluation workflows
- Backend & Data: FastAPI, Node.js, Express, Flask, Pydantic, PostgreSQL, CockroachDB, MongoDB, Redis
- Frontend: React, Next.js, HTML5/CSS3, Tailwind CSS, Figma
- Testing & Delivery: PyTest, Jest, Vitest, TDD, Git/GitHub, CI/CD, Docker
- Exploring: Rust, Solidity, Kotlin, SwiftUI
Understand the problem before choosing the abstraction.
Design explicit interfaces, contracts, and failure modes.
Use tests to protect behaviour rather than implementation.
Treat AI output as something to evaluate, not blindly trust.
Make architectural trade-offs visible and intentional.


