CodeSignal tests are highly customizable and adaptable for a variety of software development roles: front-end, backend, full-stack, DevOps, mobile, data science, and more.
While each company has their own, unique needs with their tests, CodeSignal recommends following a few "best practices" for designing a technical assessment that provides an accurate signal of relevant skills and which creates a positive candidate experience.
Keep in mind that these are recommendations, not requirements.
- Ideal test duration: 60-70 minutes
- We have found this to be the optimal test length to capture an accurate signal from your candidates (both breadth and depth of knowledge), without deterring candidates from taking or completing the assessment.
- Candidates may be more willing to take a longer test further down the hiring funnel, when they will be more invested in the role.
- Note: If your company wants to give a difficult initial assessment to filter out as many candidates as possible, you can design a take-home assignment in CodeSignal Test that has a test duration of 1-2 days.
Choosing skills to assess
- Ideal number of skills to assess: 1-2 skills per test
- How to choose which skills to assess:
- In thinking about which tasks to select, always think about the base level of skills that are required for the job instead of going into very specific or difficult skillsets; this is especially important if you are designing a top-of-the-funnel, initial assessment.
- Assessing only 1 or 2 skills at a base level will ensure that you don't accidentally rule out qualified candidates with an initial assessment. We have found it most effective to evaluate more specialized skills at a later stage in the hiring funnel, such as a 1:1 technical interview or an on-site interview. Interviews allow you the opportunity to talk through more complex problems with candidates in real time.
Number of tasks/questions
- Ideal number of tasks or questions: 2-3 coding tasks, or a mix of 1-2 coding tasks and 10-15 quiz questions. When in doubt, assign fewer tasks/questions.
- In our experience, candidates can comfortably complete 2-3 coding tasks (or 1-2 coding tasks and 10-15 quiz questions) in an hour if they have the coding skills needed for basic proficiency at the task.
Task difficulty and variation
- Ideal task difficulty: tasks and questions should be split into 3 groups—easy, intermediate, and hard. For initial, top-of-the-funnel assessments, it's generally best to use fairly easy coding tasks. If you choose to use a difficult task, start your test with easier tasks and move to gradually more challenging tasks.
- How to assess task difficulty: Experts on your team will likely have a good sense of a task's difficulty from its description. For tasks in CodeSignal's Task Library, they can also refer to the task's solve rate to estimate its difficulty.
- Ideal task variation: create at least several variations of each tasks. Variations should have similar difficulty, descriptions, and solution sizes.
- Using easier coding tasks at the top of the funnel allows you to cover adequate breadth of knowledge in a 60-70 minute assessment.
- Defining tasks/questions as easy, intermediate, or hard makes it easier to ensure the test progresses from easier to harder questions and to create different levels of tests for different roles.
- Having variations of each tasks allows you to easily create different version of the same test by swapping out each task for a variation. Distributing different versions of a test helps mitigate against cheating/plagiarism.
- Assigning points:
- Each test should consist of 1000 points.
- For a test consisting of 3 coding tasks, we recommend assigning 350, 350, and 400 points to each respective task.
- For a test consisting of 1 coding task and 10-15 quiz questions, we recommend assigning 500 points to the coding task and 500 points to the quiz questions (500 points divided across all quiz questions).
- Point allocation that reflects the importance of each task/question for your overall evaluation of a candidate makes scoring easier and more accurate. Accurate scoring helps you move forward with the right candidates.
Questions? Contact firstname.lastname@example.org.