About

I like the part where the pieces have to connect.

The most interesting engineering problems rarely live neatly inside one component or repository. I like understanding how the frontend, data, APIs, platform constraints, business requirements, and people involved fit together, then finding a solution that can actually survive production.

How I work

I work across the seams, and stay close to the code.

I've spent my career in ecommerce, but I think of myself as a software engineer first. Commerce has given me seven years of unusually good systems problems to solve at scale.

I'm most useful when a problem crosses boundaries: frontend and backend, product data and customer experience, implementation and delivery, or a technical decision and the people who need to act on it.

I'm comfortable moving from architecture and discovery back into the component, test case, query, API contract, or line of code that is keeping a system stuck.

Working principles

Make the system legible

Map the data, constraints, dependencies, and ownership boundaries before they turn into delivery surprises.

Stay close to implementation

Use architecture, direct coding, review, debugging, and testing as parts of the same engineering practice.

Own the last mile

Follow work through integration, QA, release, and production instead of treating code completion as the finish line.

Frontend & full-stack

React · TypeScript · JavaScript · Vue · Liquid · Node.js · Remix / React Router · Hydrogen · Sass

Commerce & platforms

Shopify Plus and Enterprise · Oxygen · GraphQL · Checkout Extensibility · Functions · POS · B2B · Markets

Data & integrations

Sanity · Contentstack · Algolia · Stripe · Neon · Drizzle · Cloudinary · MAO · AWS · Third-party APIs

Quality & tooling

WCAG · Core Web Vitals · Playwright · axe · GitHub Actions · Cursor · Codex · MCP workflows

Contact

Have a complex engineering problem to untangle?