linkedin Skip to Main Content
Just announced: CoderPad Play! Engage your team with fun technical challenges.
Back to blog

18 Features Your Tech Assessment Tool Should Have to Prevent Cheating

Hiring Developers

Nobody likes to talk about cheating. It’s uncomfortable. 

It’s uncomfortable to think that someone may be trying to pull the wool over your eyes.

In any case, it’s uncomfortable for me. I strive to see the best in people, give the benefit of the doubt. put myself in others’ shoes… So yes, it makes me uncomfortable to acknowledge that candidate cheating is a real issue in tech recruitment today.

But I have to, because it is. 

Whether you’ve come face to face with cheaters yourself, or, like me, others’ experience has forced you to (finally) come to accept that cheating is real, then you’re in the right place. 

This article will support you in limiting any impact cheating might have on your developer hiring. I’ll give you an overview of the “anti-cheat” features that can help you prevent, detect and respond to cheating attempts within your candidate assessment process.

Prevent

What better way to deal with cheating than to avoid it altogether?! Here are some features you can leverage to prevent cheating.

1. High quality content and gamification

Quite simply, the higher the quality of your evaluation, the less likely candidates are to cheat. 

Candidates are more likely to respect you, if you respect them. In tech hiring, respect is sending over a test that’s short, relevant and engaging. 

Imagine, company A sends you a test that you know full well will give absolutely no inclination of how well you could do job B. 

Might you be tempted to cheat, just to get past this (irrelevant and ridiculous) formality, so that you might go on to show your real skills in a later interview? 

Technical assessment is not about making questions unnecessarily difficult or trying to “catch candidates out”. It’s about making your test worth their while. It’s about surfacing skills that are necessary and relevant to the role and your business. 

Bonus: CoderPad specializes in visually-rendered gamified coding exercises. Not only are these exercises more engaging, they’re also much harder to submit to AI for help. 

2. Timer per question

The time you set per question really depends on the question at hand. 

If there’s something specific and direct that you (really) need candidates to have memorized, then a short timer can eliminate those who need to look it up.

In the vast majority of cases though, you should aim to set a reasonable and realistic timer per question. 

Think of it this way: if the candidate was to do this on the job, how would you expect them to go about it and how long should it take them? 

Take that, and add a little wiggle room (after all, your candidate doesn’t have the context that a team member has, plus there’s the added stress of the recruitment process).

You’re giving candidates structure and setting expectations. You’re not giving candidates all the time in the world, as this may make it tempting to “phone a friend”. 

3. Limited copy/paste

With a tool like CoderPad, you can automatically block copy/pasting of question statements, both to prevent leaks and make it harder to find solutions online.

You can also choose to deactivate pasting text that was obtained outside the IDE. However, before activating this paste-blocking feature, keep in mind that there are plenty of legitimate use cases for copy/pasting. 

This blanket prohibition may seem rather unnecessary (even ridiculous) to developer candidates.

4. Leak prevention

Any assessment tool worth its salt will safeguard their content, and do everything they can to avoid it ending up on the world wide web. 

Here at CoderPad, for example, our content is regularly updated and tested against AI. 

We also make it incredibly easy to edit existing content, bulk upload your own, or create custom questions and exercises. We can even create tailored content specifically for your organization!

5. Candidate warning message

Did you know that “Beware of the dog” signs deter up to 90% of burglars? 

No? That’s because I totally made that up 😆

What I’m getting at is that “Beware of the dog” signs will generally make ill-intentioned visitors think twice—even if they’re unaware whether the dog in question is a miniature poodle or a doberman.

Boo!

Similarly, warning candidates that they are expected to take the test alone, within the given timeframe and that any cheating attempts will be flagged by the system, is absolutely worth doing.

Maybe not something as menacing as a “Beware of the dog” sign… but a friendly reminder of what is allowed and expected can go a long way.

We recommend a personal message that looks a little something like this: 

“You’re about to start your test. Hooray! 

Here are a few friendly reminders, before you get started. 

  • I recommend that you take this tutorial (link) before starting your test. Take the time to get comfortable with the test environment.
  • You are expected to take your test in one sitting. Please set aside XX minutes to do so. Once you click the “Start” button, you will not be able to pause the test.
  • Once you submit an answer, you cannot go back to edit your response.
  • You are encouraged to use all of the online resources and tools available to you (yes, even ChatGPT!), however you must take this test alone. 
  • It is strictly forbidden to record or disclose the questions of this test by any means.
  • The aim of this test is to represent your skills. Cheating is prohibited. Any cheating attempts will be detected by CoderPad’s software and reported to (Company). 

Please let me know if there’s anything I can help you with. I wish you the best of luck.”

6. Playback shown in tutorial

Code playback (a recording of your candidate’s coding activity during a test) is not only useful to detect any cheating attempts, but it’s also a good way to dissuade candidates. 

Indeed, making candidates aware of what code playback is and what it looks like, makes it crystal clear that any funny business will be flagged and visible to recruiters.

Again, the idea is not to pressure or scare candidates, but simply to inform them on what recruiters will see. 

To this end, CoderPad includes their code playback in the tutorial available to candidates. 

7. Question randomization

Tools like CoderPad Screen can allow you to “randomize” test questions. We do this with “random blocks”. 

A block is a group of questions that make up all or part of a test.

To help prevent cheating, you can create a slightly different test for each candidate using random blocks of questions. CoderPad Screen generates the random blocks based on your specified criteria (job role, domains, level of difficulty, etc.).

The idea is that the questions will be slightly different, to reduce the risk of cheating, BUT similar enough in terms of structure, difficulty and skills assessed for you to compare apples to apples. 

You can absolutely decide not to do this, for the sake of standardization, but it’s available should you need it. 

8. Custom coding exercises

Quite obviously, any questions that you create yourself, that are unique to your company and business context, will be much harder to cheat. 

As mentioned above, CoderPad Screen makes it extremely easy to create your own questions and use them across your organization. 

Detect 

If a candidate manages to dodge all of your preventive precautions and actually attempt to cheat, then you need to know about it right away. 

Note: these features will certainly help you identify any unusual activity. However, unusual activity is not necessarily proof of cheating. Make sure to investigate further before taking action and/or making any rash accusations. 

9. Code playback

Tools like CoderPad Screen will make a recording of all your candidate’s coding activity during a test. You can watch how your candidate built their algorithm, when they left the environment, when and what they pasted from external sources, and what happened when they ran their code. 

Not only does this help you better understand the way they code and problem solve, it also supports you in detecting any suspicious behavior.

You can also use this as a base for further discussion, say, during a technical interview. If the candidate can’t put two and two together in an interview, it’s likely they didn’t write that code in the first place.

10. Code similarity check

A tech assessment tool should automatically and continuously check for any code similarities among candidates.

CoderPad Screen, for example, will alert you should two candidates submit the same (or very similar) code for any given question.

11. IP tracking

Thanks to IP tracking, most tools are able to identify the approximate location of a candidate. 

CoderPad Screen, for example, will track candidates’ approximate geolocation to spot any unusual behavior (like logins from different locations or devices during a test). Unusual activity may signal another person is taking the test for the candidate.

Note: There may be non-cheating related reasons why a candidate has different locations listed in their timeline, including using a VPN and temporarily being out of the country. Like any other warnings, you should investigate further before rejecting the candidate.

12. IDE exit tracking

Most tools will be able to signal if and when a candidate leaves the test IDE. Obviously, this is not a clear sign of cheating, but this, plus other signals, can lead to an investigation. 

13. AI follow-up questions

AI may well be making it easier for candidates to cheat, but it’s also making it easier for recruiters to cheatproof their assessments. 

One way to do so is to enable AI-generated follow-up questions. For example, CoderPad’s ChatGPT integration can generate an additional question asking a candidate to explain a piece of their code. 

Suspicious activity is more likely to trigger a follow-up question.

14. Webcam proctoring

Many assessment tools have developed proctoring features. 

CoderPad’s webcam proctoring feature prompts candidates to activate their webcam before starting a test. 

If (and only if) they accept, periodic snapshots are captured throughout the test and analyzed by our AI software. We’re able to identify any suspicious behavior and, if necessary, add automatic alerts to the candidate’s report.

Recruiters also gain access to a detailed proctoring report. They can review alerts and the corresponding captured snapshots for three patterns:

  • No face detected — the candidate has left the room, for example.
  • Multiple faces detected — the candidate is using unauthorized assistance.
  • A different face is detected — the candidate is having someone else take the test for them.
The webcam proctoring tab is selected. Below is a test timeline showing when the suspicious activity was detected. There are options to click on the suspicious activity for screenshots.

Note: when using this feature in your tests, you’ll see an additional option on the “Data retention” page to define how long webcam screenshots are stored and available for review. To comply with GDPR regulations, this data retention period is capped at 90 days.

As with other test settings, webcam proctoring can be activated on a per-test and per-team basis.

15. Leak detection

Any tech assessment tool provider should do their very best to detect unfortunate content leaks.

This can look like: regular manual internet screening, automatic crawls, a clear notification process, a dedicated technical content manager…

16. Test performance tracking

Here at CoderPad, we track performance globally, across our library of over 4000 questions and exercises, to identify any unusual spikes.

For any given question we may notice that time-to-complete is radically shorter, or that the average score has suddenly bumped.

In the case of suspicion, we investigate and remove or refresh the question. 

🔖 Further reading: CoderPad documentation on cheating prevention and detection

Respond

Despite all of your best efforts, it’s happened. A candidate has, well and truly, cheated their way through your evaluation process. What do you do? 

Here are a few ways to deal with the aftermath of cheating.

17. Flag candidate as a cheater

Once you’ve identified a cheating attempt, it’s important to share that information with your team. 

Within CoderPad Screen, if you determine that a candidate has cheated on a particular question, you can mark the offending question by ticking the “Candidate cheated on this exercise” checkbox.

A question review page is shown for a candidate with the option to select "Candidate cheated on this exercise" checkbox.

Checking this box will remove points for the exercise and add a filter to the candidate. Additionally, in your dashboard, you’ll see a “Cheated” notification next to the candidate’s name.

18. Leak management

We take content leaks very seriously, and so should any assessment provider. 

If we identify leaked content, we will: 

  • Refresh compromised content
  • Send a DMCA (Digital Millennium Copyright Act) takedown order
  • Investigate any cheating concerns and keep our customers informed of the outcome