Software Engineer - Generative UI, Input Experience
Summary
Builds the SwiftUI views, layouts, and component APIs that Apple's generative UI system is assembled from, designing them so both engineers and AI models can produce native-feeling interfaces. Day to day: prototyping with designers, finding the right API abstractions, and refining them based on how models use them.
A generated interface is only as good as the pieces it's made from. Give a model the wrong pieces and it fails, producing something generic or broken. Give it the right ones and it can make something a designer would be proud of.
We're looking for an engineer with a designer's eye to build those pieces: the views, layouts, and APIs that generated interfaces are built from. The goal is to make the right result the easy one to write, for people and models.
You'll join a small, newly formed team working closely with Apple's design studio, and you'll own the UI layer that generative interfaces are built on. Your APIs will have two kinds of users: engineers, and the models generating interfaces in real time. Most of the work is finding the right abstraction. Which layout decisions should a view make by itself? Which should be stated as intent? Which should never be exposed at all? An API that answers those questions well lets a model write a few lines and get something that feels native.
The hard cases are the ones designers usually solve by hand: tight space, many sizes, content whose length and shape aren't known until it arrives. You'll build components that handle them without anyone drawing each one.
With designers, you'll prototype quickly until something feels right, then turn it into a principled, well-named API with a small surface. With the generation side, you'll study how models use your APIs and change them until good results are the default. Along the way you'll partner with design, AI, and UI framework teams across Apple.
Minimum Qualifications
- 5+ years of software engineering experience
- Bachelor's degree in Computer Science or equivalent experience
- Expert-level SwiftUI, including custom Layout and preferences, with a deep understanding of its layout model
- Designed and shipped a reusable view or component API that other engineers adopted
- A portfolio, shipped work, or prototypes that show strong visual craft, especially typography and layout
- Comfortable working directly with designers, from early ambiguous exploration through to a pixel-exact result
Preferred Qualifications
- Experience designing framework API: naming, progressive disclosure, defaults
- Experience building adaptive layouts that stay correct with content that isn't known ahead of time
- Deep knowledge of Dynamic Type, accessibility, localization, and right-to-left layout
- Experience building or maintaining a design system or component library used across many product teams
- Experience designing APIs or schemas that a model generates against
