UI engineering

A branch of software engineering, specialising in designing and writing code that runs on the end-user's phone or device. This may include but is not limited to:

This is in contrast to back-end engineering.

Common mistakes

Layout shift: Moving UI elements after displaying them. Causes great distress to users who may begin to interact with an element which then moves, causing errors and reducing user trust in the UI. Can be caused by images loading, and also UI elements changing size.

https://news.ycombinator.com/item?id=33765399

Foundational Skills

In addition to skills common to all software engineers, UI engineers should know:

Split between Front and Back

As of around 2015, front end engineering had grown large and complex enough to warrant splitting loosely into two sections: front of the front-end, and back of the front-end.

It is generally agreed this split exists, but it is not universally agreed what skills exist in each. Some guesses include

Front Either way Back
Accessibility, CSS, SVG CORS, routing, TypeScript CORS, UI data model
For those as the Front, UI pattern

Advanced skills

Updated on 2025 August 1.