Using LLMs as a product designer: A retrospective

Using LLMs as a product designer: A retrospective
Photo by Alexander Grey

Around December 2024 I wrote a post here about how I use LLMs in my daily work as a designer. This post now feels outdated, so I thought it's time for another retrospective – tools have evolved, and I have been trying to keep up, so my approach evolved with the tools.

Since the last post, my role has evolved into code reviews, making sure everything works as intended, and directing different tools to build what I have in mind.

My current toolkit

Here's what's living in my dock these days:

  • For design work: I'm currently exploring Subframe and UX Pilot, while continuing to use Figma. I'm a visual thinker, and being able to place things on the canvas is still the winning strategy for me personally. The only change I've made is that I have enabled Figma Dev Mode MCP server, which allows me to connect my designs almost 1:1 to the code being generated by Cursor.
  • For code: Cursor is doing the heavy lifting on actual development, paired with Claude and Claude Code for when I need to think through architecture or debug something particularly stubborn. Gemini + Gemini CLI rounds out the coding stack – sometimes you just have to ask a different model to get the other one unstuck from a problem it has created.

It's a weird mix of tools that would have made zero sense to me a year ago, but I feel like each one fills a specific gap in my day-to-day design-to-code pipeline.

Context - it matters

Cursor was frustrating initially. It was hallucinating a lot, trying to import components that didn't exist, and breaking code that has worked before.

After some trial and error I realized the issue was context. The moment I started feeding it context — really good context like the entire design system implementation or all the documentation that we have around it — everything changed. This transformed the editor from a hallucinating mess into something genuinely useful.

The difference between "write me a button" and "write me a button using our design system with proper focus states and consistent with our existing form components" is night and day.

Prototyping in code

The speed change is genuinely impressive. What used to involve design work in Figma, writing specs, coordinating with the dev team, and going through multiple review cycles now happens in hours or days at most.

This compressed feedback loop is addictive. Instead of spending weeks polishing a concept that might not even work, users can click through real flows, encounter actual loading states, and hit genuine error conditions. This puts the user in the user experience front and center much faster than ever before.

Moving fast and fixing things

At some point, I started showing those tools to the team - everyone has access to Cursor and Gemini now, and they're making changes directly in our codebase, which is both a win and a worry – bringing some chaos monkey energy into the front-end code definitely can stress-test the checks and balances on the engineering side.

Faster iteration cycles and cleaner hand-offs between design and development. When someone can fix a padding issue themselves instead of writing it up in a ticket, everyone benefits, and the output is much higher quality.

The new bottleneck

The bottleneck isn't figuring out how to build things anymore — or at least not at the same scale as before. Right now, the bottleneck is having enough meaningful ideas worth trying. When you can go from concept to working prototype in hours, the focus shifts entirely to what actually needs to exist.

Thanks to this shift, you can spend more time talking to users, studying analytics, and thinking deeply about where the value lives. Less time pushing pixels, more time understanding problems.

Looking ahead

I'm not naive enough to think this replaces everything about traditional design and development. Complex systems still need careful architecture. Accessibility still requires expertise. Performance optimization still matters.

The tools are still evolving fast (sometimes frustratingly so), but the direction is clear. The gap between thinking something and building something is shrinking rapidly.

And honestly, as someone who enjoys making stuff, it's pretty fun to again be able to build things.

Mastodon