Director of Engineering, VitalSource
- Lead three distributed engineering teams across five continents delivering Verba Connect, the system that turns a school’s course adoptions and enrollment roster into student-level digital access: auto-enrollment, entitlements, opt-outs, and the billing and reporting data behind the program. 2025 scale: roughly 900 institutions, 5.6 million students, 3,000 term catalogs, 325,000 course materials.
- Own the architecture and technical direction of a mature, high-integration Rails/React platform on GCP and Kubernetes: a deep domain model and a wide integration mesh of versioned REST APIs, asynchronous messaging and partner data feeds.
- Designed and built, hands-on, a production catalog-automation pipeline (Ruby on Rails) that replaced a manual onboarding process: ingesting adoption data, matching it to the catalog, and resolving publishers, pricing, distribution rights and fulfillment.
- Conceived and built Workbench, an org-wide AI engineering platform (Claude Code based) adopted across all twelve engineering teams plus product and QA. Nearly forty workflows embed agentic AI through the whole lifecycle: analyzing a spec for open questions, drafting and diagnosing tickets, solution design, implementation that hands its diff to an independent reviewer agent, PR review fanned out across parallel read-only agents, QA executed in a headless browser with the evidence posted to the ticket, deploy gating, a self-pacing post-deploy validation agent, root-cause analysis over read replicas and telemetry, post-mortems. Every write is a separate step a person approves; everything else runs dry by default. Primary author of some 800 commits over seven months, with nine other engineers contributing.
- Added retrieval-augmented context to Workbench (a Cloudflare Vectorize index of the engineering documentation across three repositories, idempotent nightly ingest, a semantic-search skill the agents use to find the right document) and a suite of read-only production data-integrity detectors and rollout gates, each written for a real incident class. Gave the internal talk on what seven months of running it taught us: give the model what it cannot know, pick the model that fits the risk, let it go look at real data, and do not take its word for it.