Who I work with

For fifteen years I've built websites for teams whose site has to earn its keep: New York and Detroit post-production studios whose reels have to load fast and look perfect, an independent snowboard magazine, a San Francisco real estate developer, an investment firm, and a free guide that helps Canadians find their families' war graves in Europe. Different industries, same job: a site that makes the right first impression and keeps working long after launch.

What working with me is like

You work with me directly: no account managers, no handoffs to a junior team. Every project starts with a written plan, you see progress on a live preview link as it's built, and nothing goes live until I've reviewed it. I pick the stack that fits your team, not the trendy one, and I write down why, so whoever works on the site next can pick it up.

After launch

Most of my clients stay with me after launch. I keep sites fast, secure, and up to date, and I'm the person you call when something needs to change. Good tools make me fast. Fifteen years of doing this is why the work holds up.

Recent highlights

2025 to present

Wilshire Law Firm

Senior web developer. 50+ marketing domains, IntakeKit React widget, Core Web Vitals remediation, automated Playwright QA on PPC landing pages.

2024 to 2025

Design Pickle

Full-stack engineer. Nuxt + TypeScript + Storyblok on Vercel. A/B tests through Mutiny and Stellar that measurably moved conversion.

2020 to 2023

Funkhaus

Headless WordPress + Nuxt.js builds for agency clients. Architecture, dev, deploy, and mentoring junior engineers.

2016 to 2019

Deloitte (L6)

Lead frontend engineer. Custom Shopify storefront in React/Next.js/GraphQL. Hackathon-MVP Salesforce app used across the studio.

The stack

AI & ML

Claude APIGoogle GeminiGoogle ImagenGoogle VeoPrompt engineeringEvals

Frontend

React 19Next.js 16TypeScriptVue 3NuxtTailwind CSSSCSSFigma

Backend & data

Node.jsPostgreSQLSupabaseNeonDrizzle ORMGraphQLRESTWebhooks

Infrastructure & testing

VercelCloudflareNetlifyGitHub ActionsDockerPlaywrightGTM