Building AI systems that retrieve, reason, and ship to production.
AI Engineer with 10 years in software engineering and 3 years building production LLM, RAG, and agentic systems in regulated financial services. Currently designing a LangGraph multi-agent retrieval platform end to end — ingestion, hybrid retrieval, reranking, and evaluation — across 100+ enterprise documents. MSc Artificial Intelligence, University of Aberdeen.
From problem formulation to production deployment.
I design, build, and ship end-to-end AI systems for enterprise use — not just notebooks. That means owning a problem from framing and model selection through evaluation, fine-tuning, and deployment into live products used by real teams.
Most of my recent work sits at the intersection of retrieval and reasoning: RAG pipelines, agentic multi-agent workflows built with LangGraph, and knowledge-graph-backed retrieval on Neo4j, layered on classic NLP and transformer fine-tuning when a smaller, cheaper model is the better answer.
- Enterprise Generative AI applications
- Retrieval-Augmented Generation (RAG) systems
- Agentic AI & multi-agent workflows (LangGraph)
- LLM fine-tuning — LoRA, QLoRA, PEFT
- Semantic search & vector databases
- Graph RAG & knowledge graph solutions
- Intelligent document processing & enterprise chatbots
Systems shipped, not just prototyped.
Ten projects spanning generative AI, evaluation, classification, agentic retrieval, and FinTech ML.
Meeting intelligence platform
Shipped an AI meeting notes and summarisation platform on Azure OpenAI and LangChain, extracting key points directly from call transcripts for client-facing teams.
Multi-agent RAG & knowledge graph POCs
Designed LangGraph multi-agent workflows, Graph RAG on Neo4j, and multimodal PDF search with Qdrant/CLIP — proofs of concept that went on to shape the team's GenAI roadmap.
Multi-label document classifier
Trained and deployed a DeBERTa-v3 multi-label classifier across 9 labels, raising performance through targeted data curation, class-imbalance handling, and threshold tuning.
LLM evaluation & observability framework
Engineered the in-house framework gating every client-facing release — hallucination detection, groundedness checks, response-quality scoring, and regression suites.
LangGraph multi-agent RAG platform
Designing and building a multi-agent RAG platform end to end — document ingestion, semantic chunking, hybrid retrieval, reranking, and answer generation — for a UK financial services client.
MCP-based agent integration
Built an AI project on the Model Context Protocol (MCP), connecting LLM agents to external tools and data sources through a standardised, interoperable interface.
Credit risk & recommendation models
Built a credit card decisioning model scoring applicants across 10 features, and a recommendation engine segmenting customers by spending behaviour.
LLM fine-tuning with LoRA, QLoRA & PEFT
Adapted open-weight LLMs to domain-specific tasks using parameter-efficient fine-tuning — LoRA, QLoRA, and PEFT — to cut compute cost versus full fine-tuning.
Generative AI series on AWS
Built and deployed generative AI applications on AWS, covering model hosting, orchestration, and integration into cloud-native services.
Prompt engineering on Azure OpenAI
Designed and iterated prompting strategies on Azure OpenAI models to improve output reliability and task accuracy across a range of use cases.
10+ years, four companies, one thread: shipping software that works.
- Designing and building a LangGraph multi-agent RAG platform end to end — ingestion, semantic chunking, hybrid retrieval, reranking — across 100+ enterprise documents for a UK financial services client.
- Engineered the in-house LLM evaluation and observability framework (hallucination detection, groundedness checks, regression suites), cutting incorrect client-facing outputs by 25%.
- Trained and deployed a DeBERTa-v3 multi-label classifier over 9 labels, raising macro F1 from 67% to 81%.
- Shipped an AI meeting notes and summarisation platform on Azure OpenAI + LangChain, cutting manual transcript review time 60% for 2 clients.
- Orchestrated an LLM reranking + human-in-the-loop framework, lifting retrieval precision from 65% to 82%.
- Set technical direction for a team of 2 engineers, mentoring their move from classical NLP into LLM systems.
- Built a credit card decisioning model scoring applicants across 10 features, improving decision accuracy by 30%.
- Built a recommendation engine segmenting customers by spending behaviour, lifting product uptake 26% across a 200-customer pilot.
- Modernised legacy Loan Details & Check Hold applications, cutting runtime 30% and clearing 15 long-standing defects in one sprint.
- Automated the CI/CD build and release pipeline, improving release quality 30% for an 8-person engineering team.
- Automated dSPACE ConfigurationDesk hardware-in-the-loop validation via a reusable Python/C# framework, cutting regression testing effort 40% and validation turnaround from 13 to 7 hours per release.
- Promoted to Senior Engineer within 6 months.
- Optimised and automated invoice validation and client billing processes, increasing data retrieval speed 2x and cutting reconciliation errors 30%.
- Delivered production business applications across the full delivery cycle, from requirements through release and defect resolution.
Open-source builds, outside the day job.
Personal repos exploring the same problems from scratch.
Production Grade Agentic RAG System
An agentic RAG application using LangGraph, LangChain, LlamaIndex, OpenAI models, and vector databases — intelligent document ingestion, semantic retrieval, multi-agent orchestration, and conversational Q&A over enterprise documents, with workflows aligned to quantitative finance research.
View repo ↗Finetuning-LLM-using-LoRA-and-QLoRA
Fine-tuned open-source LLMs using LoRA and QLoRA with Hugging Face Transformers, PEFT, and BitsAndBytes — memory-efficient domain adaptation through 4-bit quantisation and parameter-efficient training.
View repo ↗Conversational Assistant Chatbot
A RAG application using LangChain, OpenAI GPT models, and FAISS/ChromaDB for semantic search and conversational Q&A over PDF documents, grounded in statistics and applied to equities and fixed-income use cases.
View repo ↗