Twenty years between front end engineering & UX.
I've spent most of my career at the intersection of front-end engineering and UX, with design systems becoming an increasingly large part of that work. I've built and supported component libraries in Vue, React, and Web Components, for teams that had to ship on all three.
The constant across all of them is accessibility, and component APIs that work as well for the engineers consuming the system as they do for the people using the product. Right now that means Stencil-based Web Components, Storybook, automated testing, and Figma integration.
- Design-grade front-end
- React · TypeScript
- Accessibility built in
- Design systems
How I work
Three things I hold on to.
A design system is a product, and its users write code
If the API fights the team consuming it, they will copy the markup, tweak it, and move on, and the system quietly stops being one. So the props, the defaults, and the docs get the same care as the type and the spacing.
Accessibility belongs inside the component
When the keyboard paths, focus states, and semantics ship inside the component itself, instead of getting bolted on later through an audit or a ticket, every team that adopts it inherits them, and nobody has to be an expert to get it right.
Directness over diplomacy
If a product is in trouble, I'll tell you exactly where and why. Kindly, but without hedging. Then we'll map the shortest honest path forward. You're hiring me for the truth, not the comfort.
Always learning
Still reading the spec drafts.
I stay close to the sources: WAI-ARIA working drafts, the Design Tokens Community Group, CSS Working Group proposals. The platform moves. The best systems move with it.
I also maintain Rudiment UI, an open-source React component library where I sharpen ideas in public before they land in production systems.
What I follow
- 01
WAI-ARIA & APG
Authoring practices for patterns that truly work for assistive tech.
- 02
Design Tokens CG
The emerging standard for portable, multi-platform design decisions.
- 03
CSS Working Group
Container queries, anchor positioning, cascade layers (the good stuff).
- 04
Rudiment UI
My open-source React component library, built with the reasoning left in.
A few things that aren't on the résumé.
The professional stuff is the rest of this page. Here's the short version of everything else.
Louisiana runs deep
I grew up in Louisiana on Cajun food and Cajun music. Nothing beats my grandmother's chicken and sausage gumbo, her crawfish étouffée, or my step dad's boiled crawfish. Nothing!
My wife and I both served
We're Army veterans who met at our first duty station, overseas. We were stationed in Hohenfels, Germany, lived in the nearby village of Seubersdorf, and had our first child there. Ein bier, bitte!
Bass, drums, thirty-plus years
In my younger days I toured the southeast college circuit, playing in fraternity houses and college clubs. I also spent a lot of time playing gigs on Bourbon Street and Frenchman Street in New Orleans. These days I keep it local.
We travel as a family, a lot
Every chance we get, with our kids: Canada, the Bahamas, Italy, Iceland, Ireland, France, Austria, and Germany so far. Iceland is still our favorite. We also enjoy stateside travel and like staying off the beaten path.