I build evaluated AI systems that combine machine learning, LLMs, agentic workflows, safety gates, and deployment-aware engineering - designed to be useful, grounded, traceable, and reliable in real-world settings.
I hold an MSc in Artificial Intelligence from the University of Leeds and a BSc in Neuroscience from the University of Lancashire. My work combines applied machine learning, LLM systems, AI agents, NLP, healthcare AI, and ML safety.
I build AI systems that are not only functional, but measurable, auditable, and useful in real workflows. My projects focus on multi-agent evaluation, structured outputs, safety gates, evidence-grounded reasoning, and production-aware MLOps.
My neuroscience background shapes how I think about human-centred AI, accessibility, and safety-critical machine learning.
Each project below turns an AI idea into a testable system - with clear problem framing, safety considerations, evaluation logic, and production-aware architecture. Hover or tap each card to see the full breakdown.
A research prototype exploring whether role-specialised LLM agents can support systematic review screening through structured outputs, disagreement handling, confidence thresholds, and adjudication traces.
Systematic review screening requires human experts to read thousands of abstracts to find a few dozen relevant studies. Single-agent LLM screening achieves high recall but floods reviewers with false positives (43 on a 328-record holdout). No existing multi-agent approach measured whether the added complexity actually helped.
Three role-specialised Qwen screeners (advocate, methods, population) with structurally different output contracts, a five-rule confidence-based router that selectively escalates contested records, and a tool-enabled qwen-max adjudicator. Every decision logged to a cloud audit ledger with full trace readback.
Python · FastAPI · OpenAI SDK → DashScope · Qwen · MCP · text-embedding-v4 · Alibaba Function Compute · Alibaba Tablestore · Chart.js · NumPy
Tracked recall, precision, F-score, parse rate, and cost per record against public gold-standard labels. Agent traces inspectable for every decision.
Abstention logic, escalation reasons, confidence thresholds, and full agent traceability - designed for evidence workflows where false negatives carry domain cost.
Applied AI Engineer · ML Safety Engineer · AI Agent Engineer · Healthcare AI
A local-first AI-powered job-matching system designed to evaluate freelance opportunities against multiple professional profiles using LLM-assisted reasoning, structured scoring, email alerts, and human-in-the-loop proposal decisions.
Freelance opportunity screening is manual, inconsistent, and time-consuming. Strong matches require reasoning across job descriptions, profile strengths, client signals, urgency, proposal strategy, and whether an application is worth spending connects on.
I am building a local-first AI workflow that ingests pasted job posts, search results, CSVs, and email alerts, then evaluates opportunities against multiple professional profiles using structured scoring. The system supports human review before any proposal is written or sent.
FastAPI · Next.js · LLM API · Gmail API · APScheduler · SQLite · Pydantic · Structured JSON outputs
Designed around transparent match scoring, where each recommendation can be traced back to profile attributes, job requirements, risk signals, and proposal fit. The system is intended to support human decision-making rather than automatically dispatch proposals.
Human-in-the-loop design, no scraping dependency, structured outputs for auditability, and clear separation between recommendation and action. The system recommends; the human decides.
Applied AI Engineer · AI Automation Engineer · LLM Product Engineer · Developer Experience Enginer
A retrieval-augmented document QA system that transforms PDFs into searchable vector representations, retrieves semantically relevant context from Astra DB, and prepares responses for grounded answer generation with citation-aware evaluation design.
PDF knowledge is often locked inside long, unstructured documents. Users need answers that are grounded in the uploaded material rather than generic LLM responses that may be unsupported or difficult to verify.
Implemented a RAG workflow that separates document preparation from query-time retrieval. The system ingests PDFs, extracts and chunks text, generates embeddings, indexes vectors in Astra DB, and retrieves the most relevant document context based on the user’s question embedding.
Python · LangChain · Astra DB · Vector search · PDF parsing · Embeddings · Similarity search · Retrieval pipeline design
Designed the architecture to support retrieval evaluation through Recall@k, groundedness, relevance checks, and citation quality. The separation between indexing and querying makes the system easier to test, debug, and improve.
RAG reduces unsupported answer generation by forcing the system to retrieve context before producing a response. The project demonstrates grounding, citation-readiness, and retrieval evaluation as practical AI safety patterns.
Applied AI Engineer · RAG Engineer · NLP Engineer · LLM Application Engineer · Developer Experience Engineer
A production-minded ML application for UPDRS score prediction from vocal biomarkers, combining reproducible model training, API-based inference, Dockerisation, CI/CD, observability, validation, and clinical limitation guardrails.
Many healthcare ML projects remain notebook-only, making them difficult to reproduce, serve, test, monitor, or communicate safely. A useful ML system needs a reliable path from training to inference.
Built a reproducible pipeline using 5,875 records and 18 vocal variables to predict UPDRS scores. The workflow includes data preparation, StandardScaler preprocessing, model training, consistent model and scaler serialisation, and inference through Flask/Jinja2 and API endpoints.
Python · scikit-learn · Pandas · StandardScaler · Flask · Jinja2 · Gunicorn · Docker · GitHub Actions · Structured logging · Health endpoints
Evaluated model performance using MAE, MSE, RMSE, R², and adjusted R². Added automated testing and delivery through GitHub Actions, plus operational safeguards including health checks, input validation, timeout handling, retries, rate-limit handling, structured logging, monitoring, and observability.
Documented clinical limitations clearly to avoid presenting the model as a diagnostic tool. The project shows how healthcare ML can be framed with validation, observability, and responsible communication around model limits.
Applied AI Engineer · Machine Learning Engineer · MLOps Engineer · Healthcare AI Engineer · ML Safety Engineer
A healthcare data engineering pipeline using Azure Data Factory, Azure Storage, Databricks, and Lakeflow to ingest patient vital-sign data and mapping files into a medallion-style architecture for downstream analytics and AI readiness.
Healthcare vital-sign data requires reliable ingestion, mapping, timestamp handling, schema consistency, and staged transformation before it can support analytics, monitoring, or applied AI workflows.
Built ingestion of JSON and mapping files from GitHub into Azure Storage using Azure Data Factory, followed by Databricks/Lakeflow transformation into Bronze tables for vitals, patients, devices, wards, diagnoses, procedures, health statuses, insurance providers, and alert thresholds.
Azure Data Factory · Azure Storage · Azure Data Lake · Databricks · Lakeflow · Spark · JSON ingestion · Medallion architecture · Pipeline configuration
Created stg_patient_vital_signs to combine historical and streaming-style events through append flow. Corrected timestamp issues and schema conflicts, executed full refreshes, and moved URLs, SAS tokens, and connection strings into pipeline configuration.
Healthcare AI systems depend on trustworthy data foundations. This project demonstrates configuration hygiene, schema correction, pipeline reproducibility, and preparation for safer secret management using Key Vault and Secret Scopes.
Data Engineer · MLOps Engineer · AI Infrastructure Engineer · Healthcare Data Scientist · Applied AI Engineer
A biomedical evidence-exploration agent that structures information from ClinicalTrials.gov, Semantic Scholar, and Open Targets into JSON outputs, Streamlit dashboards, evidence cards, and CI-checked pipelines.
Biomedical evidence is fragmented across trial registries, scientific literature, and target-disease databases. Exploring relationships between conditions, interventions, targets, and supporting evidence requires structured, reviewable data workflows.
Built Python pipelines for ClinicalTrials.gov, Semantic Scholar, and Open Targets, producing structured JSON outputs that feed into a Streamlit dashboard with reviewable evidence cards for biomedical exploration.
Python · ClinicalTrials.gov · Semantic Scholar · Open Targets · JSON outputs · Streamlit · Evidence cards · GitHub Actions
Added GitHub Actions checks to support reproducibility and pipeline reliability. Evidence cards make retrieved biomedical information easier to inspect, compare, and review before interpretation.
The system is designed for evidence exploration rather than automated clinical decision-making. Structured outputs, source separation, and reviewable evidence cards support transparency, traceability, and human interpretation.
Applied AI Engineer · Healthcare AI Engineer · Biomedical AI Engineer · Evidence Synthesis Engineer · Data Scientist
A healthcare AI concept focused on accessible patient-monitoring dashboards, clinical risk awareness, and actionable alerts. Designed to explore how AI-assisted interfaces could help clinicians identify important signals more clearly in high-pressure healthcare environments.
Patient-monitoring dashboards can become dense, visually overwhelming, and difficult to interpret quickly. In high-pressure clinical environments, important changes in patient status may be harder to notice when information is fragmented or poorly prioritised.
Designed a healthcare AI monitoring concept with an accessibility-first dashboard, clinical risk awareness, and actionable alerting. The aim was to present patient information in a clearer, more usable way for clinical teams, rather than simply displaying raw data.
Real-time data pipeline · Dashboard design · Accessibility-first UX · Clinical risk modelling concepts · Healthcare AI prototyping
Presented in a hackathon setting and recognised in the healthcare and accessibility tracks. Evaluation focused on clinical actionability, accessibility, and clarity of risk communication rather than production deployment.
Explores accessibility as part of healthcare safety: reducing visual overload, improving signal clarity, and supporting human decision-making in high-stakes monitoring contexts.
Healthcare AI · Applied AI Engineer · ML Safety Engineer · Human-Centred AI
An NLP research project applying text analytics to clinical-trial-related content in the dementia domain, connecting neuroscience knowledge with biomedical text analysis and clinical research workflows.
Clinical-trial information in dementia research can be dense, fragmented, and difficult to search manually. Extracting useful evidence requires both text-processing methods and awareness of the biomedical context behind the language.
Developed an NLP-focused analysis workflow for dementia-related clinical-trial text, exploring how text preprocessing, classification, keyword analysis, and semantic similarity methods can support evidence discovery in biomedical research.
Python · NLP Preprocessing · Embeddings · scikit-learn · Tokenization · Text Classification · Biomedical Text Analysis · Clinical- Trial Data
Evaluated the workflow through text-classification performance, relevance of retrieved or grouped trial information, and qualitative review of extracted evidence patterns against the clinical research context.
This project connects biomedical domain knowledge with NLP, highlighting why clinical AI systems need more than surface-level text matching. In healthcare and evidence workflows, model outputs should be interpreted with domain context and human review.
NLP Engineer · Healthcare Data Scientist · Applied AI Engineer · Biomedical AI
My interest in ML safety is practical and engineering-focused: designing AI systems that are measurable, grounded, monitorable, and safer to deploy in real workflows.
I do not treat AI output as correct because it sounds confident. I design systems around measurable behaviour - recall, precision, parse rate, false-negative sensitivity, cost, and domain-specific metrics that actually matter.
For healthcare, safety, and evidence workflows, AI systems should connect decisions to evidence, thresholds, or traceable reasoning. Outputs without grounding are difficult to trust, audit, or safely act on.
ML safety does not stop at model evaluation. Safer AI systems need monitoring, logging, fallback paths, human review points, and clear behaviour when uncertainty is high.
Safety is not only technical. It includes accessibility, consent, user trust, and harm reduction. A system can be technically impressive and still fail if it is inaccessible, opaque, or harmful to the people using it.
From LLM applications and multi-agent workflows to MLOps, data engineering, and developer experience - these are the tools and concepts I use, study, and apply across my AI projects.
Supported Oracle data corrections, data migration activities, Excel reconciliation, MI reporting, and operational analytics in an NHS Shared Business Services context. Worked with real-world data quality issues, business logic validation, reporting workflows, and stakeholder communication.
Supported technical onboarding, makerspace operations, XR/VR-related work, and student-facing technical learning. Delivered AI and technology-related talks, helped explain technical concepts to students, and contributed to documentation and learning resources.
Built and iterated on applied AI systems across multi-agent evidence screening, accessibility AI, healthcare AI, LLM workflows, and MLOps-informed project architecture. My independent work focuses on evaluation-driven builds, technical documentation, safety-aware design, and turning ambitious ideas into working prototypes.
MSc Artificial Intelligence backed by a BSc in Neuroscience. This combination shapes how I think about human-centred AI, healthcare AI, evidence-based systems, and safety-critical machine learning.
I use structured learning to strengthen the systems I build - from classical machine learning and foundation models to production ML, agent workflows, healthcare AI, and evidence-based research. These courses support my project work rather than replace it.
A snapshot of the evaluation patterns, safety mechanisms, and build evidence across my applied AI, ML safety, healthcare AI, and agentic systems projects.
Evaluation included recall, precision, F-score, parse rate, escalation reasons, and estimated cost per record for a multi-agent evidence-screening prototype.
I use evaluation as part of the build process, not as an afterthought. Model behaviour, output structure, cost, relevance, and safety risks are treated as measurable signals.
These patterns appear across my agentic and applied AI projects, especially where systems should support human decisions rather than silently automate high-impact outcomes.
My systems are designed to recommend, explain, escalate, or support review - not remove human responsibility from complex decisions.
Quorum uses structured outputs and trace logs to make role-specialised agent decisions easier to review, debug, and compare against benchmark labels.
Structured outputs help make AI workflows less fragile by turning model responses into data that can be parsed, checked, logged, and evaluated.
My public portfolio projects connect technical AI systems with domains where evaluation, interpretation, and human review matter.
This supports my interest in healthcare AI, human-centred dashboards, accessibility, and safety-aware decision-support systems.
I am looking for Applied AI Engineer and ML Safety Engineer roles where I can build useful, evaluated, and responsible AI systems - systems that are grounded, auditable, and ready for real-world workflows.