Online Python Code Editor for Interviews
Open a shared Python editor, send the candidate a link, and solve the problem together: you both see the code, cursors, and the run result in real time. Free, no sign-up, no install — everything works in the browser.
Free, no sign-upCode sample
def two_sum(nums, target):
seen = {}
for i, x in enumerate(nums):
if target - x in seen:
return [seen[target - x], i]
seen[x] = i
return []
print(two_sum([2, 7, 11, 15], 9)) # [0, 1]
Output
[0, 1]
What the editor does
- Python 3.12: the code runs on the server in an isolated sandbox, so the version is the same for every participant, and everyone sees the output and errors.
- Real-time collaborative editing: up to 5 participants in one session, with edits and cursors visible instantly.
- The problem statement is written in Markdown right in the session, next to the code — the candidate never has to switch tabs.
- Autotests: if the task has unit tests, you can run them from the session and immediately see how many passed.
- After a free sign-in: a task bank, an interview mode with a task playlist and timers, candidate scoring, and interview history.
How to run the interview
- Click "Open the Python editor" — the session is created right away with sample code you can delete or build your task on.
- Write the problem statement in Markdown and send the link to the candidate. They need no sign-up: they enter a name and land straight in the editor.
- Ask the candidate to think out loud and run the code as they go. Provide input data directly in the code — the session has no keyboard input.
Typical interview tasks
- Two Sum: find a pair of numbers with a given sum — a dictionary instead of a double loop, a conversation about O(n) complexity.
- Check whether a sequence of brackets is valid using a stack.
- Group anagram words by sorting their letters or with collections.Counter.
- Reverse a linked list and detect a cycle in it with the two-pointer method.
- Write a generator: your own version of range, or read a large file line by line without loading it into memory.
- Write a decorator that times a function or caches its results, and compare it with functools.lru_cache.
Limitations
- No keyboard input: input() gets no data, so define the data in the code — as a list, a string or function arguments.
- A single run is limited to 3 seconds and 64 KB of output — enough for interview-sized problems, but not for long computations.
FAQ
- Which Python version is used?
- Python 3.12. The code runs on the server, so the version is the same for every participant and does not depend on what is installed on their computers.
- Can I run unit tests?
- Yes. If the task has tests, you can run them from the session and see how many passed. Your own tasks with tests and the task bank are available after a free sign-in.
- Does the candidate need to sign up?
- No. The candidate opens the link, enters a name, and sees the editor right away. You do not need to sign in either, unless you want to keep the interview history.
- How do I pass input data to the program?
- The session has no keyboard input. Provide data directly in the code: for example, call the function with the arguments you need, or describe test cases as a list and loop over it.