Despite the lowest unemployment rate in decades, analysts expect technology hiring to continue growing steadily into the 2020s. That’s great news for recent computer science graduates and developers currently working in the field, but that doesn’t mean ambitious engineers can get complacent. While there will likely be growth opportunities in the market overall, there are still significant changes apace and urgency to keep up with the latest trends.
Today, there are more types of technical roles than ever before, and a continued proliferation of new languages, frameworks, and technologies. Technical employees that want to get ahead should routinely test and refine their skills. To that end, I’ve put together the following list of platforms where you can level up your skills for any number of roles, from data science to developer operations.
Coderbyte provides 300+ coding challenges you can solve in an online editor using 10 different programming languages. You can then access official solutions, over 1.5 million user solutions, and read articles on how to efficiently solve the challenges. Coderbyte is recommended by the top coding bootcamps and companies because of its collection of interview prep challenges.
Coderbyte is perfect for people in the beginner-to-intermediate phase of their careers. There is a library of harder challenges as well for those who like to solve coding problems for fun, but this isn’t primarily a site for competitive programmers.
There are a handful of free challenges on Coderbyte, and then there are hundreds of premium challenges and over 1 million user solutions that are available to members.
LeetCode has a collection of some of the best algorithm challenges online today. The topics they cover require knowledge of data structures such as binary trees, heaps, linked lists, etc., which is why their challenges are a bit more advanced than some other websites — but the challenges are great if used when preparing for a software engineering interview.
They also have a Mock Interview section that is specifically for job interview preparation, they host their own coding contests, and they have a great discussion board where people talk about interview questions, jobs, compensation, and other topics related to engineering.
LeetCode is great for intermediate-to-advanced programmers. It might not be the best suited for brand new coders who don’t yet know how to write basic loops for example, but once you learn the fundamentals this is a great site to practice coding.
There are free challenges available on LeetCode, and they also have a premium subscription which gets you access to more challenges and other features of the platform.
Edabit has grown in popularity over the last year, and developers seem to really enjoy the challenges. They offer a large collection of over 4,000 challenges that can be solved online in one of several languages. The site currently only offers online interactive coding challenges — there aren’t any discussion boards, articles, user solutions, or mock interviews like other sites offer, but over time they might be adding some of these.
Edabit is great for beginners looking to practice their coding skills daily by solving bite-sized challenges. Once you reach the intermediate stage, other sites provide harder challenges and more content geared towards competitive programming and job interviews.
All the challenges on Edabit are free, and there is no premium pricing option.
Codewars provides a large collection of coding challenges submitted and edited by their own community. You can solve the challenges directly online in their editor using 20+ programming languages. You can view a discussion for each challenge as well as user solutions. You can earn points and climb the rankings by solving their challenges.
Codewars is great for people in the beginner-to-intermediate phase. The challenges are created by the community so you get exposed to a lot of different types of coding challenges.
They offer all of their challenges created by the community for free, and their premium subscription gets you access to some cool features on their platform.
HackerRank has a large collection of coding challenges tailored towards algorithms and data structures, along with interview prep material, a discussion board for each challenge, and a list of top user solutions. They have challenges for other topics as well like functional programming, AI, Shell, SQL, and more.
HackerRank is great for intermediate-to-advanced programmers who have already picked up the basics of a language and are ready to solve more complicated problems. The challenges are written with mathematical notation and can sometimes be a little confusing, which is why it might not be so great for beginner developers.
All the challenges on HackerRank are free, and there is no premium pricing option.
freeCodeCamp is completely free.
TopCoder is one of the original platforms for competitive programming online. It provides a list of algorithmic challenges from past competitions that you can complete on your own directly online using their code editor. Their popular Single Round Matches are offered a few times per month at a specific time where you compete against others to solve challenges. Here are some topics that their challenges may cover.
Aside from solving challenges for fun online, they offer sponsored competitions where you can win prizes for writing the best solution.
TopCoder is better suited for advanced programmers who are comfortable solving algorithm challenges dealing with advanced topics like graph search and number theory.
All the challenges on TopCoder are free, and there is no premium pricing option.
Codeforces is now probably the top competitive programming website (where a few years ago TopCoder was where most competitive programmers spent their time). There are problems that you can solve online to practice, but there’s no online editor. Rather, you write your solution in your own editor and then upload it to their system which then tests your code against a suite of test cases.
They also frequently hold contests where the best competitive programmers take part in.
Advanced and competitive programmers who truly enjoy solving difficult algorithm challenges.
All the challenges on Codeforces are free, there is no premium pricing option.