There are a plethora of websites where you can practice Data Structures and Algorithms questions. Even though there are a lot of choices, beginners might have a difficult time choosing one.
Why? Because the majority of these websites are tailored to experienced developers. They feel overwhelming, and it feels like there is no support for you.
I used to jump between LeetCode, HackerRank, and other websites, trying to find "the one." Thus, in this article, I want to list the best coding challenges for code newbies. Let us see what these websites are.
Arguably, Exercism is one of the best coding challenges websites for beginners. The main reason is that they provide a mentor for you. That is, each time you submit a challenge, a mentor checks it for you, and it approves it or suggests changes. Only when they approve your solution you can move forward to the next one.
Having a mentor is incredibly valuable, and you progress faster. A mentor can guide you and tell you how and where to improve. It is something that helps you tremendously.
Besides that, another plus is that you code the solution on your laptop. You download a template, solve the problem, and then you upload it using their CLI. Therefore, you feel more comfortable using your favorite IDE and tools.
Lastly, they have 3414 exercises, and you can choose between 51 programming languages. As a result, you have plenty of problems to solve.
In conclusion, Exercism is an excellent platform for beginners for the fact that you have mentors. You are less likely to give up, and you progress faster.
Another website is Coderbyte, which has more than 200 coding challenges. Moreover, you can choose to solve the coding challenges in ten programming languages.
The outstanding feature of this website is that you can see other people's solutions. That means you can compare your answer to others, and hopefully learn something. Besides that, there is also an official solution for almost every challenge. If you get stuck on a problem, you can always inspire from the official answer.
What I liked the most about Coderbyte is that the difficulty level slowly builds up. Unlike other websites, where even the easy questions are difficult. That makes it an excellent choice for beginners because they are slowly building their confidence by solving easier challenges. As a result, they are less likely to give up.
Thus, I highly recommend Coderbyte. When I prepared for my job interviews, I used Coderbyte alongside Exercism. They are a great combo.
Codewars is another platform tailored for beginners to intermediate developers. As with other similar platforms, you solve programming challenges, which they call "katas." You solve the katas in the browser and use TDD test cases to check your solutions.
Each time you complete a kata, you progress through the ranks and get more difficult challenges. Moreover, you can create new coding challenges and submit them to Codewars. That means other people can solve your challenge. In fact, that is how the website works. People create katas, they submit it, and other users solve them.
Besides that, each kata has a discussion area where people can collaborate or discuss the challenge. You can get help or help other people. It is a useful feature when you want to see different solutions or when you get stuck. Therefore, I highly recommend Codewars. It is a fun and engaging platform to test your knowledge.
HackerRank is a popular website, and for a good reason. On HackerRank, you can practice:
- Data Structures
- Linux Shell
Moreover, many companies use HackerRank for their technical interviews. Thus, familiarizing yourself with the platform can be a big bonus. However, one of the coolest features is that you can apply to jobs by solving challenges from various companies.
Therefore, HackerRank is a great website to practice Data Structures, Algorithms, and much more. You can also get React, Angular, Python, and other certificates, making you stand out from a pool of candidates. Again, once you get more experience, try solving the challenges from the various companies, and you might get lucky!
Experiment with the websites, and see which one works for you. If you are a code newbie, I would recommend starting with Exercism, then Coderbyte, and other popular websites like HackerRank and LeetCode.
The coding challenge websites are: