Thinkful: new user onboarding

Online education platform for becoming a developer
This project was one big problem; we wanted our students to have a clear understanding of what they should do once they entered the app for the first time.


The problem

Although most students were doing great some were falling through the cracks in progress and not utilizing the tools and resources we were providing them. The first experience of the app was manual, impersonal and uninspiring.


The goal

When a new student signs up for Thinkful’s Web Development Career Path, the student will need to provide us with information that will let us match them with the best mentor for them (personal and human). We also want the students to feel confident about starting their learning journey with us by utilizing all the available resources to them (confidence boosting).


The discovery process

User mindset

I am here to learn; let me pay for this course so that I can start learning!


Heuristic evaluation of current onboarding state

Get to ... click sign up > create account > pay for the account > (Emails go out: welcome email, slack invite email, email from program manager) > fill out availability > answer questions about your past development experience > welcome page > dashboard > ...

If you take a look at the dashboard’s annotations you can see that there are two things that fit a user’s mindset, which is to learn. All of the other tasks or links were placed there with a purpose but they got in the way of what a user came here to do on their first day. Not to mention that the tasks students were seeking to do were not prominent at all. 


User Interviews

I’ve conducted interviews with three different types of people in order to best understand the needs of the students and how to satisfy them. I spoke with almost 30 people in the course of two weeks.

  1. Program Manager - Someone who understands the students' career goals and helps them achieve it, sort of like a counselor.
    1. The main point of the interviews was to understand their impression of the difference between a successful student, average student and a failing student.
  2. Mentors - In the Career Path program, the students met with their mentor for an hour, 3 times a week. A mentor is there to help the student understand the curriculum, keeps the student accountable and helps them with problems as they work.
    1. The main point of speaking with the mentors was to find out what they do in order to help struggling students whether the student is struggling with a single problem for a few hours to struggling with the course in general for a few weeks at a time.
  3. Students - I interviewed students who fell into three different categories: those who were in the course for a week or less, those who were in the course for a month or two and those were in the progress of graduating from the course altogether.
    1. I interviewed the students who just started to figure out what their expectations were for the course as well as what their impression of the onboarding process were since they just went through it. I was curious to see what they envisioned the future would be like.
    2. I interviewed students who were a couple of months into the course to get a better understanding of how things were working out so far. Did they have any complaints? What were they happy about? What frustrated them the most? How did they used certain features available to them? Did they understand what was expected of them in order to be job ready?
    3. Lastly, I interviewed students who were in the process of graduating, meaning either just finished the curriculum and were starting the process of looking for work or were just about to finish the curriculum. I wanted to know how they got to this point. What obstacles did they face, if any? What did they do when they were struggling? What did they wish they knew when they first started?
    4. Additionally, I wanted to know what motivated each group of students and how this motivation may shift over time as student's progress through the course.

The insights

We defined success at Thinkful as someone who went through the course and was job ready. There was a clear distinction between students who succeeded easily and those who didn’t - whether or not they struggled with the course itself.

Thanks to user interviews with the students, I also found out that most of the features offered were trivial as it all depended on the student’s learning styles. It’s great that we offered those features, such a group workshops, but they shouldn’t have been forced upon the students as some might not care for them.

Three things were detrimental. First, knowing that there was a support group of mentors and other students available 24/7 via Slack was important. Meeting the Program Manager helped in knowing that the student was not alone when something went wrong. Lastly, getting matched with the right mentor made all the difference in their experience at Thinkful.


Project requirements

With all the information we had, we finalized our list of project requirements to the following:

  • If a student didn’t fill something out in the onboarding process they cannot proceed to the dashboard until they do. They can access setting if they need to contact support.

  • Keep availability.

  • Keep but clean up the current forms for filling the profile questions.

    • Settings need to reflect the cleaned up questions so that they can easily be updated in the future in case student needs to change a mentor (For instance, because their schedule is different or their current mentor does not know the framework they are looking to learn).

  • Include a call out for signing up for the student Slack channel.

  • Add scheduling a call with the student’s assigned Program Manager.

  • Clean up the dashboard of, now, redundant tasks.


Designs and iterations

One of the very first things we realized is that the onboarding process will have to be its own separate process outside of the dashboard. Specifically, between the student having signed up for the course and having started it. While working on the designs we also rearranged a few steps to make it friendlier. Most notably, we put the Program Manager first in the onboarding steps and eventually added a photo too. The availability grid had to be redesigned and rewritten because it was not mobile friendly too.


Final user flow

Get to Thinkful ... click sign up > Create account > Pay for the account > (Emails go out (Welcome to Thinkful and Slack invitation)) > Schedule a call with Program Manager > Set availability > Fill out student profile > Sign up for Slack > Success popup > Redirect to dashboard > ...


Delivered designs



After the project has been developed by engineering, I conducted usability test for at least two days to make sure everything was up to snuff. It was important that the project not be shipped in less than ideal state. After all, this was a brand new first impression a new student would have. It would be a shame to disappoint if something went wrong, like a broken link.


Projects results

Since shipping this onboarding process Thinkful saw a drastic increase in trial rate completions immediately. Thinkful offers a one week trial on its courses and the trial completion rate increased 20% for Web Development Career Path. Further testing such as AB tests or more user interview could tell how to further improve that rate.



Would you like us to get started on your project?