Expertise

Frontend first, with real backend depth.

Since 2015 I've mostly been hired for frontend work: Vue, React, and TypeScript apps, component libraries, and rewrites of legacy UIs. Before that I spent more than a decade on systems, test, and backend engineering at IBM and Preventice, and I still write backend service and API code when a project needs it, most recently .NET/C# at Patterson Companies. I'm open to full-stack roles as well as frontend ones.

Technical profile

Frontend

Vue.js, React, Next.js, Nuxt, Angular, GraphQL, Storybook, Tailwind, ECharts, D3.js, component libraries, design systems, accessibility, i18n

Languages

TypeScript, JavaScript, Java, C#

State Management & Data Stores

TanStack, Pinia, Redux, SQL, PostgreSQL

Testing & AI Tools

Playwright, Cypress, Jest, Vitest, JUnit, GitHub Copilot, Claude

Backend

Node.js, Spring, .NET, REST APIs, microservices, message queues, Stripe

Cloud & Infrastructure

AWS, Azure DevOps, GitHub Actions, Datadog

Other highlights

Payments across currencies: Migrated SmugMug's legacy payments code to Stripe, with a locale-aware UI across 10 global currencies.
Regulated healthcare: Architected compliant UI workflows for Nurocor's FDA clinical trial authoring platform, named the Best Integrated Protocol Authoring and Review Solution by TransCelerate BioPharma.
500+ person-hours saved a year: Automated IBM software update packaging and enabled self-service builds across teams.
Developer community: Co-founded FED@IBM Rochester, a community of 30+ frontend engineers, and led twice-monthly sessions on JavaScript, accessibility, tooling, and UI automation testing.