Coding problems with auto-checking: over 2200 tasks

A coding trainer in the browser, from your first program at school to a job interview. Pick a task, write a solution in the editor, and tests show at once where it fails. There are hints, goal-based collections and a plan built around the topics you get stuck on. No sign-up needed to start.

Start practicingFree. Start without signing in; an account keeps progress across devices and unlocks levels.

Why solve coding problems

People learn to program by solving problems. You can read a chapter on loops or hash maps, but it clicks when you write the code yourself and see which input breaks it. That is why coding problems help at every stage: at school, at university, before an internship screening and before a job interview.

A plain problem set gives you only the statement. Here every task has tests: your solution is checked at once, with no teacher and no setup. When a test fails, you see the input and the expected answer. You find the bug yourself and remember it better than a ready-made walkthrough.

How to practice: start with the easy tasks of your topic. When three in a row pass without hints, move on to medium ones. If you are stuck for more than twenty minutes, open a hint rather than someone else's solution: that way the task still trains you. A day or two later, come back to a task you got wrong and solve it again from a blank editor. One or two tasks every day do more than ten in one evening a week: the skill stays with repetition. Before an exam or an interview speed matters too, so time yourself and aim to solve a medium task in twenty to thirty minutes.

Tasks for where you are

  • School

    First programs in Python: conditions, loops, strings and lists. Easy tasks with hints to learn the basics.

    Open tasks
  • University

    Recursion, sorting, binary search, dynamic programming, trees and graphs: the topics of an algorithms and data structures course.

    Open tasks
  • Internship

    Easy and medium tasks that internship screenings start with: arrays, strings, maps and sets.

    Open tasks
  • Job interview

    Medium and hard tasks from technical interviews, collections for backend, frontend and data analyst roles, SQL.

    Open tasks

How it works

  1. Pick a stage above, or a task by topic, language or difficulty. Search finds a task by its name.
  2. Write a solution in the code editor right in the browser. Nothing to install.
  3. Press «Check»: tests run the solution and show the input it failed on. A solved task goes into your progress.

What practice gives you

  • Hints for each task, opened one at a time when you get stuck.
  • Collections for interviews and by topic: strings, hash maps, binary search, dynamic programming, SQL.
  • A plan around the topics you get stuck on: practice suggests what to solve next.
  • A level in each topic, earned by tasks solved without hints (with a free account).
  • Languages: Python, JavaScript, TypeScript, Java, Go and SQL.

Task topics

Each topic opens practice filtered by it.

A code editor for your language

If you just need an online editor, for example to show code to a friend or a teacher, open the page for your language.

FAQ

Is it free?
Yes. All tasks are free, with no trial and no card.
Do I need to sign up?
Not to start: solve right away, progress is kept in your browser. A free account keeps it across devices and unlocks levels.
Is it good for school students?
Yes. Start with easy Python tasks on conditions, loops and strings. Hints help when you are stuck.
How is a solution checked?
Your code runs against a set of tests. When a test fails, you see the input, the expected and the actual output.
Which languages can I use?
Python, JavaScript, TypeScript, Java, Go and SQL. Many tasks can be solved in any of them.
How many tasks a day should I solve?
One or two every day help more than ten once a week. Start with easy tasks and move on to medium ones when the easy ones pass without hints.
Where do the tasks come from?
Some we wrote ourselves; others are adapted from open datasets, with the source and license on the task page.
Everything CodeShare does