Why We Hire UI Engineers on Optimizely’s Design Team

A key role on Optimizely’s Design team is the UI Engineer. They turn designs into functional HTML, CSS, and Javascript. This structure is not common, and I often get asked why this role is on Design instead of engineering. The reason is that they have the same goal as the Design team: to create great customer experiences.

Designers create great customer experiences by designing the user flows, wireframes, layouts, visual design, and more. These artifacts communicate the design’s intent, but they aren’t what our customers actually use. Our customers interact with HTML, CSS, and Javascript. In other words, frontend code is the design. Therefore, the people writing it need to care about the quality of the final design as much as the designers do. Hiring UI Engineers on the Design team ensures the final product is high quality and works exactly as our designers intended.

The engineering team, on the other hand, is focused on writing clean, maintainable, testable, performant, and scalable code. When push comes to shove, they’ll prioritize these goals over making the UI flawless. And for the engineering team, that’s the right tradeoff. Ensuring our systems are bug-free, scalable, and fast is a full-time concern and critical to a successful product.

But for the Design team, that tradeoff is wrong. To truly achieve our mission, we need the people building the UI to care just as much about the final design as the designers. UI Engineers understand the importance of moving a button 3 pixels to the left, and tweaking an animation’s timing until it’s just right. They care about the details, and take the time to get them right. In short, they have an eye for design.

By having this tight alignment between the people building the interfaces and the people designing the interfaces, we can ship amazing experiences to our customers. And if that’s your Design team’s goal, then you should hire UI Engineers on your team, too.

Related Articles