close icon
daily.dev platform

Discover more from daily.dev

Personalized news feed, dev communities and search, much better than what’s out there. Maybe ;)

Start reading - Free forever
Continue reading >

Top 5 Coding Challenge Websites Ranked by Data

Top 5 Coding Challenge Websites Ranked by Data
Author
Nimrod Kramer
Related tags on daily.dev
toc
Table of contents
arrow-down

🎯

Participating in coding challenges is an excellent way to refresh your memory of basic and advanced concepts before seeking a new job, preparing for a job interview, etc. I believe that’s the first thing we think about when the coding contests come to mind. However, you might find it interesting (or not) that many programmers actually love participating in such challenges just for fun. Yes, you read it right, and it has a name -- competitive programming!

Obviously, if you're looking to learn new concepts for different programming languages, you can always go with tutorials or coding bootcamps. Anyway, in my opinion, trying out a programming competition or an algorithmic challenge gets the adrenalin levels higher than other alternatives.

Did you come here just for the list?

Here you go:

  1. LeetCode - Wins 1st place! 🥇
  2. HackerRank - Wins 2nd place! 🥈
  3. CodeChef - Co-wins 3rd place! 🥉
  4. CodeWars - Co-wins 3rd place! 🥉
  5. CodinGame
  6. Others... See below

However, if you'd like to understand better how they are ranked and what makes each site better, keep reading :)

If you're new to programming, you may want to check out this post about The Best Coding Challenges Websites For Beginners.

Coding Challenges are fun!

I totally get why coding challenges can be addictive. Programmers challenge themselves with complex coding tasks because people love to challenge themselves with completing a 10,000-pieces puzzle or building extraordinary structures using Lego. It goes down to our very essential human nature. We all love rewards as it helps us feel better, both physically and mentally. Completing a challenge can be very rewarding in that sense.

meme about programming

It doesn’t matter if you’re here because you’re looking to sharpen your skills as part of a job hunt, or you feel that you need to challenge yourself. I decided to make this list of the most useful competitive programming websites for everyone in need!

Before we jump in, I want to mention that there is more than one way to become a better developer and learn new things. For many of my friends, I know that the first steps were nothing related to coding challenges. In fact, I've seen them using sites like freeCodeCamp and several YouTube channels to get started. So let's keep it in mind while we dive into coding challenges.

What is different about this post?

When I researched the best coding challenges website to prepare this post, I saw that it consumes tons of time and energy to pick the right ones. Why? Because for several of those, you need to register, or it just takes time to explore how it works and how the content was curated. That inspired me to find an alternative way to rank the coding challenge websites and tools so that you can save your time!

Another thing is that I DO NOT work for any of the companies mentioned in this post! I hope it helps put the bias concerns away. I am simply doing my best here to provide you with clean data to make an educated choice.

How did I rank the websites?

At first, I thought about using some pretty complex SEO tools to measure how those sites rank for different keywords. I decided to drop it relatively quickly since I thought it would show how good they are at SEO, which has nothing to do with the quality of the programming challenges they have to offer. I also thought about aggregating feedback from around the web to rank it.

Eventually, I realized that the most important factor is whether people actually use those sites or not. It’s a combination of their content and user experience. Without these two, it’s safe to assume that users won’t keep coming back for more. What could be better than going simple and check how much traffic those sites get?

I chose SimilarWeb for this job since they can give a standardized traffic estimation for free. Then I decided to rank the sites according to those parameters (prioritized):

  1. Monthly visits: indicates just how many people visit their site.
  2. Avg. Session duration: indicates if those visits are meaningful. Usually, if a person would start a coding challenge, it would take them some time. It can provide an insight into the content quality.
  3. Pages per session: pretty much indicates the same things as the average session duration.
  4. Bounce rate: can give a proper indication of the user experience quality. Usually, sites that have a poor bounce rate (close to 100%) mean that they aren’t so good in the value they give to the user.

Coding challenge websites ranked by data

Here's the list for those of you who want to get the bottom line without having to read my complete analysis:

  1. LeetCode - Wins 1st place! 🥇
  2. HackerRank - Wins 2nd place! 🥈
  3. CodeChef - Co-wins 3rd place! 🥉
  4. CodeWars - Co-wins 3rd place! 🥉
  5. CodinGame

1. LeetCode 🥇

leetcode website traffic data

LeetCode's official mission statement is to help you improve yourself and land your dream job. LeetCode is one of the most well-known online platforms that you can use to sharpen your programming skills by solving coding questions using an online editor. It has over 1,800 different challenges, supporting over 14 programming languages, including C++, C#, C, Java, JavaScript, Python,  Ruby, and more.

If you're looking to get additional help in job interview preparations, you may want to know that LeetCode also offers a Mock Interview feature. On top of that, I liked that LeetCode has an active community that is always there to help you.

Looking at the data, LeetCode is by far the most popular website for coding challenges in 2021. It can be clearly seen that LeetCode is leading in all four metrics. If I had to choose a place to start, I would definitely start by giving them a chance.

At this point, I'd like to recommend you is visit their website and experiment with the online code editor (obviously, it's a much-simplified version of an IDE that is used to solve a particular challenge). You'll get the concept pretty fast.

2. HackerRank 🥈

hackerrank website traffic data

HackerRank is describing itself as a technology hiring platform that is based on assessing developer skills. Indeed they seem to be massive as HackerRank is working with over 2,000+ companies worldwide, helping them hire programmers. So if you're looking for a job, HackerRank is definitely a wise choice for you.

HackerRank seems like a very nice place where developers worldwide solve problems in a wide range of Computer Science domains. No wonder that they get such immense traction from the developers' community.

3. CodeChef 🥉

codechef website traffic data

CodeChef is more of an old-school coding challenge platform. It started in 2009 with a vision to help programmers make it big in the world of algorithms, computer programming, and programming contests. CodeChef hosts three featured contests every month and provides cool giveaways to the winners as motivation and sometimes even cash prizes.

4. CodeWars 🥉

codewars website traffic data

If you read the post all the way through here, you should already be familiar with the concept of coding competitions or competitive programming. So CodeWars does exactly this but with a unique twist. What I loved about CodeWars is that creating the challenges is a collective effort done by its users. Their community members are creators - authoring kata to teach various techniques, solving kata with solutions that enlighten others, and commenting with constructive feedback. The leaders among the creators moderate the content and community. That's sweet!

5. CodinGame

codingame website traffic data

CodinGame is surely a platform to check out since they are just cool. I really loved their gamified approach to things, making the whole experience fun and playful. Especially appearing on their leaderboard seems to be super cool. Their mission is to let programmers improve their coding skills by solving the World's most challenging problems, learning new concepts, and getting inspired by the best developers. That's an ambitious claim to fame, but I'm sure that these guys can deliver it!

Other platforms worth mentioning:

These coding challenge websites didn't qualify to the top 5 in terms of their traffic. However, I do think they deserve mention:

Codeforces

Codeforces is a website that hosts competitive programming contests. It is maintained by a group of competitive programmers from ITMO University led by Mikhail Mirzayanov.

Topcoder

Topcoder is a crowdsourcing company with an open global community of designers, developers, data scientists, and competitive programmers. Topcoder organizes the annual Topcoder Open tournament and a series of smaller regional events for developers.

Project Euler

Project Euler is a website dedicated to a series of computational problems intended to be solved with computer programs. The project attracts adults and students interested in mathematics and computer programming. Since its creation in 2001 by Colin Hughes, Project Euler has gained notability and popularity worldwide.

Exercism

Exercism is an online, open-source, free coding platform that offers code practice and mentorship on 50 different programming languages.

Coderbyte

Coderbyte is a web application built to help you practice programming and improve your coding skills. They offer a collection of code challenges and web development courses that can help you prepare for upcoming job interviews. The coding challenges range in difficulty, and they can all be completed straight in their online editor.

Codesignal

CodeSignal is a skills-based assessment platform operated by BrainFights, whose mission is to discover, develop and promote technical talent.

Edabit

Most beginners jump from memorizing syntax directly into making stuff (or trying) without fully understanding how syntax is used to solve problems. In other words, they haven't learned how to think like a programmer, yet they're trying to solve problems like a programmer. Edabit was created to bridge this gap, while also making the process fun and addictive.

HackerEarth

HackerEarth is used by organizations for technical skill assessment and remote video interviewing. It will give you what they called "HackerEarth rating". It's essentially a score that is assigned to an individual based on his or her performance versus other users on a rated contest. These ratings are computed only for the rated contests that HackerEarth organizes.

Sphere Online Judge or SPOJ

SPOJ is an online judge system with over 20,000 problems. Tasks are prepared by their community of problem setters or are taken from previous programming contests.

What can you achieve by participating in coding challenges?

Learn a new programming language

It's not always necessary to learn a new programming language. Most software developers would usually recommend doing so only when it is needed. However, sometimes just learning is a good-enough reason. For example, you start learning a second language almost at the same time as the first one. HTML, CSS, JavaScript, and Java often go together. Additionally, some things can help across many domains, like learning SQL.

Learning a new programming language will also give you a bigger perspective of the programming domain. Like any other domain, having a broad understanding is often helpful and gives you an extra edge in your projects or career. So let's say you used to focus on frontend or web development. You might want to start experimenting in machine learning or other fields of data science. In such a case, you may want to learn python or R as well.

Learn fundamental concepts in computer science

Many software developers who go through an interview preparation process realize that algorithms and data structures are basically the foundation of everything, even though you'll probably never write one of your own once you're past the beginner stage. Knowing them, or at least having known them, will make you a better developer in the end.

Another common example is functional programming. It's a coding style that emphasizes immutable data, functional primitives, and avoidance of state. Functional programming has historically been less popular than imperative programming. Still, many functional languages are seeing use today in industry and education, including Common Lisp, Scheme, Clojure, Wolfram Language, Racket, Erlang, Elixir, OCaml, Haskell, and F#. Even if you don't work in a functional language, the solutions offered by the functional way of thinking can help you sharpen your problem-solving skills and better understand the world of computing.

Improving your online presence on GitHub

GitHub is your face as a developer. It's the best representation of your skills to the outer world. Some developers would even argue that it's more important than your CV. You can show your knowledge, clear your code, and collaborate capacity with other developers. Using your GitHub profile to apply to jobs is common with many employers in big tech companies such as Google, Microsoft, Amazon, Facebook, and more. Many things in GitHub are measured over time. So even if you're not actively seeking a role as a developer, you should still be maximizing your GitHub account.

Wrap up

Coding challenges websites provide a cool way to learn new things, sharpen your skills, and even have fun. For hardcore devs, it can even be a way to gain eternal glory!

This article covered the biggest competitive programming platforms based on the traffic they receive around the world. However, it's important to keep in mind that a particular site that gets a lot of traffic doesn't necessarily say it's the best out there. So make sure to check them out and make the smartest choice that's best for you.

Why not level up your reading with

Stay up-to-date with the latest developer news every time you open a new tab.

Read more