← All work  ·  Case 01 of 09 · Shipped

Enterprise Healthcare GRC SaaSProduct OwnerLLM + RAG2026 · In production

Quote automation, built for the humans who still sign off.

An LLM + RAG pipeline cut per-quote extraction time by ~97% (30–40 min → under 1 min) and held ~99.9% accuracy, without taking the human out of compliance.

38%
Faster turnaround
3.2 → 1.5–2 days
97%
Faster extraction
30–40 min → <1 min
99.9%
Extraction accuracy
~1 error / 1,000 quotes
$5–7M
Savings identified
hospital client POC
67
NPS, spend
management product
0
New headcount
needed
01The problem

Analysts were the bottleneck. So was compliance review.

Enterprise-tier quotes averaged 3.2 days to turn around, not because analysts were slow, but because every quote demanded reconciling unstructured vendor PDFs against a structured pricing matrix, then routing for compliance sign-off. Doubling throughput meant doubling headcount. Neither the unit economics nor the hiring pipeline supported that.

Leadership wanted "AI to fix this." The instinct most PMs would follow: ship a model that generates the quote end-to-end. In a GRC product, that instinct is wrong.

02Discovery

Shadowed 12 analysts. Read the SOPs. Asked what breaks.

I spent two weeks embedded with the quote team across three offices. The pattern was consistent: analysts weren't slow on decisions, they were slow on extraction, manually pulling SKUs, pricing tiers, and contract terms out of 40-page PDFs so a human could apply judgment.

"The AI doesn't need to price the quote. It needs to hand me a clean table so I can price it in two minutes instead of twenty."

That reframe changed the scope. We weren't automating pricing. We were automating data preparation, with the analyst still making the call and signing the quote.

03Approach

LLM + RAG for extraction. Humans for judgment.

The architecture: a document-ingest pipeline parsed incoming PDFs, RAG retrieved the relevant pricing-matrix rows from our product catalog, and an LLM structured the extracted data into a validated table. The analyst saw the table pre-filled, with confidence scores, field-level provenance, and low-confidence rows flagged for manual review.

The non-negotiable constraint: every quote goes through human validation before it leaves the building. Compliance needed signatures, not model outputs. HITL wasn't a feature; it was the contract.

Engineering wanted to start with a fine-tuned model. I pushed back: we had zero labeled data and a 6-week pilot window. RAG first, fine-tune later if the baseline needed it. It didn't.

This extraction engine is one slice of a much larger legacy-modernization effort, Phoenix. It shipped first, standalone, because it was the highest-leverage, lowest-risk piece of that program.

04The shift

Before → after, in the only unit that matters.

3.2 days avg turnaroundbefore
+1.5–2 days avg turnaroundafter · 6 wks
30–40 min extraction / quotebefore
+<1 min extraction / quoteafter
Manual line-item entrybefore
+~99.9% accurate, human-reviewedafter
05My role

What I owned on this build.

Discovery
12 analyst shadowing sessions, SOP audit, workflow mapping with ops lead.
Scoping
Reframed ambiguous "AI automation" ask into extraction-first HITL architecture. Wrote the PRD.
Prioritization
WSJF against 5 competing initiatives; pitched and defended sequencing to leadership.
Delivery
Cross-functional execution with eng, QA, CS, compliance on shared OKRs; weekly SLA triage process.
Measurement
Pendo funnel telemetry + analyst throughput instrumentation. Weekly review cadence.
06Lessons

Three things I'd tell the next PM on this project.

The obvious AI build is usually wrong. End-to-end automation demos well. In a compliance-bound domain, it fails adoption. Find the unglamorous middle of the workflow and automate that.

Confidence scores are a UX decision, not a model one. What threshold flags a row for review? Who owns overrides? How do analysts report a model mistake? Those were PRD questions, not eng questions.

The best metric was analyst-reported. "I can breathe now" from one of the leads mattered more than the throughput number. Culture-of-adoption is the leading indicator; throughput is the lag.

Let's build what actually ships.