Online Java Code Editor for Interviews
Run a Java interview in a shared editor: the candidate writes, compiles, and runs the code, and you see every edit and result in real time. Free, no sign-up, no JDK install.
Free, no sign-upHow to run a live coding interview in JavaCollaborative code editors comparedCode sample
import java.util.*;
public class Main {
public static void main(String[] args) {
Map<Character, Integer> counts = new TreeMap<>();
for (char c : "interview".toCharArray()) {
counts.merge(c, 1, Integer::sum);
}
System.out.println(counts);
}
}
Output
{e=2, i=2, n=1, r=1, t=1, v=1, w=1}What the editor does
- Java 15: the code compiles and runs on the server in an isolated sandbox, and every participant sees compile errors and output.
- Real-time collaborative editing: up to 5 participants, with edits and cursors visible instantly.
- The problem statement is written in Markdown right in the session, next to the code.
- Autotests: if the task has unit tests, you can run them from the session and immediately see how many passed.
- The entry point is the main method in class Main, as in the example above; declare helper classes in the same file below it.
- The task bank is open without an account. After a free sign-in: your own tasks, an interview mode with timers, candidate scoring, and interview history.
How to run the interview
- Click "Run an interview" — the session is created with a sample program, which you can replace with your own task.
- Describe the problem in Markdown and send the link to the candidate: they need no sign-up.
- Have the candidate verify the solution with calls from main and printed output — you will see any compile errors together with them.
Typical interview tasks
- How HashMap works, and why equals and hashCode must be overridden consistently.
- Group and count data using the Stream API and Collectors.groupingBy.
- Implement an LRU cache based on LinkedHashMap.
- Validate a sequence of brackets using a Deque.
- A thread-safe counter: synchronized versus AtomicInteger.
- Design an immutable class and explain why final fields are needed.
Limitations
- The version is Java 15: switch expressions and text blocks are available, but records and sealed classes remain preview features in this version and do not compile without a special flag.
- A single run is limited to 3 seconds and 64 KB of output, and JVM startup eats into that time, so heavy computations may not fit.
FAQ
- Which Java version is used?
- Java 15. The code compiles and runs on the server, so the version is the same for every participant.
- What should I name the class with the main method?
- Main, as in the example on this page, and it must come first in the file. Declare helper classes below it.
- Are there autotests for Java?
- Yes. A task's tests are written as test(...) calls with assertEqual(...); the Check button runs them and shows how many passed.
- Do I need to sign up?
- No. Create a session, send the link, and start. The task bank is open without an account too. Signing in is needed for your own tasks, interview mode, and history.
- Is the standard library available?
- Yes, the full Java 15 standard library: collections, the Stream API, java.time, and java.util.concurrent. There are no third-party libraries like Guava — interview tasks usually do not need them anyway.