Discouraging Plagiarism
Solutions to your coding challenges will always be available online. The moment you release a new coding challenge out into the world it is best practice to assume its solution has already been leaked. Though we cannot completely eliminate plagiarism, there are effective ways to discourage it. Here are some methods we’ve found effective to both discourage plagiarism and help candidates succeed. For further info and examples, please download the guide attached or contact your customer success team for a more in-depth guide and examples.
1. Set Expectations with Clear Instructions
Clearly define the rules of the coding test. In HireVue you can add instructions in the email invite or at the beginning of an interview. For example, it could be useful to tell the candidate if they are allowed to search the internet or use their own editor. You can also clearly define what constitutes plagiarism and the consequences if they are caught plagiarizing.
2. Choose Effective Coding Challenges
A candidate is more likely to attempt to solve a challenge on their own when that challenge matches their expectations. This includes using challenges that assess the expected skills and knowledge of a new hire in that role, not a seasoned member of the team. It's also important to consider how much time your challenges will require to be completed for a new hire. Using several shorter challenges rather than one or two long challenges can be a good way to allow the candidate to show their abilities in a variety of scenarios and give them a chance to take a break between each challenge. Creating a reasonable and approachable interview can set your candidates up for success which will make them less likely to resort to plagiarism.
3. Use Custom Challenges
Any coding challenge will be leaked and shared on the internet. However, there are some benefits to creating your own custom challenge:
- A custom challenge will likely be less widely shared online than one from the CodeVue library that is used by many companies.
- A custom challenge is easier to update. You can make small updates to your custom challenge, just enough that a copy and pasted solution wouldn’t work. You can do this on a regular basis and then create a new position on HireVue to use the newer version.
Detecting Plagiarism
While taking steps to discourage plagiarism can have a big impact, plagiarism will never be completely eliminated. Use the following techniques to detect plagiarism in coding challenges.
1. Code Similarity
The Code Similarity score represents how similar a solution is to other solutions we have seen. It’s calculated based on the entire set of code submissions in the system. Recognizing that developers use both creativity and existing solutions to produce real world code, Code Similarity may or may not indicate plagiarism. This is because for a simple challenge there may be few possible solutions or ways of writing a solution. Also, some challenges lend themselves to a single solution that is well established as the best approach, so in this case an extremely similar solution may actually be evidence of a knowledgeable and experienced coder.
2. Code Playback
When evaluating a CodeVue interview, the playback tab shows how the candidate developed their solution and each of their keystrokes in real-time. The playback timeline along the bottom also highlights when a candidate navigated away from the challenge to do other things. By viewing this playback, you can get an idea of whether the candidate thought through the solution on their own or copy and pasted together other people’s solutions.
3. Ask a Question
The best way to detect plagiarism on a coding challenge is to ask a follow up video question that requires them to discuss their code. After reviewing the candidate’s code and test scores, watch their video response to the follow up question. Be sure that they are accurately describing what they submitted and are clearly conveying an understanding of the problem and solution.
4. Live Coding
If you think the candidate is capable and want to dig deeper into their problem-solving skills through the use of code, schedule a Live interview with them and use the Live Coding feature. Live Coding in a Live interview allows the candidate and interviewer to collaborate in a shared code editor during the interview. Both the candidate and interviewer can write and execute code in the editor. This is a great way to discuss coding topics while in a live audio/video session, and it would be extremely difficult to cheat during a Live Coding session.