Search test library by skills or roles
⌘ K

No trick questions.
40 min coding tests.
500+ ready-to-use tests.

A radical new way to screen candidates for programming skills. Use non-googleable MCQs and coding questions. Screen for experience with programming languages and software engineering frameworks.

Adaface coding tests are trusted by enterprises globally

Amazon Morgan Stanley Vodafone United Nations HCL PayPal Bosch WeWork Optimum Solutions Deloitte Microsoft NCS Doubtnut Sokrati J&T Express Capegemini

No trick questions.

Code tracing MCQs & coding questions that test for core fundamentals & on-the-job skills for accurate shortlisting.

Skills

🧐 Question

Medium

Async Await Promises
Promises
Async-Await
Solve
What will the following code output?
 image
A: 24 after 5 seconds and after another 5 seconds, another 24
            B: 24 followed by another 24 immediately
            C: 24 immediately and another 24 after 5 seconds
            D: After 5 seconds, 24 and 24
            E: Undefined
            F: NaN
            G: None of these

Medium

Holding References
Solve
What does the following Java code output?
 image

Medium

Context re-renders
Context
Solve
Review the following React code:
 image
Pick the correct statements:
            
            A: The code renders 10 INDIAN RUPEE
            B: The code renders 10 SINGAPORE DOLLAR
            C: The code does not render anything and throws an error since JavaScript objects are not valid as React children
            D: When the currency portion is clicked, the parent component is re-rendered
            E: When the currency portion is clicked, parent component will skip the re-render because shouldComponentUpdate returns false
            F: Parent component can be converted to a functional component with memoization (useMemo or memo) to avoid the re-render

Medium

Data Microservices
S3
SQS
SNS
Solve
Slapchat deployed a new data processing application to the market. The backend part of the application does two specific segments:
            
            - For every new data file submitted by the user, proprietary data cleanup logic is done
            - Once data cleanup is complete, proprietary data transformations are done
After launching the application for few months, the metrics indicated that the clean up stage of the application is pretty quick while transformation stage takes longer time to complete. In the next phase, the application is being re-written as 2 microservices (’cleanup’ and ‘transformation’). The deployment strategy is to run both on ECS and scale independently. How should the services be integrated?
A: ‘cleanup’ publishes data to SNS topic, ‘transformation’ subscribes to the SNS topic
            
            B: ‘cleanup’ sends data to S3 bucket, ‘transformation’ is invoked by S3 event notifications
            
            C: ‘cleanup’ sends data to SQS queue, ‘transformation’ processes messages from the queue
            
            D: ‘cleanup’ sends data to Kinesis Data Firehose, ‘transformation’ reads from the Kinesis Data Firehose

Medium

Inject instances into routes
Solve
Your friend Sabrina is interning with a data analytics startup. For their app, they want to be able to automatically inject the instances of the model into their routes. Which of the following would you recommend?
 image

Hard

Session
File Handling
Dictionary
Solve
 image
The function high_sess should compute the highest number of events per session of each user in the database by reading a comma-separated value input file of session data. The result should be returned from the function as a dictionary. The first column of each line in the input file is expected to contain the user’s name represented as a string. The second column is expected to contain an integer representing the events in a session. Here is an example input file:
Tony,10
            Stark,12
            Black,25
            Your program should ignore a non-conforming line like this one.
            Stark,3
            Widow,6
            Widow,14
The resulting return value for this file should be the following dictionary: { 'Stark':12, 'Black':25, 'Tony':10, 'Widow':14 }
What should replace the CODE TO FILL line to complete the function?
 image

Medium

Longest Road
logic
hashmaps
Solve
A startup company E-Motors is building driverless automated cars. The car contains a sensor that checks the road quality for the next N meters to decide the optimal speed at which the cars should move. We are given recorded data by the sensor in the form of an array, where each element of the array is the rating given to 1 meter of the road in sequence. 
            
            The rating given by the sensor is from 1 to 100, where 100 represents the road with the best condition, and any rating above 60 is optimal. Find the longest stretch of road in meters that is categorized as optimal by the sensor.
            
            The input is an array of "strings" which needs to be converted from string to integer/number inside the function.

Hard

n-gram generator
Solve
Our newest machine learning developer want to write a function to calculate the n-gram of any text. An N-gram means a sequence of N words. So for example, "black cats" is a 2-gram, "saw black cats" is a 3-gram etc. The 2-gram of the sentence "the big bad wolf fell down" would be [["the", "big"], ["big", "bad"], ["bad", "wolf"], ["wolf", "fell"], ["fell", "down"]]. Can you help them select the correct function for the same?
 image

Medium

Go WaitGroup
Concurrency
Solve
What does the following Go code output?
 image

Medium

Database testcase
Regression Testing
Solve
Adaface is developing a new database system called “Helen”. The tester at Adaface developed the following testcase for regression testing:
1. Open Helen
            2. Open “Students” database
            3. Enter data for “Sid”
            4. Set checkpoint
            5. Store “Sid” data in “Students” 
            6. Restart Helen
            7. Read “Sid” data from “Students”
            8. Compare checkpoint with the contents
When the tester ran the testcase the first time, it worked as expected. Pick the correct statements:
            
            A: When the test case is ran the second time, the data entry for “Sid” already exists in the database. 
            B: When the test case is ran the second time, it performs exactly as it did the first time
            C: The testcase is a good example for regression testing “Helen”
            D: The testcase is not a good example for regression testing “Helen” since the system behaves differently when the testcase is ran the second time
🧐 Question🔧 Skill

Medium

Async Await Promises
Promises
Async-Await
2 mins
JavaScript
Solve

Medium

Holding References
2 mins
Java
Solve

Medium

Context re-renders
Context
3 mins
React
Solve

Medium

Data Microservices
S3
SQS
SNS
2 mins
AWS
Solve

Medium

Inject instances into routes
2 mins
Laravel
Solve

Hard

Session
File Handling
Dictionary
2 mins
Python
Solve

Medium

Longest Road
logic
hashmaps
25 mins
Coding
Solve

Hard

n-gram generator
2 mins
Machine Learning
Solve

Medium

Go WaitGroup
Concurrency
2 mins
Go
Solve

Medium

Database testcase
Regression Testing
2 mins
Testing
Solve
🧐 Question🔧 Skill💪 Difficulty⌛ Time
Async Await Promises
Promises
Async-Await
JavaScript
Medium2 mins
Solve
Holding References
Java
Medium2 mins
Solve
Context re-renders
Context
React
Medium3 mins
Solve
Data Microservices
S3
SQS
SNS
AWS
Medium2 mins
Solve
Inject instances into routes
Laravel
Medium2 mins
Solve
Session
File Handling
Dictionary
Python
Hard2 mins
Solve
Longest Road
logic
hashmaps
Coding
Medium25 minsSolve
n-gram generator
Machine Learning
Hard2 mins
Solve
Go WaitGroup
Concurrency
Go
Medium2 mins
Solve
Database testcase
Regression Testing
Testing
Medium2 mins
Solve

40 min tests.

Short screening tests with high completion rates.

Code tracing MCQs  /  Coding questions

500+ ready-to-use tests.

Ready-to-use coding tests for all your IT roles.

Programming

IT



How to use coding tests for hiring

1-click invites  /  skills profile  /  comparative analysis  /  code analysis


Why Adaface coding tests work

No puzzles. No niche algorithms.

Traditional pre-employment coding tests use the equivalent of computer science puzzles or niche algorithms that no programmer uses on the job.

While it's good if a candidate good at solving puzzles (this skill can be improved with practice), this is not a strong indicator of how good of an engineer someone is. Also, this way of measuring a developer's programming skills has an inherent bias against more experienced developers.

Score distribution

The actual score distribution will vary based on your candidate pipeline quality, but you should typically expect ~20% of the candidates to do well on Adaface coding tests.

The score distribution for our coding assessments follow the normal curve. This is a good sign- standardized tests like SAT and GRE follow the normal distribution (bell curve).

Status quo assessments typically have the exact opposite of the bell curve (too many candidates getting close to 0, too many candidates getting close to 100 and too few candidates in the middle). This is typically because they focus on theoretical questions or trick questions, which are very binary in nature- either you know the trick/ theory or you don’t.

score distribution

40 min coding tests =
8 MCQs + 1 coding question

Over the course of hundreds of thousands of coding tests for 1200+ companies globally, we have tested & seen that a combination of code tracing MCQ questions & 1 coding question is highly predictive of candidate's programming ability.

Designed for elimination, not selection

The most important thing while implementing pre-employment coding tests in any hiring process is that it is an elimination tool, not a selection tool. In other words: you want to use the test to eliminate the candidates who do poorly on the test, not to select the candidates who come out at the top.

While they are super valuable, coding tests do not paint the entire picture of a candidate’s programming ability, knowledge, and motivation.

20+ programming languages

50+ frameworks

FAQs

What is a coding test?

A coding test or programming test is used by recruiters to check if the candidate has the ability to write code. A short coding test can help filter out candidates who do not have the programming skills for the role early in the process.

How long is a coding test?

Ideally a coding test should be 40 mins long with 5-10 code tracing MCQ questions & 1 coding question. A short coding test ensures that candidate drop-off is low.

With Adaface, we were able to optimise our initial screening process by upwards of 75%, freeing up precious time for both hiring managers and our talent acquisition team alike!


Brandon Lee, Head of People, Love, Bonito

hashtag image heart icon Brandon
Join 1200+ companies in 75+ countries.
Prova oggi lo strumento di valutazione delle competenze più candidati.
Have questions about Adaface coding tests?
Have questions about Adaface coding tests?
Chat with us
40 min tests.
No trick questions.
Accurate shortlisting.
Ada
Ada
● Online
Previous
Score: NA
Next
✖️