When creating tests, you can limit which languages your candidates may use. We always recommend giving your candidates as much choice as possible.
FUNDAMENTAL TASKS:
- C (GCC 14.2.0)
- C++20 (G++ 10.3.0)
- C++23 (G++ 13.3.0)
- C# 13.0 with .NET 9.0
- Dart 2.19.2
- Free Pascal 3.0.4
- Go 1.24.1
- Java SE 11
- Java SE 21
- JavaScript (Node.js 22)
- Kotlin 2.1.20
- Lua 5.3
- Objective-C (clang 3.8.0 & GCC 5.4)
- Perl v5.30.0
- PHP 7.4
- PostgreSQL 9.4 / psycopg 2.9.3
- Python 3.12
- Ruby 2.7.0
- Rust 1.61
- Scala 3.3.3
- SQLite 3.11
- Swift 5.8
- TypeScript 5.8.2 (Node.js 22)
- VB.NET 4.0 (Mono 6.12)
REAL-LIFE TASKS:
- .NET core 2.1 - 3.1
- Angular 4.3.6 - 15.0.0
- Android 27
- Ansible 2.8
- Bash 4.3 - 5
- Chef 4.7.73
- COBOL OpenCOBOL 1.1
- Cucumber 6.0.5
- CSS 3
- C++17
- Dart 2.13.3 - 2.19.0
- Docker (docker-compose) 3.7
- Docker (Dockerfile) 19.03
- Elasticsearch 7.9.1
- GitLab CI 12.8.6
- Go 1.13.8-1.23
- Hibernate 4
- Helm 3.0.2
- HTML 5
- Java SE 8 U171
- Java SE 11
- Java SE 17
- Jest 25.1 - 27.5
- jQuery 2.1 - 3.6
- jUnit 4.12.0 - 5.9.3
- Kotlin 1.3.21 - 1.8.21
- Kubernetes 1.16.0
- Laravel 10.2.2
- Minitest 5.14
- Mocha 6.2.2 - 10.7.3
- MongoDB 4.2
- MySQL 8.0
- Node.js 11.14.0 - 20.5.1 (most tasks use 18.9.0)
- PHP 7.2.7 - 8.0.0
- PostgreSQL 10.4
- PowerShell 7.0.0
- PySpark 2.4.5
- PyTest 3.5.5 - 8.2.2
- Python 3.6.0 - 3.12 (most tasks use 3.8.5)
- React 16.8.6 - 18.2.0
- React Native 0.63
- Redux 4.0.5
- Robot Framework 3.0.4
- Ruby 2.5.1 - 2.7.1
- Rails 5.1.6 - 6.1.4
- RSpec 3.8.0 - 3.9.0
- Rust 1.56.1 - 2021 edition
- Scala 2.12 - 2.13.8
- Scalatest 3.1
- Selenium 3.13.0 - 4.8.3
- Serverless Framework 1.67.3
- Solidity 0.4.23 (Node.js version 9.11.1)
- Spark 2.4.5 - 3.1.1
- Spring Framework 5.1.5 - 5.1.8
- Spring Boot 2.0.5 - 3.3.0
- Spring Web MVC 5.0.7
- SQLite 3.11.0
- Swift 5.1.0 - 5.9.0
- Symfony 5.2
- Terraform 0.14.7 - 0.15.0
- Testify 1.8.0 - 1.9.0
- TestNG 6 - 7
- TypeScript 4.0.3 - 5.3.3
- Vue.js 2.7.7
- xUnit 2.3.1 - 2.4.1
ADDITIONAL FRAMEWORKS/LIBRARIES (AVAILABLE IN SELECTED TASKS):
- aiohttp 3.4.4
- async-timeout 3.0.1
- automapper 9.0.0
- Camel Spring Boot Starter 3.19
- cors 2.8.5
- Django 2.0.5 - 4.1.5
- Express 4.18.2 - 5.4.13
- flask 1.0.2 - 3.0.0
- kafka 2.12.0
- lodash 4.17.14 - 4.17.21
- ML.NET 1.3.1
- guice 4.2.0
- serverless 1.43.0
- dynamodb-local 11.11
- lombok 1.18.4
- dropwizard-core 1.3
- chai 4.2.0 - 4.3.6
- sinon 7.5.0
- nock 11.7.0
- protobuf 3.13.0
- puppeteer 5.2.0
- reselect 4.0.0
- rxjs 6.6.0 - 6.6.3
- SQLAlchemy 1.3.23
- stripe 11.11.0
DATA SCIENCE TASKS:
- Python 3.8.0 - 3.12
- R 3.6.1 - 3.6.3
- NumPy 1.17.4 - 1.26.2
- Pandas 0.25.3 - 2.0.3
- scikit-learn 0.21.3 - 1.3.1
- scipy 1.3.3 - 1.11.4
- Tensorflow 2.18.0
- Torch 2.5.1
- imbalanced-learn 0.4.3
- gensim 3.8.1
- nltk 3.4.5 - 3.7
- caret 6.0-86
- tidyverse 1.3.0
INTERVIEW TASKS:
Technology-specific coding (VSCode)
- C gcc 14.2
- C++ gcc 14.2
- C# .NET SDK 8.0
- Go 1.23.3
- Java 22.0.2
- Kotlin 17.0.12
- Node 22.10
- Python 3.12.7
- React 18 (Node 22.10)
- SystemVerilog Icarus Verilog 11.0
Technology-agnostic coding (Basic editor)
- C (GCC 14.2.0)
- C++20 (G++ 14.2.0 with Catch2)
- C# 13.0 with .NET 9.0 (with xUnit)
- Golang (with testing) 1.23.4
- Java 17 (+Java 8 and Java 11 separately)
- JavaScript + React: React v18, Node v17, Typescript v5
- Kotlin (with JUnit 5) 1.3.21
- Node.js (with Jest or Mocha) 11.13.0
- Objective-C 2.0.0
- PHP (with PHPUnit) 7.2.7
- PostgreSQL 10.4.0
- Python (with PyTest) 3.12.0
- Python (Data Science) Python 3.8.0, NumPy 1.17.4, Pandas 0.25.3, scikit-learn 0.21.3
- Ruby (with RSpec) 2.7.1
- Scala (with Scalatest) 2.12.3
- Swift (with XCTest) 5
- TypeScript (with Node.js v17) 4.8.2
- Plain Text
TECHNOLOGY-SPECIFIC CUSTOM TASKS
When creating your technology-specific custom content, you have access to the following languages/technologies:
- Bash 5.2
- C++ 20
- C# 13.0 with .NET 9.0
- Dart SDK 3.0.6
- Elixir 1.15.4
- Go 1.20.6
- Java 17
- JavaScript (Node.js 18)
- Kotlin 1.9.0
- PHP 8.2
- PostgreSQL 15
- Python 3.11
- R 3.6.3
- Ruby 3.2.2
- Rust 1.73.0
- Scala 3.3.0
- Swift 5.8.1
- TypeScript 5.1.6 (Node.js 18)
UPDATING EXISTING OR SUPPORTING NEW LANGUAGES:
Routinely we update our language support as new versions are released and requested. If you have any additional questions about supported technologies or would like to leave your feedback, please reach out to your Customer Success Manager or contact us at support@codility.com.