In-depth write-ups of projects I've worked on, one page each. Builds lists every public repository; these are the ones with the full account behind them. Use the filter to narrow the list to a particular kind of work. Each case study covers what was decided, what it cost, and how the result was verified.
An eval library that verifies a grounded system's citations instead of trusting them — provenance and support checked separately, and the judge calibrated before it is used.
Demonstrates: Extracting a proven method into an installable tool, and using it to find a real gap in a shipping system.
What a company newly disclosed, dropped or reworded between filings, and where it says so — a deterministic diff whose one model judgment is scored against blind labels.
Demonstrates: Separating deterministic diffing from model judgment, then scoring the model half against labels.
A TypeScript MCP server that lets an AI assistant answer hospital price questions from clear-pricer's release, every row cited to the hospital's own file.
Demonstrates: Exposing a versioned data release as typed, grain-safe MCP tools, verified by planted-bug mutations.
Pointing my own citation-grade RAG eval at two published systems I did not build — one scored cleanly and improved the tool, the other hit a blocker I documented and stopped on.
Demonstrates: Pointing my own eval at systems I did not build, and fixing the metric that the run proved wrong.
A daily Airflow and PySpark pipeline that ran unattended through a full NBA season, turning box scores into partitioned Parquet and model-ready rolling features.
Demonstrates: Leak-free walk-forward evaluation, reported against three named baselines even when the model loses.
Six MCP servers putting clinical trials, FDA data and PubMed literature inside Claude as callable tools, over a document store for retrieval and 29.5M staged rows for analysis.
Demonstrates: Retrieval over a document store with versioned relational staging under it, each gated and published.
A Kafka pipeline that has Claude assign urgency to Chicago 311 requests, merges them into DuckDB or Snowflake, and measures SLA compliance in dbt across a full fiscal year.
Demonstrates: Streaming LLM classification into a warehouse with idempotent MERGEs, a DLQ, and dbt tests that fail on drift.
An agent that plans a goal into an inspectable sequence of tool calls and runs them one step at a time behind five guardrails, pausing for a human before anything consequential.
Demonstrates: Running an agent under enforced guardrails, with every guardrail exercised and its outcome published.
Structured intake, LLM-proposed scoring across five dimensions that a human can override, and a portfolio where cases that are a poor fit for AI are ranked separately.
Demonstrates: Structured AI-opportunity scoring a human can override, with a first-class judgment about where AI does not belong.
Three transparent rules flag payment-integrity issues on synthetic claims, an LLM explains each flag grounded in the rule that fired, and a human approves, dismisses or escalates.
Demonstrates: Rules detect, an LLM explains, a human decides — the rules also in SQL, proven equal, then two recall gaps closed.
Three tier names with nothing under them became testable definitions of what qualifies a user, and a course catalogue audited against those definitions tier by tier.
Demonstrates: Turning vague tier names into testable competencies, then auditing a course catalogue against them.
A single-file scheduling tool that generates implementation timelines for post-payment rollouts, with the deployment calendar and the change-board gate built into the date math.
Demonstrates: Encoded a scheduling rule people kept getting wrong, then let the people who knew it best try to break it.