
CCA
Built internal tools for CCA's global benefits administration platform, including a cloud-native healthcare network analyzer migrated from legacy Google Apps Script and an automation pipeline that organized thousands of multilingual PDFs into structured Notion databases.
CCA Inc. administers employee benefits programs globally through their BeWell and EAP product lines. As Fractional CTO, I architected and built the technical infrastructure behind two major internal systems, replacing manual processes with automated, scalable platforms.
GeoAccess Network Analyzer
CCA’s healthcare network accessibility tool lived as a 5,000-line Google Apps Script. It calculated distances between employee populations and healthcare providers across the country, applied complex filtering criteria, and generated compliance reports. It worked, but it was slow, untyped, and impossible to test.
I rebuilt it from scratch as a cloud-native platform on GCP: TypeScript backend on Cloud Run, React frontend with shadcn-ui, and BigQuery handling the heavy distance calculations through a pre-computed view pipeline. The migration maintained 100% calculation parity with the legacy system (down to a 0.01-mile tolerance) while cutting analysis time by 30%. A dataset of 5,000+ ZIP codes that used to take minutes now processes in about 30 seconds.
The system handles multi-segment provider filtering across license types, age groups, visit modalities, and area classifications. It generates Google Sheets reports with population-weighted coverage statistics, accessibility summaries, and bar charts, then automatically shares them with the right people.
Notion Assets Pipeline
CCA needed to organize thousands of multilingual PDF assets (benefits guides, FAQs, wallet cards, orientation materials) in a centralized Notion database. The problem wasn’t just volume. Critical metadata like target country and client name was buried inside each PDF, not in the filenames.
I architected the data model and ingestion strategy, then built a Python pipeline that discovers PDFs from mixed sources (directories and ZIP archives), extracts metadata using pdfplumber and regex pattern matching, creates and links client records in Notion, and handles the uploads with duplicate detection and conflict resolution. A single client project could mean processing thousands of PDFs across 30+ languages and 50+ countries in minutes instead of weeks of manual entry.
The tool supports dry-run and validation modes so operators can preview exactly what will happen before touching the database, and it handles Notion’s API rate limits with exponential backoff.