Case study 02

A personalized onboarding

Design lead, Discovery team · Codecademy, 2023

Codecademy is an online learning platform where people come to learn coding and tech skills – through interactive lessons, projects and structured learning paths. With over 50M learners worldwide, it’s one of the largest platforms of its kind.

I was the design lead on the Discovery team, whose goal was to help learners find the content that fits them and get started faster.

01 — Where we started

Not every learner is the same

Codecademy serves many different kinds of learners, from students to career switchers to people learning out of curiosity. The previous onboarding experience treated everyone the same, asking learners to navigate a large and growing set of options on their own. For many, that first moment felt overwhelming or left them unsure where to begin.

Empty dashboard for first-time learners, before the redesign
Empty dashboard for first-time learners (Before)

A new learner’s first visit followed four steps. The quiz asked about their goals, but the dashboard they landed on didn’t reflect any of it.

  1. Sign up on Codecademy.com
  2. Welcome screen
  3. Onboarding quiz
  4. New user’s dashboard
02 — Approach

Start with intent

As design lead, my goal was an onboarding experience that understands learners’ intent and quickly guides them to a meaningful first step. Working closely with product, research, curriculum and engineering, I led the research into how learners decide what to learn, and turned those insights into new user flows.

I began by aligning product, curriculum and engineering on one question: what are learners actually trying to accomplish? We turned the answers into a shared jobs-to-be-done framework – a small set of learner goals that every part of the flow maps to. That grounding shaped everything that followed.

From there, I structured the experience around three moments:

  1. 01WelcomeMake learners feel this place is for them
  2. 02UnderstandLearn what brought them here
  3. 03GuideGet them to a meaningful first step fast
03 — The redesign

From hello to first step

I redesigned each of the three moments a new learner moves through, from the first screen after sign-up to the dashboard they land on, and created the illustrations used throughout the flow.

Early pencil sketches for the onboarding illustrations: a winding path to a mountain flag, a code workspace, a figure climbing stairs with a flag, and a target with an arrow
Early sketches for the illustrations
Welcome

A first screen that offers a choice

The first screen sets the tone – a warm, celebratory moment that acknowledges the learner has made a decision and started their learning journey. From there, learners choose how they want to begin: get a custom recommendation, or explore the catalog on their own. Giving them that choice up front respects learners who already know what they want, while offering guidance to those who don’t. Learners who chose to explore went straight to the catalog, so they could start browsing sooner.

Welcome to Codecademy screen offering a custom recommendation or exploring on your own
Understand

A quiz that feels like a conversation

Learners who asked for a recommendation moved into a short, three-step quiz. We refreshed it with clearer questions, new illustrations and motivating data – designed to feel inviting, not interrogative. Each step asks one simple question, starting with what they want to learn about, and a “Choose later” option keeps undecided learners moving. The goal: understand intent while keeping the flow light.

Quiz step 1: What do you want to learn about? Quiz step 2: What do you want to achieve? with a goal-setting stat
Guide

Meeting learners where they land

We tested how and where recommendations should appear, refining language and flow until the experience felt helpful without adding friction. We ultimately surfaced recommendations directly on the empty-state dashboard, meeting learners where they were. When landing on the space where curriculum content would later live, learners were immediately guided to a starting point that matched their interests and experience level.

Personalized dashboard with a welcome banner and recommended courses
04 — Impact

Engagement win

Learners got a more personal, relevant first experience - early engagement improved across the board. Instead of landing on an empty dashboard and searching the catalog alone, new learners arrived at a clear starting point that matched their goals and experience level, making it easier to take that first step and come back for the next one.

Structural win

Built on the jobs-to-be-done framework, the experience gave the team a base to keep improving onboarding over time without starting from scratch. Each part can be tested and refined on its own, and new content or goals can be added without redesigning the flow.

The onboarding experience is still live on Codecademy today :)

More to the story

There’s more to this one – the testing behind the dashboard recommendations, the quiz trade-offs, and how the framework shaped later work. Always happy to chat about it. Get in touch →