Skip to content
Ihor Romanchuk

AI Underwriting Platform

Messy financial documents in, verified, decision-ready data out - built solo, first commit to production in four months.

Client
Excedr, Inc.
Industry
Fintech · leasing
Role
Architect & sole engineer
Timeline
4 months · 2026

4months

to production, solo

70fixtures

golden, in CI

16checks

deterministic

30ADRs

documented

Context & challenge

Context

Underwriting analysts at an equipment-leasing fintech spent their time re-keying bank statements, balance sheets, P&Ls and cash-flow statements before they could assess risk.

Challenge

Use LLMs to extract financial data reliably enough that analysts could trust it - while keeping inference costs under control and every number traceable to its source.

Architecture · fig. 02

Documents (PDF or Excel statements) go to a pre-flight probe that checks for a text layer and page count. A cost-aware router then sends digital files to a light Gemini model, scans to a vision model, and falls back to Claude. LangGraph extracts the data, with model access through OpenRouter and traces in LangSmith. In the trust layer, 16 deterministic checks validate the result before an analyst approves it with the source highlighted. Supporting it: an eval harness of 70 golden fixtures in 3 suites on GitHub Actions that observes extraction; a deterministic math engine, with no LLM, for cash runway under base, stress and default scenarios; and AWS infrastructure in Terraform across dev, test and prod - ECS Fargate, RDS, SQS, S3, CloudFront and Cognito.

  1. 01 InputDocumentsPDF or Excel statements
  2. 02 ProbePre-flighttext layer? page count?
  3. 03 Cost-aware routerGemini · vision · Claudelight → scans → fallback
  4. 04 ExtractLangGraphOpenRouter · LangSmith traces
  5. 05 Validate · trust layer16 deterministic checks
  6. 06 ReviewAnalyst approvessource-highlighted

What I built

  1. Eval harness: 70 golden fixtures in three suites, in CI.
  2. Natural-language formula builder for Excel-like formulas.
  3. PDF and spreadsheet viewers highlighting each number’s source.
  4. 30 ADRs, a domain glossary and agent rules - 170+ test files.

In the product

Mobile financial analysis screen with cash runway scenarios and ratio charts
fig. 04Financial analysis on mobile - Cash runway scenarios, history charts and summary ratios, laid out for a phone.Show full screen ↗

Outcomes & role

  • Production launch in 4 months with a team of one.
  • AI extraction errors caught by 16 automated checks before analyst sign-off.
  • Regression-proofed by 70 golden fixtures on every change.
  • Weekly demos with leadership and analysts; roadmap re-sequenced to ship the math engine first.

Solutions Architect and sole engineer - architecture, infrastructure, AI pipeline, evals and UI, designed in v0 and Claude Design.

  • Python
  • TypeScript
  • LangGraph
  • LangSmith
  • OpenRouter
  • Gemini
  • Claude API
  • React 19
  • NestJS
  • PostgreSQL
  • Prisma
  • AWS
  • Terraform
  • GitHub Actions

Stack

  • Python
  • TypeScript
  • LangGraph
  • OpenRouter
  • Claude API
  • React 19
  • NestJS
  • PostgreSQL
  • AWS
  • Terraform
Next - 02AI-First Design System & MCP Server