Interview developer candidates in 30+ programming languages
Start for freeSupported languages
C#
Running C# 10 on .NET 6.0.16
You can define multiple classes but one of them
should have a
static void
Main
Learn more about our C# code editor for interviews here.
C/C++
Running GCC 8.3.0
C++17 standards are supported. GCC compiler is used
with the following arguments: g++ -std=c++17 -pthread
Learn more about our Online C++ Editor for interviews here.
Clojure
Running clj 1.6
Nothing to explain, it should probably work.
Learn more about our Clojure code editor for interviews here.
Java
Running Java 13.0.2
You should define public static void main(java.lang.String[])
inside a public class.
We have added JUnit 4 for your convenience. To use it, make sure your main class is
public and named Code
. Here is an example:
import org.junit.*; import org.junit.runner.*; public class Code { @Test public void testNoop() { Assert.assertTrue(true); } public static void main(String[] args) { JUnitCore.main("Code"); } }
Learn more about our Java IDE for interviews here.
Kotlin
Running kotlin 1.9
Nothing to explain, it should probably work.
Learn more about our Kotlin code editor for interviews here.
Go
Running Go 1.13
You should declare a func main()
in a package main
, like this:
package main import "fmt" func main() { fmt.Printf("Hello") }
Learn more about our Online Go IDE for interviews here.
Haskell
Running GHC 8.4.3
Nothing to explain, it should probably work.
Learn more about our Haskell code editor for interviews here.
JavaScript(Node)
Running Node 20.5
Your code is run using NodeJS with —harmony
flag on, which
enables most of the ES6 features. We have also installed following npm packages for you to
use:
Learn more about our JavaScript code editor for interviews here.
TypeScript(Node)
Running TypeScript 5.2 with Node 20.5
Your code is compiled to JavaScript using tsc --strict
and then
run using NodeJS with —harmony
flag on. We have also installed
following npm packages for you to use:
Learn more about our TypeScript code editor for interviews here.
Jupyter Notebooks
Running based on Jupyter Docker Stacks.
Nothing to explain, it should probably work.
Learn more about our Collaborative Jupyter Notebooks for interviews here.
PySpark
Running PySpark 3.5.1
Nothing to explain, it should probably work.
Learn more about our Online PySpark IDE for interviews here.
React
Running React 18.2.0
Try our online React IDE today. You will have access to a live code editor, a real-time preview, and a built-in interactive shell.
Learn more about our Online React IDE for interviews here.
PHP
Running PHP 7
Don’t forget to wrap your code in <?php
and ?>
tags.
Learn more about our PHP code editor for interviews here.
Python 2
Running Python 2.7
We have installed following pip packages for you to use:
Learn more about our Python 2 IDE for interviews here.
Python 3
Running Python 3.11
We have installed following pip packages for you to use:
Learn more about our Python 3 IDE for interviews here.
Swift
Running Swift 5.0
We’re using Apple’s recently open sourced Swift implementation for Linux.
Learn more about our Swift code editor for interviews here.
Ruby
Running Ruby 2.5.1
We have installed the following gems for you to use:
Here is an example code for using RSpec:
require 'rspec/autorun' class Greet def print! 'HELLO' end end RSpec.describe Greet do it 'prints hello' do expect(Greet.new.print!).to eq('HELLO') end end
Learn more about our Ruby code editor for interviews here.
Rust
Running Rust 1.40
Nothing to explain, it should probably work.
Learn more about our Online Rust IDE for interviews here.
Node.js
Running Node.js 20.11.0
At CodeInterview, we enable seamless candidate assessments. Now, conduct interviews effortlessly using Node.js with Express on our platform.
Learn more about our Online Node.js Editor for interviews here.
Scala
Running Scala 2.13
You can name the object anything you want. But you should define def main(args: Array[String])
, like this:
object HelloWorld { def main(args: Array[String]) = println("Hello Scala!") }
Learn more about our Scala code editor for interviews here.
Visual Basic .NET
Running VBNC 4.7
Our VB.NET environment runs on top of the mono project’s implementation of the .NET runtime.
You can define multiple classes but one of them should have a Public
Shared Sub Main()
.
Learn more about our Online Visual Basic .NET IDE for interviews here.
Objective-C
Running GCC 9.4
Since we don’t run Objective-C natively on OS X. We run it using GCC. Your code is compiled
with:
gcc -I/usr/include/GNUstep -L/usr/lib/GNUstep -lobjc -lgnustep-base
-Wall
We know this is not a perfect way to do it so we are open to any suggestions on how to run Obj-C better.
Learn more about our Objective-C code editor for interviews here.
Django
Running Django 5.0.3
It's amazing. Try it! You'll have access to PostgreSQL, an API client, a web preview, and an interactive shell.
Learn more about our Django IDE for interviews here.
Ruby on Rails
Running Rails 7.1.3
Experience Rails with PostgreSQL, an API client, a web preview, and an interactive shell.
Learn more about our Ruby on Rails IDE for interviews here.
Perl
Running Perl 5.22
Nothing to explain, it should probably work
Learn more about our Perl code editor for interviews here.
Erlang
Running Erlang 19
Your solution should define the module as solution and export a method named start, like this:
-module(solution). -export([start/0]). start() -> io:fwrite("Hello").
Learn more about our Erlang code editor for interviews here.
Elixir
Running elixir 1.2
You must define the module as
Solution
with a method
named start
, like this:
Code.compiler_options(ignore_module_conflict: true) defmodule Solution do def start() do IO.puts "Hello" end end
Also notice the first line Code.compiler_options(ignore_module_conflict: true)
which is
needed by our system to work.
Learn more about our Elixir code editor for interviews here.
R
Running R 4.0.3
Nothing to explain, it should probably work.
Learn more about our Online R IDE for interviews here.
MySQL
Running MySQL 8
Nothing to explain, it should probably work.
Learn more about our Online MySQL IDE for interviews here.
Bash
Running GNU Bash 4.3
Your bash script is run on our servers as is.
Learn more about our Bash code editor for interviews here.
PowerShell
Running Pash 7.0.0
We don’t run PowerShell natively on Windows. But we use Pash which is an open-source implementation of PowerShell. If something doesn’t work right, feel free to contact us.
Learn more about our Online PowerShell IDE for interviews here.
Angular
Running Angular 16.1.0.
Experience the power of Online Angular IDE with essential components including server log, a web preview, and an interactive shell.
Learn more about our Angular Online Editor for interviews here.
Vue.js
Running Vue.js 3.2.47
At CodeInterview, we provide a comprehensive environment to experience Vue.js coding and implementation with features like an API client, a web preview, and an interactive shell. These tools enhance your interview process, making it seamless and efficient.
Learn more about our Vue.js IDE for interviews here.
Next.js
Running Next.js 13.4.19
Conduct seamless, real-time candidate assessments with ease using our online Next.js editor. We have integrated essential libraries like React
, React DOM
and various scripts that enhance performance and functionality.
Learn more about our Online Next.js Editor for interviews here.
Web
Web mode includes all of the popular web frameworks including React, Angular, Nextjs, Express, etc. You can also create a custom template with your own selection of NPM packages and a start script. Everyone in the interview pad is able to see the output in the embedded browser panel.
Realtime Terminal
The terminal is shared between all participants and they can see the output and run commands.
Are any of the language outdated? Feel free to email us.
Plus everything you need to hold an effective coding interview
Code Playback
Go back in time and instantly replay any past programmer interview. CodeInterview records every keystroke including code output.
Templates
Save frequently asked questions as code templates and load them easily during the interview.
Whiteboard Mode
Use a virtual whiteboard to illustrate problems and solutions when briefing candidates and reviewing their work.
Privacy Controls
After the interview is over, it gets locked for the candidate so only you and your team can access the notes and Code Playback.
Invite via Link
Copy and share the interview URL in advance or invite candidates via email once you start.
Private Notes
Take notes as you interview the candidate so you can review and compare later. These are only available to you and your team.
We couldn't have said it better ourselves
“We use CodeInterview to get a sense of how people could fit within our team. Seeing how long a candidate takes and their decisions when solving a problem makes it easier to choose the right person.”
Get started with CodeInterview now
No credit card required, get started with a free trial or choose one of our premium plans for hiring at scale.