Back to all posts

From Figma to Function: Designers Do Not Need to Become Engineers

I keep hearing a version of the same question from designers: how close to code should we get?

The answers usually split into two camps. One says designers should stay focused on users, flows, and interaction. The other says the future belongs to designers who can build what they design.

I understand both reactions. I also think they make the choice feel more dramatic than it needs to be.

Designers do not need to become engineers.

They do need a working understanding of the code. That understanding gives them a way to use AI responsibly, contribute to the front end, and deliver more than a design file.

The Handoff Hides More Than It Carries

A polished design file can create the impression that the work is complete.

The screens look resolved. The components line up. The prototype demonstrates the main path. Then engineering starts building, and the questions arrive.

What happens while the data loads? What if the response fails? Does this component already exist? How does the layout behave with longer content? Which interaction matters most when the technical constraint forces a tradeoff?

Those questions are not edge work. They are the product.

The problem is not that designers forgot to annotate every possible state. No document can carry the full context behind a design. The problem is that many handoffs create distance at exactly the moment the team needs shared understanding.

The design artifact crosses the line. The reasoning behind it often does not.

A diagram showing design intent becoming more durable as designers move closer to implementation

Closer to Code Means Closer to Reality

Getting closer to code does not mean taking over the engineer’s role. It means understanding the material well enough to work with it.

That can mean reading a component well enough to understand its states. It can mean opening the product locally and seeing how the interface behaves with real data. It can mean using browser tools to inspect spacing instead of debating screenshots. It can mean tracing how a design-system component gets its content, styling, and behavior.

The goal is not to perform technical fluency. The goal is to build enough of it to participate.

A designer who understands the implementation can ask more useful questions. They can see where the system already supports the intended experience, where a new pattern adds unnecessary complexity, and where a technical shortcut changes something users will feel.

That knowledge also makes compromise more precise.

Instead of saying, “Engineering could not build the design,” the team can name the actual constraint. Instead of protecting every pixel, design can protect the part of the experience that carries the intent.

AI Changes the Entry Point

For a long time, getting closer to code required a difficult first step. A designer had to navigate an unfamiliar repository, learn the language, and figure out which files mattered before asking a useful question.

AI lowers that entry cost.

A designer can ask for a plain-language explanation of a component. They can trace where a value comes from, compare the implementation with the intended states, or generate a small prototype to test an interaction with real behavior.

With a working knowledge of the code, they can go further. They can use AI to adjust a component, add a missing state, improve responsive behavior, fix an accessibility issue, or build the front-end expression of an idea inside the actual product.

That contribution still needs engineering review. AI can produce code that looks convincing while missing the architecture, the test coverage, or the reason the system works the way it does. The designer needs enough understanding to inspect the change, explain the intent, and recognize when the answer feels wrong.

I think that distinction matters. AI lowers the barrier to contribution. A working knowledge of the code makes that contribution useful.

Deliver More Than the Design File

The design file can still hold the exploration, interaction model, and visual direction. It does not have to remain the final design deliverable.

A designer who understands the front end can bring a working branch into the conversation. They can demonstrate the behavior with real components, real breakpoints, and realistic content. They can open a focused pull request for an engineer to review instead of asking someone else to reconstruct the idea from annotations.

That changes the handoff.

The engineer still owns the architecture and production quality. The designer contributes closer to the final medium. Both people can review something that works instead of interpreting what a static artifact meant.

I do not expect every designer to contribute code on every project. The opportunity depends on the team, the product, and the risk. But “designers are not engineers” should not become a reason to keep design permanently outside the implementation.

AI makes contribution more accessible. Code understanding makes it credible.

Protect Intent, Not Artifacts

The part I keep coming back to is what design leadership should protect.

If we protect the artifact, every implementation difference can feel like a loss. If we protect the intent, the team has room to find a better answer together.

Maybe the important part is reducing uncertainty before someone commits. Maybe it is making a healthcare task easier to complete under stress. Maybe it is keeping an action accessible when a customer applies their own branding. Maybe it is preserving trust when the system cannot give an immediate answer.

Those outcomes can survive changes in layout, technology, or scope. They are easier to defend when the designer can connect them to the implementation decision in front of the team.

This is one reason I think AI’s unsexy product-team work matters. Drafting tickets or flagging missing states helps, but the deeper opportunity is reducing the translation loss between disciplines.

The tool should carry more context. The people should still make the tradeoff.

A Practical Starting Point

I would not start by asking every designer to become proficient in a programming language.

I would start with one feature that already exists.

Open the implementation. Find the component that renders the experience. Ask someone—or an AI tool—to explain how its states map to the design. Change a small value locally. Trace what happens when the data is missing. Compare the real behavior with the happy path in the prototype.

Then make one contained contribution. Add the empty state. Correct the responsive spacing. Improve the semantic markup. Build a small front-end variation and ask an engineer to review it.

The point is not to prove that design can code. The point is to use code understanding to deliver more of the experience.

Teams can build from there:

  • Review implementation states during design critique.
  • Include engineers before the flow feels finished.
  • Use functional prototypes when behavior carries more risk than appearance.
  • Let designers contribute focused front-end changes through the team’s normal review process.
  • Treat design QA as collaborative product work, not a final inspection.
  • Record the intent behind important decisions so the implementation can preserve it.

These practices create more value than a broad mandate for designers to “be technical.” They connect technical understanding to a product outcome.

The Leadership Question

I wrote earlier that design leadership in the age of AI still comes down to alignment, judgment, and measurable outcomes.

Getting closer to code fits that same frame.

A design leader does not need to turn the team into part-time engineers. They need to create the conditions for designers to understand the code, use AI with judgment, and contribute where that contribution improves the product. That may mean local development access, engineering partners, shared reviews, safe starter issues, or a clear pull-request path.

It also means giving designers room to learn without treating technical fluency as a test of whether they belong.

I do not think the future of design depends on everyone becoming an engineer.

I think it depends on designers understanding how the product becomes real, then using that understanding and AI to deliver more than design files.

The handoff gets smaller when designers can help build what comes after it.