Practice implementing system design concepts in code by solving common interview and real-world scenarios.
How it Works| Topics | |||
|---|---|---|---|
| 1 | easy | ||
| 2 | easy | ||
| 3 | easy | ||
| 4 | easy | ||
| 5 | medium | ||
| 6 | medium | ||
| 7 | medium | ||
| 8 | medium | ||
| 9 | medium | ||
| 10 | easy | ||
| 11 | medium | ||
| 12 | medium | ||
| 13 | medium | ||
| 14 | medium | ||
| 15 | medium | ||
| 16 | medium | ||
| 17 | medium | ||
| 18 | medium | ||
| 19 | medium | ||
| 20 | medium | ||
| 21 | medium | ||
| 22 | easy | ||
| 23 | easy | ||
| 24 | medium | ||
| 25 | medium | ||
| 26 | medium | ||
| 27 | medium | ||
| 28 | medium | ||
| 29 | medium | ||
| 30 | medium | ||
| 31 | medium | ||
| 32 | hard | ||
| 33 | hard | ||
| 34 | hard | ||
| 35 | easy | ||
| 36 | easy | ||
| 37 | medium | ||
| 38 | medium | ||
| 39 | medium | ||
| 40 | medium | ||
| 41 | medium | ||
| 42 | medium | ||
| 43 | medium | ||
| 44 | medium | ||
| 45 | medium | ||
| 46 | medium | ||
| 47 | medium | ||
| 48 | medium | ||
| 49 | medium | ||
| 50 | medium | ||
| 51 | medium | ||
| 52 | hard | ||
| 53 | hard | ||
| 54 | hard | ||
| 55 | hard | ||
| 56 | hard | ||
| 57 | hard | ||
| 58 | easy | ||
| 59 | medium | ||
| 60 | medium | ||
| 61 | medium | ||
| 62 | medium | ||
| 63 | medium | ||
| 64 | medium | ||
| 65 | medium | ||
| 66 | medium | ||
| 67 | hard | ||
| 68 | hard | ||
| 69 | hard | ||
| 70 | hard | ||
| 71 | hard | ||
| 72 | medium | ||
| 73 | medium | ||
| 74 | medium | ||
| 75 | medium | ||
| 76 | hard | ||
| 77 | easy | ||
| 78 | medium | ||
| 79 | medium | ||
| 80 | medium | ||
| 81 | medium | ||
| 82 | medium | ||
| 83 | medium | ||
| 84 | medium | ||
| 85 | medium | ||
| 86 | medium | ||
| 87 | medium | ||
| 88 | medium | ||
| 89 | hard | ||
| 90 | hard | ||
| 91 | hard | ||
| 92 | hard | ||
| 93 | easy | ||
| 94 | easy | ||
| 95 | medium | ||
| 96 | medium | ||
| 97 | medium | ||
| 98 | medium | ||
| 99 | medium | ||
| 100 | medium | ||
| 101 | medium | ||
| 102 | hard | ||
| 103 | hard | ||
| 104 | medium | ||
| 105 | medium | ||
| 106 | medium | ||
| 107 | medium | ||
| 108 | medium | ||
| 109 | hard | ||
| 110 | hard | ||
| 111 | hard | ||
| 112 | medium | ||
| 113 | medium | ||
| 114 | medium | ||
| 115 | medium | ||
| 116 | medium | ||
| 117 | medium | ||
| 118 | easy | ||
| 119 | easy | ||
| 120 | medium | ||
| 121 | medium | ||
| 122 | medium | ||
| 123 | medium | ||
| 124 | medium | ||
| 125 | medium | ||
| 126 | hard | ||
| 127 | easy | ||
| 128 | easy | ||
| 129 | medium | ||
| 130 | medium | ||
| 131 | medium | ||
| 132 | medium | ||
| 133 | easy | ||
| 134 | medium | ||
| 135 | medium | ||
| 136 | medium | ||
| 137 | medium | ||
| 138 | medium | ||
| 139 | medium | ||
| 140 | medium | ||
| 141 | medium | ||
| 142 | medium | ||
| 143 | medium | ||
| 144 | medium | ||
| 145 | hard | ||
| 146 | hard | ||
| 147 | medium | ||
| 148 | medium | ||
| 149 | medium | ||
| 150 | medium | ||
Knowing terms like quorums and consistent hashing is a start. The ideas really click when you use them to work out whether a partition can accept a write or which keys move when a node is removed. These problems help you turn that theory into code.
Each problem gives you a focused class contract and a starter template in your chosen language. You’ll build the solution in a full browser-based editor, with your work saved as you go.
Run checks your code against the worked examples. When you’re ready, Submit runs the hidden test cases too, so you can see whether your solution holds up beyond the examples.
Use Evaluate to ask an AI reviewer about correctness, edge cases, and complexity. It won’t grade your work or affect your submission history, so you can use the feedback to improve before submitting.
You’ll follow the same four-step loop for every problem.
Start with the class, constructor, and method signatures the judge will call, along with the rules your implementation needs to follow.
Write the class in the editor in your preferred supported language. If you get stuck, open a hint or ask the AI tutor for a nudge in the right direction.
Use Run to check your code against the visible examples. You’ll see what passed without grading the attempt or adding it to your submission history.
Submit when you’re ready. The hidden test cases cover scenarios beyond the examples; pass them all and the problem is marked as solved.
The contract and worked examples are available before you start coding, so you always know what to build and what the visible cases expect.
Mock interviews put you in a timed, open-ended conversation about requirements, APIs, data models, and architecture. These problems zoom in on one concept at a time and give you a focused coding task with automated tests. Use the problems to build fluency, then use the mocks to practice explaining a complete design.
Because many system design decisions rest on concrete logic. Coding a quorum rule, an availability calculation, or a hash ring makes you work through the edge cases yourself. That is the same kind of reasoning you’ll need in an interview or on the job.
Evaluate is a code review, not a test run. It looks at your current solution and gives you written feedback on correctness, edge cases, and complexity. The review won’t change your submission status or history.
Open the language picker to see what each problem supports. Every listed language includes a starter template, and the editor remembers your choice when you move to another problem.
Yes. Drafts are saved in your browser separately for each problem and language. Your latest submitted code is also saved to your account, and every attempt appears in the Submissions tab. Select any attempt to load that code back into the editor.
Yes. You’ll need an account to run, submit, or evaluate code. Free accounts include 50 runs, 30 submissions, and 30 evaluations each day. AlgoMaster premium raises those limits to 250 runs, 150 submissions, and 50 evaluations.