Design Engineering Function

People who can design, build, and ship complete prototypes—enabling innovation at scale

Gaurav Misra
Mastering onboarding | Gaurav Misra

Design Engineering Function

"I eventually joined the design team over the last two years that I was at Snap. And a big part of what I did there was create this function called design engineering. That was the designer engineer—the person who can think of the UX, design it, and also build it and launch it, all of those things." - Gaurav Misra

What It Is

A hybrid role combining design and engineering skills in single individuals who can take an idea from concept through working prototype without handoffs. Design engineers can conceptualize user experiences, create the visual design, write the code, and ship testable products.

This function emerged at Snap to solve a specific problem: as companies scale, everything becomes a large, cross-functional project. Design engineers bypass this by enabling rapid prototyping that can be tested in production before committing large teams.

How It Works

The scaling problem this solves:

"As the company got bigger and bigger... suddenly it just becomes very difficult to do everything. Everything is a six-month project or a one-year project. Every product is a massive investment of 500 engineers and a lot of time."

The design engineering approach:

  1. Small team of design engineers (often single individuals)
  2. Can prototype complete user experiences independently
  3. Prototypes are embedded in actual production app
  4. Real user testing happens (e.g., "run a test in Australia, see how it's performing")
  5. Data validates whether to invest full engineering resources

Building the function both ways:

"We saw both the ability to take designers and teach them engineering and take engineers and teach them design as part of that."

Neither background is inherently better—what matters is the hybrid capability.

Why it enables innovation: Without design engineering, you must commit significant resources before learning if an idea works. With design engineering, you test with real users first:

"We already have data on how this might perform in a real world environment, but we haven't built it to production level. It's a prototype, essentially. It's how a startup might build something."

How to Apply It

  1. Create the hybrid role explicitly - Don't assume existing designers or engineers will naturally develop both skill sets

  2. Hire or train for both directions - Some designers learn to code, some engineers learn to design. Both paths work

  3. Embed prototypes in real products - The power comes from testing with actual users in production contexts, not just internal demos

  4. Use geographic segmentation for testing - Run tests in specific markets or user segments to get real data without full rollout

  5. Pair with traditional engineering for scale - Design engineers validate; full engineering teams build production-ready versions: "Once we understand the product and the dynamics, then it makes sense to put on 500 engineers for six months to build it"

  6. Keep the team small - The value is in speed and autonomy, which degrades as the team grows

When to Use It

Design engineering is valuable when:

  • You need to validate ideas before making large investments
  • Traditional development cycles are too slow for the pace of change
  • You want to test multiple ideas in parallel
  • User experience is a primary differentiator
  • You have access to production environments for testing

It's harder to implement when:

  • The hybrid skill set is too rare in your market
  • Your product requires deep infrastructure before any UI work
  • Regulatory requirements prevent prototype testing
  • The company culture separates design and engineering strictly

Source

  • Guest: Gaurav Misra
  • Episode: "Mastering onboarding | Gaurav Misra"
  • Key Discussion: (00:44:03 - 00:46:30) - Creation and operation of the design engineering function at Snap
  • YouTube: Watch on YouTube

Related Frameworks