Skip to main content
Practice5 min read

Practice a coding test

Pick a problem or a learning path, write code in the editor, run it against the test cases, and read the complexity verdict.

Before you start

  • An Expert Hire practice account.
  • 3 Prep Credits per coding test.
  • A language you are comfortable in. Python is the default.
Steps

4 steps, in order.

1

Pick a problem or follow a path

Coding Tests opens on three tabs: Problems, Paths and My Results. Problems is the full library, filterable by difficulty and topic such as Binary Search, Arrays or dynamic programming. Paths are ordered sequences that build on each other. Pick a path if you do not know what to practise next.

Assessments
Coding Tests
Sandboxed coding assessments with real execution and capability profiling.
ProblemsPathsMy Results
Search problems...
Start with the fundamentals
Power of a NumberEasy
MathSolve
Even or OddEasy
MathSolve
Home Screen Widget StateEasy
Frontend LogicSolve
Longest Billable StreakEasy
ArraysSolve
TypeAll types 735DSA 512Frontend 47Backend 64DevOps 54Data 58
AnyEasyMediumHard
Random problem
Active Feature Flags Counter
Bit TricksCounting Bits
EasySolve
Binary Search (find target index)
Binary SearchArrays
EasySolve
Alert Throttle Window
Devops SreRate Limiting
MediumSolve
At-Least-Once Job Queue
Backend SystemsSimulation
MediumSolve
Bytes Migrated by Region
Data EngineeringGroup By
HardSolve
Cache TTL Expiry
Backend SystemsCache Ttl
EasySolve
Design Hit Counter
DesignBinary Search
MediumSolve
735 problems · page 1 of 31PrevNext

Problems, Paths and My Results, with difficulty and topic tags on each problem.

2

Write and run your code

The editor has line numbers, a language picker and a custom input box. Run executes your code against your own input so you can check your thinking. Submit runs it against the hidden test cases. Use Run first. Submitting a guess wastes the attempt.

3

Read the per-test results, not just pass or fail

Every test case comes back individually with pass or fail and its runtime in milliseconds, plus an X of Y passed counter. A failing case tells you which input broke your logic. A slow passing case tells you the approach works but will not scale.

  • Look at the runtime on the cases that passed. That is where the next improvement usually is.
4

Check the complexity verdict

Along with correctness you get a complexity verdict, for example O(n times k) optimal. This is the part interviewers actually push on. Passing every test with a brute-force solution is not the same as solving it well.

  • All tests green with a poor complexity verdict is the exact answer that fails a real interview.
What you get

At the end of this guide.

Per-test-case pass or fail with runtime in milliseconds.

A score on correctness, efficiency and code quality.

A complexity verdict on your approach.

A result saved to My Results so you can track progress.

Common mistakes

What goes wrong, and the fix.

Hitting Submit before running the code once.

Run against your own input first. Submit is for when you think you are done.

Treating all tests passing as the finish line.

Read the complexity verdict. An accepted brute force is still a weak answer.

Jumping between random hard problems.

Follow a path. The ordering exists so each problem builds on the last.

FAQ

Questions people ask on this one.

Still stuck? Talk to us and we will walk through your setup.

Try this in your own workspace.

The 30-day trial includes 75 Hire Credits, which covers a resume batch and a first round of interviews. Nothing charged for 30 days.

30-day free trial with 75 Hire Credits. Card required, nothing charged for 30 days.