Component APIs Shape Teams
A primitive earns its place when correct composition is the easiest thing to do with it. Prop count is a side effect of that, never the goal.
Staff Software Engineer ยท Frontend Architecture and Design Systems
I lead frontend architecture and design systems for product teams. The job: a complex interface that stays fast and accessible while more people ship into it every week.
Public links where they exist. The employer rows have no links, but they keep enough detail to judge the thinking, and every number is real.
This site. A static Astro build that collects shipped work in one place, with the source public so you can check the craft directly.
Astro static output, OKLCH token system, modular CSS, cursor-driven CSS spotlight, accessible landmarks.
A terminal UI for Apple Containers. It manages the containers, images, and volumes already on the Mac, and shows the exact command before anything destructive runs.
Public repository, product site, Rust/Ratatui TUI wrapping Apple's container CLI, live telemetry, confirmed destructive actions, Homebrew and shell installers.
Fail-closed image updates for Portainer and Compose. A digest has to mature before it can be applied, and a failed health check rolls the service back and opens the breaker.
Public repository, product site, Go CLI and daemon, digest pinning, no Docker socket, circuit breaker, Git proposals that never self-merge, signed releases.
A self-hosted app for comic collectors. React UI, with flows designed for people who come back to it every week.
Public repository, product site, self-hosted product surface, state clarity, type-safe interface work.
Led a design system from beta toward general availability: semantic tokens, package architecture, release infrastructure, documentation, and contribution governance.
639+ token semantic taxonomy, UI package restructure for bundle size, Radix-to-Base UI migration, snapshot releases with OIDC publishing, org-wide training, documented approval paths.
Owned frontend direction for CRM and Contacts: navigation, saved-search flows, contact lists, responsive layouts, and the production bugs that came with them.
Primary frontend contributor on the company's top product, used by 87,000+ agents: navigation redesign, saved search, contact tagging, Jest-to-Vitest RFC, analytics library design, back-end mutations.
Wrote the product architecture for an AI workforce platform. Cut the visible object model to five concepts and turned the research and user stories into a phased implementation plan.
12-part IA proposal built on 17 competitive analyses and 37 user stories across 9 epics. Object model cut from 10 concepts to 5, navigation from 14 entry points to 2, delivered as an 8-week phased roadmap.
Brought AI coding workflows into daily engineering: repository guidance files, validation skills, product demos, and faster review loops.
First Claude Code adopter on the team. Wrote the design-system repo instructions and two migration validation skills; the page-level migration they guarded shipped 6 PRs with 0 fix-ups against the prior 20 with 5. Built AI platform features and demoed them to product and engineering leadership.
A primitive earns its place when correct composition is the easiest thing to do with it. Prop count is a side effect of that, never the goal.
Keyboard flow, focus, contrast, and labels go into the interface spec alongside the visual work. Anything scoped as a cleanup pass after approval tends to get cut.
I use AI where it saves real time: critique, verification, migration planning, and the mechanical parts of review that eat human attention.
Staff Software Engineer for frontend architecture and design systems, on a product team that needs someone to own interface quality end to end and put AI to work inside the engineering loop.