Design practice

End-to-End Feature Design

Research, design, prototype, and spec a feature from scratch

01 / Prepare

What you’ll
work on.

Design a feature end-to-end through the full product design lifecycle: discovery research, problem definition, ideation, UI design, prototyping, usability testing, and developer handoff spec. This is the capstone exercise for the Product Design path and produces portfolio-ready work.

Before you begin

  • Basic experience with user research, wireframing, and prototyping
  • Figma proficiency (components, prototyping, dev mode)
  • Access to 3–5 people for research and testing

02 / Practice

The work,
step by step.

Work through these 5 parts at your own pace. Keep your notes and work together so you can review them when you finish.

  1. Discovery

    3–4 hours

    1. Choose a product you use — Pick one with a feature gap or pain point you have experienced.

    2. Conduct 3 user interviews — Find others who use the product. Focus on behaviors and frustrations, not feature requests.

    3. Review analytics or public data — App store reviews, Reddit threads, competitor features.

    4. Synthesize — Affinity mapping, identify top 3 pain points.

    5. Write a problem statement — "[Users] need [a way to X] because [reason], but [barrier]."

  2. Definition

    2 hours

    1. Define success metrics — What would improvement look like? (Task completion, time, satisfaction)

    2. Map the current user flow — How do users accomplish this today?

    3. Define constraints — Technical, business, or design constraints to work within.

    4. Write a design brief — Problem, users, success criteria, constraints, scope.

  3. Design

    4–5 hours

    1. Sketch 3 different approaches — Quick pen-and-paper or low-fi Figma.

    2. Evaluate against criteria — Which approach best addresses the problem within constraints?

    3. Wireframe the chosen direction — Mid-fidelity, focused on flow and hierarchy.

    4. Build high-fidelity screens — Using systematic components and tokens.

    5. Design all states — Default, loading, empty, error, edge cases.

    6. Create a clickable prototype — Key flow, 5–8 screens.

  4. Test

    2–3 hours

    1. Run 3 usability tests — Task-based, think-aloud protocol.

    2. Document findings — Task success, confusion points, severity ratings.

    3. Iterate — 2–3 design improvements based on test results.

  5. Spec and Handoff

    2 hours

    1. Component spec — For one key component: props, states, spacing, tokens, responsive behavior.

    2. Flow documentation — Annotated screens showing transitions and logic.

    3. Accessibility notes — Focus order, ARIA requirements, contrast verification.

    4. Edge case documentation — What happens with long text, missing data, network errors.

03 / Review

Look at what
you’ve made.

Gather your deliverables, then use the criteria to find what worked and what you would change. They also give a peer something specific to respond to.

What to bring together

  • Research synthesis (affinity map, problem statement)
  • Design brief with success metrics
  • 3 sketch explorations with evaluation notes
  • High-fidelity Figma prototype (5–8 screens, all states)
  • Usability test results and iteration notes
  • Developer handoff spec (component spec, flow doc, accessibility notes)

How to assess your work

Research grounding
Design decisions traceable to user research
Problem clarity
Specific, scoped problem statement with success metrics
Design range
Multiple approaches explored before converging
State coverage
All states designed, including error and edge cases
Testing rigor
Real users, real tasks, honest findings
Handoff quality
Spec is specific enough for a developer to implement without questions

Choose your
next exercise.

Browse all exercises