Project Palisades
Conceived and led a ground-up modernization of Spring Health's member-facing front end — design system migration, accessibility remediation, brand integration, and stack upgrades across 19 months.
Overview
In mid-2024, Spring Health's member-facing front end was dragging the company backward on four fronts at once: the legacy UI was slowing feature development, accessibility violations were accumulating at roughly 100 per month against an active Microsoft SLA obligation and a Q4 2026 CARF audit, mobile web was consistently broken as Spring expanded into frontline and mobile-only populations, and a refreshed brand had shipped in style guides without reaching the product.
Splitting these into four separate initiatives would have meant four teams, four timelines, and four sets of regressions — with the underlying architectural coupling that caused them never actually addressed. Project Palisades was conceived as the single coordinated fix: replace the UI layer with Verdant UI, integrate the brand, remediate accessibility, and upgrade the stack as one project that rewrites the foundation instead of repainting it.
My Role
I conceived Palisades in September 2024, drafted the 1-pager, secured CEO green-light from April Koh in October, stood up the cross-functional team, and have led delivery continuously since. Without a dedicated PM, I operated as IC, delivery lead, de facto PM, and de facto engineering manager — simultaneously with design systems governance, design ops, and accessibility governance. Chris Dadabo co-leads engineering; the Incubyte contract team has been embedded in daily standups for the full project.
The Decisions That Shaped Delivery
Coordinate, don't fragment. Brand, accessibility, mobile, design system migration, and stack upgrades were the same underlying work. Absorbing them into one project kept the fix coherent instead of fragmenting the team across four parallel efforts.
Architectural refactor, not a reskin. The legacy front end had business logic and UI tightly coupled throughout. "Simple" pages had complex embedded behavior. Most users can't visually distinguish a refactored page from its predecessor — that's intentional. The value is foundational.
Directory-level migration. After eight months of page-level migration, I made the call in March 2026 to switch to directory-level work. The SPA's shared components meant page-level migrations were creating duplicate effort and never reaching 100%. Directory-level is higher-leverage, lock-in-able against legacy drift from other teams, and honest about progress. Once a directory is done, it stays done.
Build the AI tooling ourselves. The four levers available for speed were: dedicated PM, more QA, protected engineering capacity, and AI tooling. We couldn't unilaterally grant the first three — so in March 2026 we built the verdant-migration Claude Code plugin: four skills encoding 80+ transformation patterns compiled from 27 production migration PRs.
/migrate— autonomously transforms Chakra v2 to Verdant React: import rewrites, prop conversions, compound-component restructuring, design-token validation/verify— 12 categories of post-migration checks/audit— scans for remaining legacy usage, ranks modules by migration priority/routes— maps modified files to affected Next.js routes, generates QA test plans
The result: previously ~4–4.5% month-over-month growth. First month with the plugin: 9.7% MoM. A sustained 2× speedup. What took days per module now takes hours.
Rebuilding the Measurement
In February 2026, I rebuilt progress measurement end-to-end. The original script was measuring the wrong thing. Using Claude Code to recalculate against actual codebase imports, we found we were not at 23% as previously reported — we were at 42%. The new approach is objective (Verdant imports / total UI imports), automated (Coda dashboard auto-updates monthly), and honest about what "done" means. This was the first roadmap grounded in actual delivery data.
Outcome
Spring Care VUI adoption: 0% → 57% over 19 months, on track for 90% by September 2026. React 18, Chakra v3, and Next.js upgrades — all complete. Navigation and application chrome shipped August 2025.
"OMG it's BEAUTIFUL I am crying." — April Koh, CEO, on the navigation launch
Accessibility violations — from ~100/month accumulation to a health score trending toward 90, the CARF readiness bar. Microsoft SLA obligations on track. A single avatar-component fix resolved 520+ accessibility findings — the kind of leverage the directory-level approach exists to create.
The project is also the proving ground for AI-assisted migration at scale. The verdant-migration plugin is now the team's primary velocity lever. When AI access is the strongest tool you have, continuity of access becomes a real dependency — which is worth naming before it becomes a problem.