Jun 2026 - Present • San Francisco, CA
Software Engineer
QuinStreet
Converted to full-time after a twelve-month internship. I work on Pond, an AI-native consumer insurance platform, and own the systems that keep it observable, consented and correct.
InsurTech / Digital Marketing • Public company
Key Achievements
- ▸Built and operate an AI incident pipeline — alerting rules over Elasticsearch, a FastAPI service that fingerprints and batches errors into incidents, Claude analysis grounded in the actual source files, and cards delivered to the team channel. It runs on dev and stage and watches production error streams; several hundred raw events collapse into a few dozen incident reports a day, each arriving with the log link and the analysis already doneRoot cause correct on 48 of the last 50 reports I scored by hand
- ▸Cut the pipeline's projected LLM spend with a per-fingerprint analysis cache, selective prompt caching, delivery-gated spend and quota-aware backoff, while raising the context budget rather than lowering itProjected 70–85% reduction
- ▸Designed and shipped the consent re-capture flow for a consumer rebrand: a consent state machine instead of a boolean, every capture path funnelling into one idempotent endpoint with a single-winner atomic transition, the audit row written in the same transaction, and exactly-once propagation downstream. Live in production since July 2026
- ▸Migrated notification preferences between two storage models behind a live dual-write, verifying every stored value against its source instead of counting rowsZero value mismatches across 324,500 records, verified on dev and staging
- ▸Cancelled a migration I had already agreed to after tracing the target write path and finding it treats the posted body as the complete desired state — a thinner projection would have deleted data on save, for exactly the users the migration targeted — then designed a smaller server-side alternative with no frontend change
- ▸Shipped hostname-based routing for a marketing launch four hours and eleven minutes after the ask, verified across eighteen runs in three environments; when an unrelated backend deploy failed later that evening, ruled my change out of the causal graph first and root-caused the real failure to configuration dropped by a merge from a stale branch
Technologies Used
PythonFastAPIAnthropic Claude APIElasticsearchELKJavaSpring BootReactTypeScriptPostgreSQLMariaDBAWSDocker