Zuyi (Joey) Huang

01 / Apple

8 hours → 1 minute

Redesigned a decade-old manufacturing software platform that supports iPhone, iPad, Mac, and Watch productions.

Manufacturing Systems · Lead Product Designer & Project Owner · 2023
Impact
Before
8 hours
After
1 minute
8 hours → 1 minute
Setup time per change
Thousands of hours
Saved across programs
30+ people
Unblocked per product program
iPhone · Mac · iPad · Watch
Covered by the redesigned process

My scope

I owned the project from problem definition through shipped design.

I worked with:

Beyond designing screens, I defined the problem, aligned teams around a new operating model, designed the key workflows end-to-end, and worked with engineering through implementation.

The Context

Before a new product can be built, every step on the factory line (a station, such as a screw-driving or camera-alignment step) has to be told what to measure and record about each unit: a temperature, a torque, a pass/fail. That list of measurements is the scope. Deciding the scope and getting it onto the machines is the setup. Every design or process change means doing it again.

The brief was to redesign a tool.

The workflow for this had been built around processes from almost a decade earlier. As the organisation changed, teams compensated by hand: scope moved through spreadsheets and messages, responsibility shifted between people, and every change could trigger hours of setup.

I interviewed the project, measurement-system and operations teams, mapped the workflow end-to-end, and clustered every finding bottom-up before touching the interface.

The workflow mapped end-to-end. Shown at a scale where the content is deliberately unreadable — phases, roles and internal terminology are under NDA.

The real problems

The software was only the visible part of the problem. Three things were creating the eight hours:

01
Decisions had no stable owner
Responsibility moved between teams and programs. People kept rediscovering who could decide, and knowledge left with each handover.
02
Scope was inherited, not decided
Each program copied the last one's list of measurements, because changing it meant aligning too many people with no way to judge what still mattered. Scope only grew, and a scope that differed from build to build had no way to be expressed.
03
The two systems disagreed, so people reconciled them by hand
Station lists, codes and status definitions had to be aligned manually across sites and between the measurement system and the production system, which described the same part differently. Checking was split across teams with no shared record of the gaps.

That changed the project. Instead of redesigning one interface, I redesigned decision ownership, the workflow model, and the software connecting them.

Final design
Insight 01 -> Solution 01

The problem wasn't slow setup. It was unresolved ownership upstream.

Much of the eight hours existed because teams were reconciling decisions that should already have been made. The owner role rotated, and people couldn't see how their work connected to any outcome.

The product decision
Don't automate the old workflow. Fix decision ownership first. An unresolved item can never exist without an explicit owner.
Final design
Every open decision carries three things: what is blocked, why, and who owns the next decision. The next action is visible inside the workflow, not hidden in messages and spreadsheets.

Open decisions appear above completed work. Each blocker carries its reason and owner inline.

Insight 02 -> Solution 02

Scope had never been a decision. It had to become one.

There was no place where scope was actually decided. The project team asked for measurements against the fear of future problems; the measurement-system team had no way to show whether anything collected was ever used. Scope only grew.

A stage was also treated as either approved or blocked, when in practice it might hold ten feasible measurements and one unresolved one, and the answer differed by build. Waiting for full approval stopped work that could safely move forward.

The product decision
Make scope an explicit decision per build, and make partial feasibility a first-class state (feasible meaning the equipment can actually take that measurement). Every item in scope exists because someone confirmed it for this build, not because it was copied.
Final design
A stage can move forward while individual measurements stay excluded or blocked. The system keeps exactly what was approved, what wasn't, and why.
Instead of
Approved / Not approved
Now
Confirmed · Partially feasible · Needs decision

Stage A proceeds to Phase 1 while Temperature stays excluded because the equipment isn't available.

Insight 03 -> Solution 03

A faster handoff wasn't enough. The handoff shouldn't exist manually.

Even with ownership and approval clear, operations still had to turn decisions into machine setup by hand: aligning station lists, codes and parameters across sites and between the two systems. That's where the remaining work and most errors lived: records that failed to load, and two systems reporting different yield numbers.

The product decision
Generate the setup from the decisions already in the system. Once confirmed scope existed as structured data, it could drive the machine setup directly.
Final design
Review confirmed scope → publish → setup generated. The system became the source of truth rather than another place to update.

Confirmed stages publish in one action; unresolved stages stay visible and don't block feasible work.

This is what collapsed the workflow from eight hours to one minute.

What I designed

Designing the interaction model

The three insights became one product model:

  1. Decision enters the system
  2. Owner and blocker are explicit
  3. Feasibility is resolved per measurement
  4. Confirmed scope moves forward independently
  5. System generates the setup
  6. Future changes update the same source of truth
From
documents + handoffs + manual reconciliation
To
states + ownership + structured decisions

Designing the transformation

The project touched teams outside my organisation and challenged a ten-year-old workflow. One of the biggest challenge was moving the organisation toward it without slowing delivery. I did the following 2 things to make it deliver.

Every week: something concrete
With engineering, I broke the future workflow into increments that could be reviewed every week, so a systems redesign never became a strategy exercise with no visible progress.
Let stakeholders experience the future
For the larger changes, I built low-fidelity end-to-end prototypes and walked stakeholders through what their work would feel like, surfacing objections and constraints before they became expensive engineering changes. Get early buy in as possible.

Designed one shared system that surfaces decisions, blockers and progress

Scope approval used to travel through spreadsheets, threads and multiple teams before setup could begin. Now open decisions, owners, blockers, partial feasibility and confirmed scope live in one shared system, which largely improves operational efficiency and avoid manual mistakes.

01
Surface decisions unmade
Users could now jump directly to where problems need to be solved.
02
Clear feasibility
Approve what's possible; explicitly exclude what isn't.
03
No more delayed on confirmed scope
Approved scope becomes the machine setup immediately, without being rebuilt by hand and waited for more communication.

The tool stopped documenting the process. It became the process. And people love it!