← All Work
Fintech / Specialty Lending

CSL Capital

Manual risk review. No ML. Reports took 30 minutes to run.

The Problem

CSL Capital's risk team was manually reviewing every MCA loan application. Reports took 30 minutes to generate. There was no scoring system — decisions relied on analyst judgment with no data backstop.

Every loan was a fresh start. No historical benchmarking. No automated flags. The team was spending most of their time gathering data instead of making decisions.


What I Built

  • ML risk scoring pipeline (logistic regression + random forest) with prior relationship decay, fuzzy name normalization, and Bayesian priors
  • Reduced BigQuery API calls from 840 to 6 per pipeline run
  • Automated QBO + HubSpot data sync with reconciliation layer
  • Partner performance views with TVT baseline comparisons

The Outcome

  • Report runtime: 30 minutes → 26 seconds
  • 745 automated tests covering the full scoring pipeline
  • Risk team now reviews flags, not data

Tech Stack

PythonBigQueryGCP Cloud RunHubSpot APIQuickBooks API

Read the full technical deep-dive

The entire lead-to-decision system, built end to end — six connected stages on one governed warehouse.

Working on something similar?

Start with a diagnostic — a fixed-scope read of your data stack, credited toward the build.

See how I'd approach yours →