This is a case study based on leetcode.com, a popular online coding platform. My main goal is to get a summarized understanding of the pain points that Leetcode users are facing right now and try to propose possible fixes for the existing problems.

My role

UX researcher, Product designer

Project duration

May 19 — June 1, 2 weeks

Project Type

Individual project


Aout Leetcode

Leetcode is the world-leading online programming platform where people can practice solving coding problems and prepare themselves for technical interviews.
Leetcode operates under a subscription business model ($35 for one month to unlock more problems).
  • Launched in 2015, leetcode has shown its success by becoming the first step of becoming a software engineer.
  • Currently, it have about 20,000,000 visits last month ( April 2022).
  • According to its own website, it has over 5,000,000 registered users now.

Who are our users?

After checking profiles of top-ranking users and searching blogs including “Leetcode” on google, I found out that the users are very specific — software engineers or who want to become a software engineers. 


Basically, user cases can be divided into two subgroups:

  • People preparing for technical interviews. They are intensively using Leetcode for 1–3 months, several hours per day.

  • People learning algorithms and data structures. E.g. CS students. They have a habit of solving problems every day, 1 hour or less per day

Key tasks:
  • Find a problem: filter and search on the problems page/open daily challenge/open problems saved in lists /following a study plan /links outside the website.

  • Solve a problem: code on editor page →run test cases to debug →submit the solution →check the solution and discuss the page of the problem

  • Join a contest: register →participant on time → and get the result

  • Check discuss page

Why redesign Leetcode?

As a CS student, I have been using Leetcode for years. Although the overall experience is fluent, there are times when I was confused about the website. 
For example, when I finished redeeming time tickets with Leetcode coins, it took me a while to find where to use it -  actually, I found out by asking google. 
And after checking the post titled "User feedback for new UI", I found a lot of users are struggling with some points of the website as well.

Desk Research

I collected the top 60 voted posts (4 pages) under the tab "Leetcode feedbacks" and 50 pages of comments inside the post titled "Feedback for new UI". 
After filtering out some non-content posts, I got 70 user comments in a spreadsheet and summarized the with affinity diagramming.