cat ./cv/richard-hallett.md

Richard (Kai) Hallett

Software Engineer · kai@oceanheart.ai · pdf

Full-stack engineer with a focus on AI-augmented development. I build application code and the verification infrastructure that makes it safe for agents to contribute. The 15 years I spent as a cognitive behavioural therapist before engineering turned out to be preparation for exactly this — noticing when a system is producing confident, coherent output that is completely wrong, and building the structural controls that catch it.

Looking for a full-stack or platform engineering role where process quality and technical depth are valued.

What I built

Everything below is public. The git logs are the proof.

A multi-agent evaluation platform — structured contests between agent configurations with observable traces, rubric-based scoring, failure tagging, and cost visibility. The product and the development process are the same thesis: governance infrastructure first, features second. Every architectural decision is on file, every commit passes through adversarial review, and the evaluation engine I'm building now grew directly from running the process on itself. Next.js, TypeScript, Drizzle, Neon Postgres, Vercel AI SDK, Stripe. Project page →
Adversarial multi-model code review, extracted from The Pit into a standalone tool. Three LLMs review a diff in parallel, a fourth synthesises their findings, and merge is gated on convergent severity. I built it after a pilot run showed that 74% of findings were caught by only one model — the complementarity justified a tool. Surveyed 40+ existing tools and 30+ papers before writing a line of code. Python. Project page →
A carrier-agnostic shipping rate integration, built twice from the same spec to compare development processes. The first used outside-in TDD with cross-model adversarial review after every step. The second used a design-first parallel agent swarm. The interesting finding wasn't which produced better code — it was that review timing determines what you catch. Case study →
A field taxonomy of LLM output patterns — epistemic theatre, paper guardrails, analytical lullabies, sycophantic drift. Catalogued from live observation over several months of AI-augmented development. Includes programmatic detectors that annotate text in real time.

Experience

2024–present
Software Engineer
Oceanheart.ai
Building The Pit — a multi-agent evaluation platform. Also built the adversarial review pipeline (Sortie), anti-pattern taxonomy (Tells), and cross-model triangulation system that governs the development process itself. All repos public.
2023–2024
Software Engineer
EDITED · Retail analytics
React, TypeScript, Python. Data visualisation features for AI-driven retail analytics SaaS. Partnered with backend engineers (Python/Django) to optimise API integrations serving enterprise clients.
2021–2023
Software Engineer
Brandwatch · Social intelligence
Enterprise data visualisation platform (Monitor project). Built scalable React components while modernising legacy Backbone codebase. Mentored junior developers.
2020–2021
Full Stack Engineer
Telesoft Technologies · Network security
TypeScript, Angular, Node.js. Secure features for cybersecurity applications. Python utilities for data processing and automation.
2019–2020
Software Developer
School Business Services
Vue.js frontend features for school financial management software.
2004–2019
Cognitive Behavioural Therapist
NHS / Private Practice
15 years clinical practice. PGDip CBT (Royal Holloway). The core skill — noticing when someone, including yourself, is producing plausible-sounding nonsense — turned out to transfer directly to AI-augmented engineering.

Education

PGDip Cognitive Behavioural Therapy
Royal Holloway, University of London
BSc Psychology
UWE Bristol

Technical

Languages
TypeScript Python Go Bash
Frontend
React Next.js Tailwind Hugo
Backend & infra
Node.js Bun PostgreSQL Docker Make Zod
AI-augmented development
Multi-model adversarial review Cross-family verification Claude / Codex / Gemini Convergence analysis Anti-pattern detection