I’m a designer and engineer (design engineer) based in Kansas City. Design engineer? In practice it means I take both the design and the code a little too seriously, down to how a button answers your hover, how a page moves as you scroll it, and how much of the network waterfall sits between you and the first thing worth looking at. I’ve been building websites for over fifteen years, and this is what that turned into. Full website and landing page designs, frontend builds, and a lot of headless CMS work, mostly Sanity. I got good at it and spent enough time helping people in the community that Sanity hired me to do it. I’m also a Sanity Certified Developer, which is the paperwork version of that last sentence.
Before Sanity I co-founded an agency and ran it for seven years, leading creative and engineering. We were a lean team that built entire websites. The frontend always, the backend when it was needed, and the part nobody lists on a website, which is sitting with a client until you understand what they’re actually trying to do, then teaching them how to run it once it’s live. These days that client has often already built half of it with Claude Code or Codex, and the job is knowing what to ask for next.
Away from the screen I’m a mostly chill birder. The ticker up top is a list of my most recent , and I will occasionally rearrange my entire morning upon receiving a notification that a rare bird has been spotted nearby (yes, I get rare bird notifications). The other thing that gets my attention is shelter dogs. I volunteer, I foster, and I take “Dog Day Outs” with nervous pups who need a better writeup than “I’m shy.” Otherwise I make electronic music, play a lot of pickleball, and keep a house full of plants that are, against reasonable odds, mostly still alive.
I never wanted to pick between design and engineering. For a long time that read as indecision, and I got told more than once to specialize. As I gained more experience, this “” really started to become what made me a unique asset to teams and companies.
01
Design
I’ve been designing and building websites for over fifteen years: landing pages built to convert, full marketing sites, and web apps with real product complexity behind them. I’m an engineer as well, so I know what can and can’t be built, and I design with that in mind from the first frame. Responsive layouts, interaction states, and motion are settled before development starts. Underneath it is the system: font faces, colors, components, and the rules that keep a product looking like one product.
02
Frontend
Svelte/SvelteKit (my personal favorite), React/Next.js, Vue/Nuxt, or Astro. Frameworks are like car makes: the controls move around, but the driving mostly stays the same. What I care about is how the site feels, for two groups of people. For visitors: real content on screen fast, with nothing in the waterfall holding it up; hovers that tell you what’s clickable; pages that move well as you scroll; and layouts that hold up on a phone and without a mouse. For the people who maintain it: a preview that shows the actual page, click-to-edit straight from the site, and changes that can’t quietly break the layout.
03
Content architecture
I specialize in Sanity (I’m a Sanity Certified Developer), but I’m happy to bring my CMS expertise to other CMSes. The main goals are modeling content so it survives the next redesign and building the editing side so nobody has to paste the same thing in four places or wonder which field takes the site down. Also baking in AI automations and workflows to reduce time to production while ensuring proper safeguards. Agents should be able to make content changes with the same brand guidelines, tone of voice, and safeguards.
04
AI build rescue
You built it with Claude Code or Codex and it works, sort of. The CSS is fighting itself, it’s slow to load, the experience changes from page to page, and every fix breeds two more. I’ve done design and frontend for a long time, and I build with these agents daily. I can see what’s off and fix it properly, then set up the rules, context, and skills in your repo so what you build next comes out right.
05
Technical direction
Which stack, which platform, what to skip for now, and what to do with the choices someone already made. Before a build, mid-build, or three years into one.
My Experience
Most recently, three years inside Sanity.io, where my job was helping spread knowledge to ensure success on the platform. Half of that was teaching; the other half was building tools, templates, starter kits, and libraries, so nobody had to begin from an empty folder.
Before that, seven years at AllDay.io, the agency a friend and I started, designing, building, and maintaining websites for people whose businesses relied on them.
I joined as a Solutions Engineer, helping enterprise teams work out whether Sanity fit and then how to implement it right. Later I moved to developer education, building the starter kits, templates, examples, and docs developers learned the platform from.
A two-person web agency I started with a friend: he ran sales and strategy, and I led design and engineering. Sites businesses ran on, built on a well-structured CMS so editing pages and launching new ones didn’t need a developer on hand.
I built an AI-powered dog adoption app that replaces rigid filters with a single text input. Type a sentence like “I want a dog that won’t make me sneeze and loves kittens” and it finds the match.
I built a demo site that uses a text input instead of toggles and checkboxes to help people find a dog right for them. “Fluffy and good with kids” is a better experience.
Agent Actions are AI APIs that actually understand structured content. Built by Sanity, they work with your schema to automate content generation, transformation, and translation.
Agent Actions: Sanity’s AI APIs, built for structured content. They understand your schema and fit seamlessly into your existing content model and workflows.
The April 2025 round-up. My segment on AI-powered Sanity development starts at 15:44.
Say hello
Whether that’s a project, a role, a thing you built with an AI that’s gotten away from you, or a question about something on here. I answer everything.