A selection of work from five years building production ML and AI systems at ServiceTitan (NASDAQ: TTAN), plus independent projects. ServiceTitan code is proprietary, so industry work is described rather than shown; I’m happy to talk through architecture and methods in depth.
A config-driven GenAI platform. The system I’m proudest of: a platform on Azure ML that turned call transcripts, support cases, and product-usage data into daily per-account intelligence briefs for customer-facing teams. It ran 10+ production pipelines across the customer lifecycle; a new pipeline was a single YAML file, cutting delivery from weeks to days with zero code changes, at 92–96% lower LLM cost than baseline through prompt caching and consolidation.
Agentic AI evaluation. An LLM-as-judge system that answered a question nobody could answer before: how good is our customer-facing chatbot, really? It mined 19,082 canonical questions from 51,000 customer calls, graded 5,000 live answers with tool-grounded verification against the full help-center corpus and product source code, and established an 82.0% correct-answer baseline and 10.0% hallucination rate, all for about $128 per fully automated run.
Autonomous data-migration agents. The fully agentic tier of a data-migration application: agents explore an unfamiliar system’s data export, plan a transformation strategy, then write and execute their own validated Python transformations in a sandbox, governed by per-job cost caps and automatic model escalation.
Churn science, end to end. Production churn/health-score models scoring ~13,800 accounts weekly; a churn-driver analysis whose statistically significant usage thresholds became the success metrics for the company’s flagship onboarding-overhaul program (its pilot cut onboarding churn from a 16–20% baseline to 2.5%); and a 14-study causal-inference portfolio spanning difference-in-differences, propensity matching, and formal experiment design.
Independent work
ECONOMICS: an LLM-powered household replenishment app. A local-first Python app that expedites household shopping: it reads 19 years of Amazon purchase history (1,220 orders, 2,821 distinct products), uses an LLM to group product variants into brand-agnostic concepts (“Paper Towels” spans nine interchangeable products), infers per-concept consumption rates, predicts when each item will run out, and pre-builds a reorder cart, while a human reviews every LLM proposal and clicks every purchase. Built with Streamlit, SQLite, and Pydantic, with per-call LLM cost accounting and structured logging throughout. Code on GitHub
Explaining COVID-19 Incidence in New York City. An econometric analysis of venue types and COVID-19 transmission using Foursquare and census data: fractional-response GLM, robust standard errors, LASSO variable selection. Code on GitHub | Report | Presentation
Doctoral research. The applied work above sits on a research foundation: PhD papers on the political economy of coerced labor, using spatial econometrics, panel methods, and formal theory. They live on the Research page.
More projects: github.com/dr-ian-finn