01 Shipped systems

Internal production systems. Described at the capability level; no client or employer internals.

Contract tooling for legal review

  • Not one system — a set of tools built around how the reviewer actually works, each with a different delivery vehicle.
  • Obligation reconciliation. Long-form agreement in; 500+ discrete obligations out, checked against the standard template into a coverage matrix with each gap routed to whoever owns it. 92% gap recall at 0% false positives on a hand-graded set with negative controls. ~150 tested rule functions keep the reasoning auditable; the model only does semantic matching.
  • Subcontract template builder. Generates the subcontract off the governing prime contract, adjusted into house language and standing preferences.
  • Prime contract first-pass review. In progress.
  • A shared workspace, not an app. For one engagement the right answer was a configured Claude project the lawyer works inside directly, alongside the model. Shipping software would have been slower and worse.
  • Python
  • Document intelligence
  • Calibration
  • Legal workflow

Analytics warehouse

  • Ingestion → dbt staging/marts → executive-facing views. First data substrate at the company.
  • Enforced dbt model contracts: a breaking schema change fails CI, not a dashboard.
  • Snapshot + milestone fact tables add history to sources that only store current state. Enables schedule-slippage analysis.
  • Prefect orchestration on a managed worker. Azure infrastructure from Bicep, including decommissioning an environment that wasn't earning its cost.
  • dbt
  • SQL
  • Prefect
  • Azure
  • Bicep

Lead-generation engine

  • Input: public parcel + assessment records. Output: ranked, contact-ready target list with per-row rationale.
  • Pipeline: building-spine filter → address-level firmographic matching → multi-gate qualification → buying-committee enrichment.
  • Delivered ~160 verified targets against a 150–200 ask. Adversarial verification removed ~40% of candidates as wrong or unverifiable before anyone made a call.
  • Config-driven: a new market is a profile file plus reference data, zero code change. 71 tests. Output ships as a living tracker that upserts on re-run and never overwrites human-entered columns.
  • In use — the leads are in the sales system, not in a spreadsheet somebody was emailed once.
  • Public records
  • Entity matching
  • Adversarial verification

Lesson-planning AI — Brilla Public Charter Schools

  • Mode 1: unit overview + lesson number → complete, teach-ready lesson plan grounded in the network's curriculum and teaching expectations.
  • Mode 2: multi-turn coaching that walks a teacher through internalizing a plan before class.
  • Core requirement: quote accuracy at scale. Every passage a plan cites is extracted verbatim from the purchased book text, not recalled by the model.
  • Extraction is a five-strategy parser cascade with guards against the silent failure — a parse that succeeds and is wrong. Chapters carry source offsets, so every quotation is traceable to a position in the book.
  • In deployment. 900 lessons — 9 grade levels × 4 units × 25 lessons — are the current school year's K–8 reading curriculum, not a pilot corpus. All 900 human-reviewed and passed before entering classrooms.
  • Book-specific plans are normally licensed from a publisher or commissioned from a curriculum consultant, which is why only well-resourced schools have them. This produced a year of them for a few hundred dollars of compute, and reruns for next year's books at the same cost.
  • Conditioned on grade level, not just grade band, so lessons are at-level: two grades inside one band reading the same text get different vocabulary load, scaffolding, and practice expectations.
  • Teacher adversarial review is the correction signal: reviewers attack each plan, and captured corrections improve the next generation run.
  • Per-mode model selection + prompt caching: ~$0.05 per generated plan; full-school usage projected at tens of dollars per month.
  • LLM generation
  • Text extraction
  • Quote grounding
  • Human feedback loop

Company-wide AI adoption

  • Administer the enterprise AI tooling the whole company uses, including access, governance, and spend monitoring.
  • Internal knowledge base wired into those tools, so retrieval happens where people already work rather than in a separate app.
  • Package domain expertise as installable skills and distribute them to non-technical teams — finance, preconstruction, marketing.
  • Train staff directly. Ran the platform evaluation and wrote the decision brief leadership used to pick a direction, and the acceptable-use groundwork alongside legal.
  • Adoption is the measure, not deployment: the contract engine is in active use by the reviewer it was built for.
  • Enablement
  • Governance
  • Cost monitoring
  • Training

Knowledge platform + MCP server

  • Retrieval-backed knowledge base: per-user row-level isolation plus a shared organizational tier.
  • Delivered inside staff members' existing AI assistants — no new app to open. Multiple pilot users live.
  • Fabrications on a fixed eval: 4 → 0, via an explicit grounding rule and identifier guards. Quality gate fails on omissions, not just inventions.
  • Shared MCP server exposes internal data and tooling as typed tools; stdio and hosted OAuth entrypoints.
  • RAG
  • MCP
  • Row-level security

02 Research & projects

MTG analytics research

  • Mana-efficiency study over 4.7M games of 17Lands data: correlation between mana spent and win rate.
  • 16 vs 17 lands in Limited; Curve Score deck metric; player-skill vs rank-distribution study.
  • Mana Bug: downloadable app that computes the metrics from your own Arena log files.
  • 17Lands data
  • Statistical modeling

Narrative Tree Complexity Metric

  • With a psychology research group at the CUNY Graduate Center; co-author on the paper.
  • Method: expert pairwise comparisons of interactive-narrative trees → complexity hierarchy → supervised + unsupervised models that score new trees.
  • Research
  • ML modeling
Earlier work

03 Publications

04 Writing

Mostly one question: how do you know an AI system is actually working?

Teaching a language model to play Magic

A personal project, and the one where the ideas get tested at full depth. Four pieces, in reading order.

Systems built at work

Described at the capability level — no employer internals, no client names.

05 Methods

Deterministic rules / model judgment split

Rules that must be auditable become tested code. Only genuinely semantic work goes to a model. Cuts cost and error rate.

Evaluation as a build gate

Graded answer keys, regression runs, negative controls. A change that fixes one case and breaks another is visible before it ships.

Adversarial verification

Independent refute-by-default reviewers over every candidate finding. Perspective-diverse verifiers beat redundant ones.

Deliver into existing tools

Ship into what the user already opens. End-to-end scope: substrate, model layer, interface, adoption.

06 Skills

AI / agent engineering

  • Applied LLMs
  • Agent architecture
  • Multi-agent verification
  • RAG & retrieval
  • Evaluation & calibration
  • MCP
  • Structured output

Data platform

  • Python
  • SQL
  • dbt
  • Data modeling
  • Prefect
  • Azure
  • Infrastructure as code

Document intelligence

  • Obligation extraction
  • Reconciliation logic
  • PDF / OCR forensics
  • Deterministic doc generation

Foundations

  • Statistical inference
  • Supervised & unsupervised learning
  • R
  • Requirements elicitation
  • Technical writing