Should you pursue a career in design engineering?

Perspectives on this emerging discipline that can help you determine whether it’s right for you

A colorful digital illustration (with shades of red, blue, yellow, green, purple, and orange) on a light blue background. At the center of the illustration is a light-skinned woman, surrounded by multicolored squares and shapes, with shoulder-length black hair, wearing turquoise shoes, red pants, and a blue top with one leg stretched out in front of her and another tucked under her. Her left hand is enlarged and facing palm out.

Illustration by Kenzo Hamazaki

For many years, the design industry has held a recurring debate on a hotly contested topic: Should designers learn to code?


Those who argue “yes” often claim that by learning the medium for which they are designing—namely, the user interface technology used to implement their designs—designers will design interfaces and workflows that take advantage of, and better work within, the constraints of the medium. They claim those same designers will be better at “speaking the language” of engineers building their product. Those who argue “no,” say designers have enough on their plates and would be unable to produce code that’s maintainable and production-ready without compromising their primary responsibilities.

This question—"Should designers code?"—pushes buttons precisely because it presents itself as a binary choice when it actually has no correct answer. It attempts to foist upon the industry a universal decree: Thou shalt (not) code! But any honest attempt to address this question depends on specific, very personal context and preferences, with a broad spectrum of possible, valid responses. A more useful question is: Should I learn some of the skills of my partner discipline? Should I learn to code? Or, conversely for developers, should I learn to design?

This question—"Should designers code?"—pushes buttons precisely because it presents itself as a binary choice when it actually has no correct answer.

As you navigate your career, how much you choose to play within, or step outside, the lines of disciplinary boundaries will always be a deeply personal decision. But when confronted with these questions, knowing what a hybrid designer-developer role might look like—both now and into the future—may help you make a more informed choice. Fortunately, there's a growing community of interdisciplinary professionals out there who can serve as role models for exactly this purpose. These are people who specialize in solving problems in that fertile, liminal space that lies at the intersection of the design and engineering disciplines. At Adobe, we call them "design engineers."

What is a design engineer?

In the software industry, the job title "design engineer" has many synonyms: UX engineer, UI engineer, design technologist, experience developer, design prototyper, or creative technologist, just to name a few. These various titles are the legacy of our industry wrestling with this weird, squishy, interdisciplinary role, trying to figure out just what to call the people who don’t fit neatly into designer or developer boxes. Sometimes we’ve called them, simply, “unicorns.”

But you can’t accurately describe what design engineers are without describing what design engineers do. At Adobe, design engineers solve the problems that arise where design and engineering overlap in three specific ways:

If any of these three activities speaks to you, then design engineering might be your thing.

Prototyping requires a unique blend of engineering talent and design prowess

There are many things designers can’t learn or understand about their designs without a working prototype. And there are many types of designs for which a click-through style prototype, such as those you can build in design tools, are insufficient. The benefits of high-fidelity, working prototypes written in code are numerous: they help to eliminate unspoken assumptions between design and engineering, reduce time spent in meetings, help drive consensus, prevent expensive mistakes that would otherwise be uncovered during or after product development, help teams explore technical capabilities and limitations, and help uncover new design directions and possibilities.

A screenshot of a blue sky with clouds with a highlighted rectangle in the center and a prompt field with the words "What would you like to generate?" Superimposed over it is a Generative Fill panel with a heading that reads "Reference Image. The reference image will guide your generated output." Beneath it is a search field with the word airplane and a photography of an airplane flying through a cloud-filled morning sky.
Reference image support in Photoshop’s Generative Fill began life as a working prototype that was shaped by user study feedback.

At Adobe, we have more than two dozen design engineers and managers who focus on high-fidelity prototyping as a discrete discipline. Our prototyping teams partner closely with designers and user experience researchers to understand problems, design and build prototypes, and test those prototypes with real users. We use what we learn from this process to inform and improve designs, iterate, and repeat. Sometimes again, again, and again.

Prototyping requires a unique blend of engineering talent and design prowess, as well as a willingness to throw everything away and try again at any moment. As Adobe Design engineering manager Sapna Gathani, wrote:

“Prototypers, who often have both design and engineering skills, care about the user experience just as much as the technology that brings it to life. Since they aren’t bound by the same constraints as engineering teams—like addressing security and scalability concerns or writing production code—they can build on short timelines, with fast feedback and iteration cycles, and quickly answer questions for design and product partners. They also encourage trial and error, are extremely comfortable writing throwaway code, and restarting from scratch. More than anything though, they’re great partners in early-stage discovery and iteration and readily jump into the design process with the goal of helping designers learn more about the experiences they want to implement.”

Design systems engineering improves designer-developer collaboration and workflows

While prototyping is a keystone activity of design engineering, design engineers who find themselves called to build and craft lasting, high-quality production code may squirm at the idea of creating throwaway prototypes. Fortunately, there are many other ways in which design engineers can contribute to the design process and ship working code in products. Design systems engineering offers one such possibility.

Multiple screenshots of Creative Cloud files pages on the web on a yellow-to-orange-to-pink gradient background.
Adobe’s Spectrum design system relies on tools, components, and infrastructure built by our design engineers to help create coherence in experiences across Adobe’s many products.

What design systems engineering shares with prototyping is its role in smoothing designer-developer collaboration and workflows. Whereas prototypes eliminate ambiguity and improve the communication of design intent to engineers, design systems implementations codify intent into reusable components that can accelerate the work of those same engineers. Design systems engineers strive to build reusable, accessible components with delightful micro-interactions that are well-crafted, well-tested, and easy to integrate.

Some of the ways in which design system engineers bring their passion for sweating details to the product development process include:

Beyond these activities, however, there’s a long list of other things that engineers on Adobe's design system, Spectrum, do involving important organizational "glue work": writing documentation, working with cross-functional product teams on design system adoption, and consulting on accessibility, for instance. Our design system engineers act as caretakers of the front-end infrastructure that enables engineering cohesive experiences across Adobe's many products.

Design engineers build user interfaces with craft and finesse

Sometimes nailing a particular portion of a user interface—or even an entire experience of a product—may require a design engineer’s unique attention to detail and craft. Such work might entail polishing what started as a rough prototype to production-level quality. Other times, it might involve building a tricky new piece of user interface functionality that demands a design engineer’s willingness to finesse the details.

As Kathryn Gonzalez, independent design and engineering director, wrote on her blog: “Great design engineers are obsessed with understanding the materials of software, all the specific affordances of the medium, and the tools you use to shape them. In my experience, this obsession comes from the drive to make something that has both beauty and intentionality paired with the technical approach that design engineers develop as they strive for independence in building that software.”

A computer screen is superimposed over the center of light-colored living room with a coffee table and comfortable seating. On the computer screen is a AI-generated image of a gold and green metallic sculpture and in a prompt bar beneath it, the prompt "An abstract 3D object with amorphus forms made from g...." Four smaller versions of the same image are on the left and on the right is a panel titled "Effects" containing a gallery of thumbnail-sized images.
The development of Adobe Firefly for Apple Vision Pro required our design engineering team’s expertise in UI engineering and spatial computing to help create the best possible user experience.

This obsession with design and craft allows design engineers to elevate the fidelity of a user interface in ways that other engineers may be unable to do. Design engineers tend to be deeply "T-shaped," with a broad understanding of design, and deep technical know-how in critical user interface engineering practices like rendering, animation, and layout. Interactions related to direct manipulation—where users might immediately notice dropped frames, imprecise timing, or minor glitches in positioning—are the kinds of projects where design engineers excel. Similarly, design engineers might be called upon to create smooth, scroll-driven animations for a marketing page or playful animations for a new product.

At Adobe, we have design engineers who specialize in skills that include 2D geometry, 3D shaders and rendering, SVG, typographic layout, web front-end, machine learning, and SwiftUI and iOS development. This wide range of expertise allows us to put the right people on the right project, improving the outcome in a way that both enhances and stays true to the original design vision.

How to get started as a design engineer

Should you become a design engineer? If you want to reinvent yourself not just as a designer or a developer, but as a multidisciplinary software “maker”—someone capable of acting with high agency in the design and development of new user experiences—then the answer might be “yes.” There are many ways to get started:

Jump into the prototyping process

If you're a designer, go beyond your design tool and start prototyping. Even if you don't know how to code, there are many no-code and low-code options for making working prototypes of new design ideas. Additionally, generative AI is making it easier than ever before to both learn programming and transform design visions into working prototypes using human language in lieu of code. There's never been an easier or more exciting time to jump into the prototyping process.

Contribute to your company’s design system

Design systems often operate as internal open-source projects and design systems teams are always eager to welcome new contributors. There are many small ways you can contribute to your company's own design system or your favorite open-source design system. File and fix bugs. Write documentation. Learn about the token system. Contribute new components. Get involved!

Work on small UI-focused engineering projects

Are there ways you can lend a hand to production user interface engineering that sit outside of the critical path? If you're an engineer looking to develop your design skills, can you lean on prototyping to build organizational buy-in and push new design ideas into a small part of your product? If you're a designer just starting in programming, are there small parts of the UI you could enhance, fix, or build yourself? Often, the first step toward more autonomy is simply being proactive. Act with more autonomy and more opportunities will naturally come your way.

Design engineering is a nascent field, and we still have a lot to figure out, but one thing is certain: The future for designer-engineer hybrids is bright.

There's never been a better time to explore the path of design engineering. And there's never been a better time to make a home for it in your design organization. Advancements in design tooling and generative AI will only widen the overlap between the design and engineering disciplines, creating more space for those called to venture beyond disciplinary boundaries to define new ways to make an impact. As Adobe's Scott Belsky has noted, these recent technological trends are helping "collapse the talent stack," making multidisciplinary roles both more valuable and more approachable than ever before. Design engineering is a nascent field, and we still have a lot to figure out, but one thing is certain: The future for designer-engineer hybrids is bright.

Header copy
Design your career at Adobe.
Button copy
View all jobs
Button link
/jobs