Employed work: systems with users, uptime, and consequences. Built as first hire at Amplifyr, the platform that helps brands measure and grow their visibility in AI search, from ChatGPT citations to Google AI Overviews.
Company Brain
Amplifyr · in productionProves: retrieval architecture, production MCP, multi-tenant security
Amplifyr's internal knowledge platform, and the first system I owned end to end as first hire. A custom MCP server built on FastMCP exposes 25+ tools over hybrid retrieval: BM25 and vector search fused with RRF over Aurora pgvector, embeddings from Bedrock Titan. Runs on Fargate behind Cognito, with per-client row-level security keeping every tenant's data sealed.
25+ MCP tools · hybrid BM25 + vector with RRF · live across all client accounts
FastMCP · Aurora pgvector · Bedrock Titan · Fargate · Cognito
Content-agent pipeline
Amplifyr · in productionProves: multi-stage agent orchestration under real load
Multi-stage LangGraph agents that research before they write and check their work after: source intelligence up front, Lost-in-the-Middle prompt ordering in the middle, automated fact-checking and GEO scoring at the end. The whole run is surfaced in-app as a live workflow DAG, so clients watch the pipeline think instead of trusting a spinner.
LangGraph · Python · GEO scoring
Data platform
Amplifyr · in productionProves: data engineering end to end
The layer everything else stands on: Bing Webmaster, GA4 and bot-log ingestion into an Apache Iceberg lake, queried through Lambda and Athena, with a Redis cache warmed right after each daily ingestion so no dashboard ever waits on a cold query.
Apache Iceberg · Athena · Lambda · Redis
Client analytics
Amplifyr · in productionProves: frontend range, 15 shipped views
Fifteen client-facing analytics visualisations in Next.js: a competitive-position matrix, share-of-voice trends, prompt battle maps, sentiment treemaps, and AI crawler-log analytics. Every chart answers a question a client was already asking.
15 interactive views, startup to enterprise clients
Next.js · React · TypeScript
Eval infrastructure
Amplifyr · in productionProves: I test agents like software
The reason the agents above get to call themselves production systems. An Inspect AI suite, a deterministic record/replay harness so sub-agent tests run without a live model, and retrieval-quality plus claim-fidelity gates wired into CI. Regressions surface in the pipeline, not in front of clients.
Inspect AI · record/replay harness · CI gates