field notes · 2026-08-20 · 2 min
The only designer, and I shipped the code too
Being the only designer on a four-person team — collaborating on the codebase in Claude Code and GitHub, off a brand system built in Figma.

I was the only designer on a four-person team, and I didn't hand the design off — I collaborated on the codebase itself, in Claude Code and GitHub, with the contextual styling and color informed by a fully responsive brand system I developed in Figma.
That's the part that usually gets described as "engineering handoff," and it isn't what happened.
Being small meant more control, not less
Being a small team meant fast iteration and more control over each feature. We didn't have to stop marketing, or any of the day to day, in order to also ship code — around the clock, merging PRs and running UX reviews.
We did all of it. Including testing with people in our own lives who fit the target audience.

The brand system in Figma wasn't a deliverable that got thrown over a wall and then reinterpreted by someone else. It was the source the code read from. Same system, same tokens, same decisions — which is why the styling stayed contextual instead of drifting every time a feature shipped.

The same system ran the content too
I also automated blog posts, website, and email content using that same design system — Claude Code writing the content and the HTML that handled delivery.
That last part matters more than it sounds. It wasn't just generated copy. It was the copy and the markup that actually shipped it, built off the same brand system the product used, so the email and the app didn't look like two different companies.

Then PostHog to track user behavior, and SendGrid analytics going directly to Claude agents — so what people actually did came back into the loop instead of sitting in a dashboard nobody opened.
The human loop isn't a safety net, it's the method
The brand voice layer was a human loop. I'd review the content before it went out, steering the agent's rules file to make sure it was always accurate.
That's not something I bolted on for this project. The human loop is part of my design methods throughout everything I do — always exploring the strengths of different models and providers, and keeping a person in the path where the output actually matters.
The generation was never the hard problem. Keeping it accurate and in voice was, and what solved that wasn't a better prompt. It was a person reading the output before it shipped, and turning what they caught into a rule the agent had to follow next time.