May 2026 – Present
A company whose product portfolio includes Madison AI, an AI platform for US local governments: procurement document generation, staff reports and compliance checks for cities and counties (Merced, Contra Costa County, Corona), plus integrations with procurement marketplaces (BidNet, OregonBuys, ePro).
- Built Solicitation Builder from scratch in collaboration with Sovra, an AI tool that generates procurement documents and exports them to the BidNet platform: architecture, a Claude-based AI pipeline with chat history in Cosmos DB, MySQL with automated migrations in CI/CD, Microsoft Entra ID authorization, and dev, staging and production environments on Azure.
- Developed a Word-like WYSIWYG editor on Tiptap with pagination and print-exact rendering: headers and footers, tables, Edit with AI, Format Standards (agency styles and logo), and PDF/DOCX export through a config-driven exporter. Later moved the editor and the template selection engine into the core Madison AI app.
- Implemented the AI Evaluator, which checks documents against procurement policies: a single Compliance Report and review rail built on one evaluation, citations linked to source documents, anchored Fix with AI edits, and a template language checker.
- Improved the procurement agents: guided chat with one question per turn, correct tool-calling order, chat title and filename generation (with a regex fallback), and a Haiku agent for dates and METS fields. Split chat and document generation in Solicitation Builder into separate models and processes, and cut the Sovra search agent's response time by about a third on average.
- Built data acquisition pipelines for OregonBuys and ePro (Sovra): Azure VMs, Automation Account runbooks, fault-tolerant sync with retry logic, and migration of 13,000+ records from Redshift and S3 to Azure.
- Implemented the Document API (Export-to-METS) for JWT-secured document exchange with BidNet, and a Claude-powered HTML report generator for GFOA with PDF rendering.
- Shipped the public Policy & Law Assistant widget (inline and floating embeds) with per-jurisdiction configuration and a public-path security check script, plus an agent skill that generates new procurement workflows from a template.
- Cut Azure infrastructure costs roughly in half (Defender for Cloud, App Service tiers, redundant database instances), set up monitoring for every environment and Dependabot, fixed vulnerabilities across apps and VMs, and sped up backend tests from 40 to 5 minutes.
Stack: Python, TypeScript, React, Tiptap, Claude API, Azure (App Service, Container Apps, MySQL, Cosmos DB, Blob Storage, Entra ID), AWS (S3, Redshift), Docker, GitHub Actions.