{"id":8907,"date":"2026-02-19T05:14:39","date_gmt":"2026-02-19T13:14:39","guid":{"rendered":"https:\/\/coderpad.io\/?post_type=doc&#038;p=8907"},"modified":"2026-03-23T05:02:01","modified_gmt":"2026-03-23T12:02:01","slug":"creating-custom-questions","status":"publish","type":"doc","link":"https:\/\/coderpad.io\/resources\/docs\/screen\/customizing-questions\/creating-custom-questions\/","title":{"rendered":"Creating custom questions"},"content":{"rendered":"\n<p>Select an item from the list for more information on custom question creation:<\/p>\n\n\n\n<div class=\"wp-block-rank-math-toc-block\" id=\"rank-math-toc\"><nav aria-label=\"Table of Contents\"><ul><li class=\"\"><a href=\"#view-current-custom-questions\">View current custom questions<\/a><\/li><li class=\"\"><a href=\"#create-a-custom-question-in-the-question-editor\">Create a custom question in the question editor<\/a><\/li><li class=\"\"><a href=\"#create-multiple-choice-questions\">Create multiple choice questions<\/a><ul><li class=\"\"><a href=\"#settings\">Settings<\/a><\/li><li class=\"\"><a href=\"#ai-generated-mcq\">AI-generated multiple choice questions<\/a><\/li><\/ul><\/li><li class=\"\"><a href=\"#create-free-text-questions\">Create free text questions<\/a><ul><li class=\"\"><a href=\"#1-automatic-validation\">1. Automatic validation<\/a><\/li><li class=\"\"><a href=\"#2-manual-validation\">2. Manual validation<\/a><\/li><\/ul><\/li><li class=\"\"><a href=\"#create-language-specific-exercise\">Create language-specific exercise<\/a><\/li><li class=\"\"><a href=\"#create-project-exercise\">Create project exercise<\/a><\/li><li class=\"\"><a href=\"#create-a-function-based-question\">Create a function-based question<\/a><\/li><li class=\"\"><a href=\"#create-a-video-question\">Create an audio or video question<\/a><\/li><li class=\"\"><a href=\"#create-a-file-upload-question\">Create a file upload question<\/a><\/li><li class=\"\"><a href=\"#add-translations\">Add translations<\/a><\/li><li class=\"\"><a href=\"#custom-question-video-tutorial\">Custom question video tutorial<\/a><\/li><\/ul><\/nav><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"view-current-custom-questions\">View current custom questions<\/h2>\n\n\n\n<p>To view your existing list of custom questions from your organization, select the <strong>Custom<\/strong> tab on the top right of the screen. This will change you over to the <em>Custom questions<\/em> tab.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"333\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-116-1024x333.png\" alt=\"\" class=\"wp-image-40580\" style=\"width:1291px;height:auto\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-116-1024x333.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-116-300x98.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-116-768x250.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-116-1536x499.png 1536w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-116-18x6.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-116.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"create-a-custom-question-in-the-question-editor\">Create a custom question in the question editor<\/h2>\n\n\n\n<p>To add a new custom question, click <strong>Create question<\/strong> in the top right corner of the <em>Questions<\/em> list.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-117.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"483\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-117-1024x483.png\" alt=\"Custom Question list screen with an arrow pointing to the &quot;create question&quot; button at the top right of the screen.\" class=\"wp-image-40581\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-117-1024x483.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-117-300x142.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-117-768x362.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-117-18x8.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-117.png 1528w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>In the<strong> <\/strong><em>Select question type <\/em>pop up, select a <em>Question type<\/em>. There are four primary options:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"#create-multiple-choice-questions\" data-type=\"internal\" data-id=\"#create-multiple-choice-questions\">Multiple choice question<\/a><\/li>\n\n\n\n<li><a href=\"#create-text-questions\">Free text question<\/a><\/li>\n\n\n\n<li><a href=\"#create-project-exercise\" data-type=\"internal\" data-id=\"#create-project-exercise\">Project exercise<\/a><\/li>\n\n\n\n<li>Coding exercise<\/li>\n\n\n\n<li><a href=\"https:\/\/coderpad.io\/resources\/docs\/screen\/customizing-questions\/importing-questions\/\">Import CSV<\/a><\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-118.png\"><img loading=\"lazy\" decoding=\"async\" width=\"744\" height=\"261\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-118.png\" alt=\"The &quot;select question type&quot; menu with 4 options: multiple choice, free text, coding exercise, and project.\" class=\"wp-image-40584\" style=\"width:644px;height:auto\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-118.png 744w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-118-300x105.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-118-18x6.png 18w\" sizes=\"auto, (max-width: 744px) 100vw, 744px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>If you select <em>Coding exercises<\/em>, you&#8217;ll be able choose from <strong><a href=\"#function-based-question\">Function-based<\/a><\/strong> or <strong><a href=\"#create-language-specific-exercise\">Language-specific <\/a><\/strong>questions.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/10\/image-7.png\"><img loading=\"lazy\" decoding=\"async\" width=\"525\" height=\"179\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/10\/image-7.png\" alt=\"\" class=\"wp-image-37114\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/10\/image-7.png 525w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/10\/image-7-300x102.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/10\/image-7-18x6.png 18w\" sizes=\"auto, (max-width: 525px) 100vw, 525px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Once you select the question type and any type-specific configurations, you&#8217;ll then need to select the question language(s) and click <strong>Create question<\/strong>.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-36.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"530\" height=\"312\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-36.png\" alt=\"New question modal with &quot;language&quot; selection drop down and &quot;create question&quot; and &quot;back&quot; buttons.\" class=\"wp-image-36120\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-36.png 530w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-36-300x177.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-36-18x12.png 18w\" sizes=\"auto, (max-width: 530px) 100vw, 530px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>For coding exercise questions, you&#8217;ll also have the option of selecting a template that will pre-fill the question editor with a CoderPad-validated programming exercise.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-37.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"530\" height=\"430\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-37.png\" alt=\"New question modal with &quot;language&quot; selection and &quot;Template&quot; drop down and &quot;create question&quot; and &quot;back&quot; buttons.\" class=\"wp-image-36121\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-37.png 530w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-37-300x243.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-37-15x12.png 15w\" sizes=\"auto, (max-width: 530px) 100vw, 530px\" \/><\/a><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-38.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"534\" height=\"649\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-38.png\" alt=\"The template drop down is expanded with options for &quot;Default template&quot;, &quot;accounting test: calling a service&quot;, and &quot;custom pipe knowledge&quot; options shown.\" class=\"wp-image-36123\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-38.png 534w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-38-247x300.png 247w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-38-10x12.png 10w\" sizes=\"auto, (max-width: 534px) 100vw, 534px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"create-multiple-choice-questions\">Create multiple choice questions<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Input the <em>Title <\/em>(the candidate does not see the title).<\/li>\n\n\n\n<li>Write out the question in the <em>Statement <\/em>box on the left.<\/li>\n\n\n\n<li>Text options include common styling options, code inputs, <a href=\"https:\/\/www.latex-project.org\/about\/\" target=\"_blank\" rel=\"noreferrer noopener\">LaTeX<\/a> formulas, and adding images and attachments.<\/li>\n\n\n\n<li>On the right, input the answer options. <\/li>\n\n\n\n<li>Indicate the correct answer(s) with the switch.<\/li>\n\n\n\n<li>Select <strong>Multiple answers possible<\/strong> if there is more than one answer.<\/li>\n\n\n\n<li>Select <strong>Randomize order during the test <\/strong>to randomize the answer list order if required.<\/li>\n\n\n\n<li>The candidate must select ALL valid answers, and no other answers, to receive the maximum points available, otherwise marks are proportional.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/44_file-0Tgk5uI60J.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/44_file-0Tgk5uI60J.png\" alt=\"Multiple choice creation screen consisting of title field, statement field, and answers field.\"\/><\/a><\/figure>\n<\/div>\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"settings\"><strong>Settings<\/strong><\/h3>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/05\/image-35.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"207\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/05\/image-35-1024x207.png\" alt=\"Question settings section to select domain, skill, difficulty, duration, and points.\" class=\"wp-image-34367\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/05\/image-35-1024x207.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/05\/image-35-300x61.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/05\/image-35-768x155.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/05\/image-35-18x4.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/05\/image-35.png 1283w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Add the following details:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/coderpad.io\/resources\/docs\/interview\/more-interview-resources\/supported-technologies-languages\/screen\/available-domains\/\" data-type=\"URL\" data-id=\"https:\/\/coderpad.io\/resources\/docs\/interview\/more-interview-resources\/supported-technologies-languages\/screen\/available-domains\/\">The domain<\/a> (i.e. technology or programming language) of your question where you can select an existing domain or <a href=\"https:\/\/coderpad.io\/resources\/docs\/screen\/customizing-questions\/customized-domains-and-skills\/#customize-domains\" data-type=\"URL\" data-id=\"https:\/\/coderpad.io\/resources\/docs\/screen\/customizing-questions\/customized-domains-and-skills\/#customize-domains\">create a new domain<\/a>.&nbsp;<\/li>\n\n\n\n<li>The <a href=\"https:\/\/coderpad.io\/resources\/docs\/screen\/customizing-questions\/customized-domains-and-skills\/#customize-skills\" data-type=\"URL\" data-id=\"https:\/\/coderpad.io\/resources\/docs\/screen\/customizing-questions\/customized-domains-and-skills\/#customize-skills\">skill<\/a> to test. <\/li>\n\n\n\n<li>The question difficulty.<\/li>\n\n\n\n<li>Question time limit.<\/li>\n\n\n\n<li>Total points available. <\/li>\n\n\n\n<li>Whether to add the question to automatically generated tests.<\/li>\n\n\n\n<li>Whether to authorize Screen to add this question to the Screen question library.<\/li>\n<\/ul>\n\n\n\n<p>Click <strong>SAVE<\/strong> to save the question.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"a\"><strong>AI-generated multiple choice questions<\/strong><\/h3>\n\n\n\n<p>If you&#8217;re looking to quickly create multiple choice questions for a test, you can use the AI-generated question creation feature.<\/p>\n\n\n\n<p>Simply click <strong>AI-generated questions<\/strong> for the question type, and then follow the instructions to generate your questions.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"337\" height=\"413\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-1.png\" alt=\"Interface titled \u2018Select question type\u2019 showing five options: Multiple-choice, Coding exercise, File upload, Multiplayer question (admin), and AI-generated questions, each displayed as selectable buttons with icons.\" class=\"wp-image-44201\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-1.png 337w, https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-1-245x300.png 245w, https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-1-10x12.png 10w\" sizes=\"auto, (max-width: 337px) 100vw, 337px\" \/><\/a><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"676\" height=\"706\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-2.png\" alt=\"Modal titled \u2018AI-generated multiple-choice questions\u2019 with fields for \u2018Skill or topic to assess\u2019 (set to Prompt engineering) and \u2018Additional instructions\u2019 (text about assessing ability to use AI for coding). Options are shown for target experience level (Junior, Senior selected, Expert) and number of questions (3, 5 selected, 10, 25). A dropdown labeled \u2018Team that can edit these questions\u2019 shows CoderPad Inc., and a \u2018Generate questions\u2019 button appears at the bottom\" class=\"wp-image-44202\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-2.png 676w, https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-2-287x300.png 287w, https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-2-11x12.png 11w\" sizes=\"auto, (max-width: 676px) 100vw, 676px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"create-free-text-questions\">Create free text questions<\/h2>\n\n\n\n<p>Input the <em>Title <\/em>and write out the question in the <em>Statement <\/em>box below.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/44_file-gI9DcxNRmt.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/44_file-gI9DcxNRmt.png\" alt=\"Empty text question creation page. Consists of title and statement fields.\"\/><\/a><\/figure>\n<\/div>\n\n\n<p>Add the <em>Settings <\/em>as before.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"247\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-39-1024x247.png\" alt=\"Settings for test question including fields for domain, difficulty, duration, and points.\" class=\"wp-image-36125\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-39-1024x247.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-39-300x72.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-39-768x185.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-39-18x4.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-39.png 1136w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Select (1) <strong>Automatic<\/strong> or (2) <strong>Manual<\/strong> validation in the <em>Validation <\/em>section.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"1-automatic-validation\">1. Automatic validation<\/h3>\n\n\n\n<p>Select the skill and input the answer to the question. Candidate answers must match exactly, but are case insensitive.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/43_file-Mn9gVdL5J8.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/43_file-Mn9gVdL5J8.png\" alt=\"Validation section with &quot;automatic&quot; option selected and the skill and answers field empty.\"\/><\/a><\/figure>\n<\/div>\n\n\n<blockquote class=\"wp-block-quote\">\n<p>\u2705 Check the <strong>Regular expression<\/strong> box and input a regex code that allows a more flexible range of answers. Check the <a href=\"https:\/\/docs.oracle.com\/javase\/8\/docs\/api\/java\/util\/regex\/Pattern.html\" target=\"_blank\" rel=\"noreferrer noopener\">Oracle Java Regex description<\/a> for more information.<\/p>\n<\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"2-manual-validation\">2. Manual validation<\/h3>\n\n\n\n<p>Input a <em>Label <\/em>for the report. Select the <em>Skill <\/em>and <em>Weight<\/em>. The <em>Points <\/em>value auto-populates.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/42_file-WXE9ESVzyJ.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/42_file-WXE9ESVzyJ.png\" alt=\"Validation section with &quot;manual&quot; option selected. The fields for label, skill, weight, and points are displayed.\"\/><\/a><\/figure>\n<\/div>\n\n\n<p>After a candidate completes a test with a question that needs manual validation, you will receive an email inviting you to manually validate the answer to the question. The system then calculates a final score.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"create-language-specific-exercise\">Create language-specific exercise<\/h2>\n\n\n\n<p>Once you&#8217;ve selected <strong>Language-specific <\/strong>from the <em>Coding exercise<\/em> question type menu, you&#8217;ll be taken to the language selection window.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/10\/image-8.png\"><img loading=\"lazy\" decoding=\"async\" width=\"524\" height=\"374\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/10\/image-8.png\" alt=\"A list of programming languages arranged alphabetically. \" class=\"wp-image-37118\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/10\/image-8.png 524w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/10\/image-8-300x214.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/10\/image-8-18x12.png 18w\" sizes=\"auto, (max-width: 524px) 100vw, 524px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Once you select a language, you&#8217;ll be taken to additional settings. Here you can select the language for the question. Additionally, the <em>Template <\/em>dropdown contains existing Screen questions that you can use as a basis for your own.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-41.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"536\" height=\"431\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-41.png\" alt=\"New question modal with a question type of programming exercise and a programming language filed with &quot;English&quot; selected and a &quot;template&quot; field displayed.\" class=\"wp-image-36135\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-41.png 536w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-41-300x241.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-41-15x12.png 15w\" sizes=\"auto, (max-width: 536px) 100vw, 536px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>You can edit the details of the existing question, including adding a zip file, before choosing the settings. <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/41_file-NYslcPiaxC.png\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/41_file-NYslcPiaxC.png\" alt=\"Template shown with title and statement fields.\"\/><\/a><\/figure>\n<\/div>\n\n\n<p>In <em>Settings<\/em>, input the points for the question.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/03\/image-7.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"210\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/03\/image-7-1024x210.png\" alt=\"Settings section with domain selected as &quot;language independent&quot;, difficulty as &quot;easy&quot;, duration as 12 minutes, and points as 100.\" class=\"wp-image-32044\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/03\/image-7-1024x210.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/03\/image-7-300x62.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/03\/image-7-768x157.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/03\/image-7-18x4.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/03\/image-7.png 1468w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p><span style=\"font-size: 0.8125em\"><\/span><\/p>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>\u2705 The domain field may have more options depending on the language selected.<\/p>\n<\/blockquote>\n\n\n\n<p>If you want, you can add your question to the Screen library by checking the authorization box. Hover over the information circle to see the details:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-119.png\"><img loading=\"lazy\" decoding=\"async\" width=\"372\" height=\"192\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-119.png\" alt=\"By checking this box, you authorize CoderPad to add this question to their library of available questions. Any CoderPad customers will be able to add your question to their tests. If a large pool of candidates attempt to answer your question as part of their coding test, the comparative score (used to benchmark candidates based on their skills) for your questions will be more precise\" class=\"wp-image-40589\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-119.png 372w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-119-300x155.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-119-18x9.png 18w\" sizes=\"auto, (max-width: 372px) 100vw, 372px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Next, you can set the execution time limit to focus the question on code optimization or allow extra time for long-running processes. You&#8217;ll also have the option to add custom files in the <em>External dependency<\/em> section. By clicking the <strong>Add external dependency <\/strong>button, you can add CSV files, text files, JSON files, or any other kind of files you&#8217;d like the candidate to work with.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-138.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"250\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-138-1024x250.png\" alt=\"The image shows an execution environment configuration screen, indicating that an Angular 2+ environment is running. There's an execution timeout setting, which is currently set to 20 seconds. Additionally, there's an option to add an external dependency, but it appears inactive or disabled at the moment. There are also advanced settings that can be expanded for further configuration.\" class=\"wp-image-41232\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-138-1024x250.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-138-300x73.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-138-768x188.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-138-18x4.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-138.png 1421w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<blockquote class=\"wp-block-quote\">\n<p>\u26a0\ufe0f Your dependency files must be uploaded as `.zip` format.<\/p>\n<\/blockquote>\n\n\n\n<p>Scroll down to see the <em>Initial candidate answer code<\/em> and the <em>Initial candidate test code<\/em><strong> <\/strong>input boxes. This is the editable code your candidate sees at the start of the test.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/initial-answers.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"469\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/initial-answers-1024x469.png\" alt=\"Initial candidate answer code box on the left, and initial candidate test code box on the right. \" class=\"wp-image-14825\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/initial-answers-1024x469.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/initial-answers-300x137.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/initial-answers-768x352.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/initial-answers-1536x704.png 1536w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/initial-answers-2048x938.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>The <em>Code validator<\/em> section stores validation code which runs against the candidate&#8217;s solution in order to assess it.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/code-validator.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"385\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/code-validator-1024x385.png\" alt=\"Code validator screen with some code displayed.\" class=\"wp-image-14848\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/code-validator-1024x385.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/code-validator-300x113.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/code-validator-768x289.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/code-validator-1536x577.png 1536w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/code-validator-2048x770.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Underneath the <em>Code validator<\/em> is a <em>Validator Mapping<\/em> section where you can set the criteria for validation.<\/p>\n\n\n\n<p>In all language-specific coding exercises, there is a parent validator and possibly one or more child validators. The child validators are only evaluated if the parent validator passes  &#8212; if a candidate fails the parent validator, they automatically get 0 points for that question.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>\u2139\ufe0f The reason for utilizing this parent\/child logic is that you may want to test specific edge cases (e.g. input is null), but you don&#8217;t want to award points if the candidate has <em>only <\/em>implemented the edge cases (if input is null then x). <\/p>\n\n\n\n<p>If you really want to disable this logic, you can put a test that always evaluates to true in the parent validator.<\/p>\n<\/blockquote>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/validator-mapping.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"282\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/validator-mapping-1024x282.png\" alt=\"Validator mapping section with label, method, skill, weight, points, and status columns displayed.\" class=\"wp-image-14849\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/validator-mapping-1024x282.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/validator-mapping-300x83.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/validator-mapping-768x211.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/validator-mapping-1536x423.png 1536w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/validator-mapping-2048x563.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<blockquote class=\"wp-block-quote\">\n<p>\u2705 The method field in the <em>Validator Mapping<\/em> must match the method name in the <em>Code validator<\/em>.<\/p>\n<\/blockquote>\n\n\n\n<p>You can also try out a <em>Possible solution<\/em> and test your code.&nbsp;Click <strong>Preview <\/strong>to test the question:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/possible-solution-1.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"413\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2022\/08\/possible-solution-1-1024x413.png\" alt=\"Possible solution section with code box on the left and a &quot;validate the solution&quot; button on the right. \" class=\"wp-image-14938\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/possible-solution-1-1024x413.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/possible-solution-1-300x121.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/possible-solution-1-768x310.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/possible-solution-1-1536x619.png 1536w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/possible-solution-1.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>You will see the question as the candidate sees it:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-42.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"445\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-42-1024x445.png\" alt=\"A candidate question preview with question on the left, candidate's answer on the right, and test code on the bottom right. \" class=\"wp-image-36137\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-42-1024x445.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-42-300x130.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-42-768x334.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-42-1536x667.png 1536w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-42-18x8.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-42.png 1814w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>After testing and submitting, click <strong>Save <\/strong>to save the question.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"create-project-exercise\">Create project exercise<\/h2>\n\n\n\n<p>Project exercises are in-depth coding questions that involve a full IDE. <a href=\"https:\/\/coderpad.io\/resources\/docs\/screen\/customizing-questions\/creating-custom-questions\/custom-project-questions\/\">You can find more information on creating project questions here.<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"create-a-function-based-question\">Create a function-based question<\/h2>\n\n\n\n<p>Function-based questions allow you to create language-agnostic exercises where the candidate can answer in the programming language they are most comfortable with.<\/p>\n\n\n\n<p>Once you&#8217;ve selected <strong>Function-based <\/strong>from the <em>Coding exercise<\/em> question type menu and selected the questions language, you&#8217;ll be taken to the configuration page.<\/p>\n\n\n\n<p>First, in the <em>Instructions <\/em>section, you&#8217;ll need to describe the goal of this question using the input box. You can use text, images, links, formulas &#8212; whatever you need &#8212; to describe this question to your candidates.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-44.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"465\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-44-1024x465.png\" alt=\"The instructions section with the goal input field displayed.\" class=\"wp-image-36142\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-44-1024x465.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-44-300x136.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-44-768x349.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-44-18x8.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-44.png 1429w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<blockquote class=\"wp-block-quote\">\n<p>\u2705 You can change the language at the top right of the screen to see what the question would look like in other languages.<\/p>\n<\/blockquote>\n\n\n\n<p>Also in the <em>Instructions<\/em> section you&#8217;ll see the <em>Implementation<\/em> of the functions. This section will be filled out automatically as you complete the rest of the steps in the question creation process.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-45.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"429\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-45-1024x429.png\" alt=\"The implementation section shows details of the function including the description, parameters, return value, constraints, and an example. \" class=\"wp-image-36144\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-45-1024x429.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-45-300x126.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-45-768x322.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-45-18x8.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-45.png 1373w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Next, you&#8217;ll fill out the inputs in the <em>Exercise <\/em>section<em><strong>.<\/strong><\/em><\/p>\n\n\n\n<p>You&#8217;ll add the name of the function you want the candidate to write (1), as well as the name (2), type (3), and description (4) of both the input and output parameters. <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-46.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"476\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-46-1024x476.png\" alt=\"The exercise screen. On the left is the parameters section with a 1 next to the function name, a 2 next to the paramater name, a 3 next to the parameter data type, and a 4 next to the description. the input parameters are on the top left of the screen, and the output parameters are in the bottom left of the screen.\" class=\"wp-image-36147\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-46-1024x476.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-46-300x139.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-46-768x357.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-46-18x8.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-46.png 1521w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>You can add more parameters by clicking <strong>Add parameter<\/strong> (8). Additionally, certain input data types will allow you to add constraints (9), including min values, max values, and pattern matching.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-47.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"422\" height=\"658\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-47.png\" alt=\"The parameters screen is shown with a 9 next to the &quot;add constraints (optional)&quot; link and the &quot;Add parameter&quot; button.\" class=\"wp-image-36150\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-47.png 422w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-47-192x300.png 192w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-47-8x12.png 8w\" sizes=\"auto, (max-width: 422px) 100vw, 422px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>On the right side of the screen, the initial code will automatically fill out as you add the different parts of the function description. <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-49.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"765\" height=\"338\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-49.png\" alt=\"The initial code screen is shown with some generated code displayed.\" class=\"wp-image-36153\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-49.png 765w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-49-300x133.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-49-18x8.png 18w\" sizes=\"auto, (max-width: 765px) 100vw, 765px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Next, in the <em>Validation <\/em>section, you can add test cases (ungraded, for candidates&#8217; use only) and validators (graded tests) that will run against the code to let you know if the candidate was able to solve the question.<\/p>\n\n\n\n<p>For test cases, you simply need to select <strong>Test<\/strong> from the <em>Type<\/em> drop-down, add a label (test name), the input, and the expected output. If you already have a possible solution, you can click the <strong>Generate from solution<\/strong> button to have the correct output automatically generated from your code. To add another test, simply click <strong>Add test<\/strong> <strong>case<\/strong>.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"665\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-2-1024x665.png\" alt=\"The image shows a screenshot of an online coding platform used to create and validate coding test cases. The interface is divided into sections:\n\n1. **Left Panel:**\n   - Labeled &quot;Test cases&quot; with a notification in red that says, &quot;At least one validator (visible or hidden) should be defined.&quot;\n   - A test case labeled &quot;Simple test&quot; is shown with the input &quot;numbers&quot; which contains the list `[1, 2, 3]`.\n   - The expected output for this test case is `6`.\n   - There is a button labeled &quot;Add test case&quot; at the bottom.\n\n2. **Right Panel:**\n   - A text area labeled &quot;Possible solution&quot; where a code can be written to solve the problem.\n   - A green button labeled &quot;Validate the solution&quot; is located near the top of this panel.\n\n3. **Top Bar:**\n   - The top bar contains options: Instructions, Function, Validation, Settings, and Preview.\n   - The Validation tab is currently active.\n   - A dropdown menu at the top right indicates the programming language selected is Java.\n   - A yellow &quot;Save&quot; button is visible at the top right corner.\n\nThis screenshot illustrates the process of setting up a coding test case, including defining inputs, expected outputs, and writing a possible solution for validation.\" class=\"wp-image-40529\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-2-1024x665.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-2-300x195.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-2-768x498.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-2-18x12.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-2.png 1382w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>For validators, you&#8217;ll need a select the <em>Type<\/em> (hidden or displayed to the candidate), a label (validator name), a skill that the validator is testing, and the weight of the question &#8212; the higher the weight, the more points will be awarded for passing that particular validator. If you already have a possible solution, you can click the <strong>Generate from solution<\/strong> button to have the correct output automatically generated from your code. To add another validator, simply click <strong>Add test case<\/strong>.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-99.png\"><img loading=\"lazy\" decoding=\"async\" width=\"595\" height=\"799\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-99.png\" alt=\"The validators section is shown with the type, label, skill, weight, points, input box, output box, &quot;Generate from solution&quot; button, &quot;validate the solution&quot; button, and &quot;Add validator&quot; buttons displayed.\" class=\"wp-image-40522\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-99.png 595w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-99-223x300.png 223w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-99-9x12.png 9w\" sizes=\"auto, (max-width: 595px) 100vw, 595px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Once your possible solution is written, simply click the <strong>Validate the solution<\/strong> button to see the results.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-3.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"218\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-3-1024x218.png\" alt=\"The validation section is shown with the possible solution box and validate the solution button highlighted.\" class=\"wp-image-40531\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-3-1024x218.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-3-300x64.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-3-768x163.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-3-1536x327.png 1536w, https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-3-18x4.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2024\/08\/image-3.png 1805w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Next you&#8217;ll fill out the question settings in the <em>Settings<\/em> section. Here you can edit:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Question title<\/li>\n\n\n\n<li><a href=\"https:\/\/coderpad.io\/resources\/docs\/screen\/more-screen-resources\/supported-languages-frameworks-technologies\/available-domains\/\">Question domain<\/a><\/li>\n\n\n\n<li>Difficulty level<\/li>\n\n\n\n<li>Duration<\/li>\n\n\n\n<li>Point value<\/li>\n\n\n\n<li>Language<\/li>\n\n\n\n<li><a href=\"https:\/\/coderpad.io\/resources\/docs\/screen\/tests\/creating-a-test\/#creating-a-test-from-a-list-of-questions\">Allow use of the question for test generation<\/a><\/li>\n\n\n\n<li>Allow CoderPad to use the question for our question library<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-53.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"332\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-53-1024x332.png\" alt=\"The settings section is shown with the the following fields: Question title, Question domain, Difficulty level, \nDuration, Point value, Language, Allow use of the question for test generation, Allow CoderPad to use the question for our question library.\" class=\"wp-image-36163\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-53-1024x332.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-53-300x97.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-53-768x249.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-53-18x6.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-53.png 1537w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Lastly, you&#8217;ll be able to view your question from the candidate&#8217;s perspective in the <em>Preview<\/em> section at the bottom.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-54.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"378\" src=\"https:\/\/d2h1bfu6zrdxog.cloudfront.net\/wp-content\/uploads\/2023\/08\/image-54-1024x378.png\" alt=\"The question preview screen is shown with the instructions and console output on the left, and the coding section on the right.\" class=\"wp-image-36165\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-54-1024x378.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-54-300x111.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-54-768x284.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-54-18x7.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2023\/08\/image-54.png 1525w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"create-a-video-question\">Create an audio or video question<\/h2>\n\n\n\n<p>Audio and video questions can be added at different stages of your hiring workflow, depending on the signals you want to capture.<\/p>\n\n\n\n<p><strong>Use video questions after a coding exercise<\/strong><\/p>\n\n\n\n<p>Add a short (3\u20135 minute) video question after a take-home or coding task when you want to:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Confirm the candidate understands the solution they submitted<\/li>\n\n\n\n<li>Evaluate how they think about trade-offs (e.g., performance vs. readability)<\/li>\n\n\n\n<li>Assess reasoning and communication skills before investing live interview time<\/li>\n\n\n\n<li>Ask how they would adapt their solution under different constraints<\/li>\n\n\n\n<li>Reduce time spent in early technical interviews by filtering for clarity and depth<\/li>\n<\/ul>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p><strong>\u2705<\/strong> Keep the prompt focused (e.g., \u201cWalk us through your approach and the trade-offs you considered\u201d) and limit responses to a few minutes.<\/p>\n<\/blockquote>\n\n\n\n<p><strong>Use video questions as a standalone screening step<\/strong><\/p>\n\n\n\n<p>Add a video question early in your funnel when you want to:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Evaluate communication skills at scale<\/li>\n\n\n\n<li>Replace or reduce live HR pre-screen calls<\/li>\n\n\n\n<li>Ask structured questions about past experience<\/li>\n\n\n\n<li>Assess motivation and clarity of thinking before scheduling interviews<\/li>\n\n\n\n<li>Reduce scheduling overhead for your team<\/li>\n\n\n\n<li>Shorten time-to-hire in high-volume roles<\/li>\n<\/ul>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>\u2705 Use 1\u20132 targeted prompts (e.g., \u201cDescribe a recent technical challenge and how you approached it\u201d) to keep the experience focused and candidate-friendly.<\/p>\n<\/blockquote>\n\n\n\n<p><strong>When video questions add the most value<\/strong><\/p>\n\n\n\n<p>Video questions are especially effective when:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>You receive a high volume of applicants<\/li>\n\n\n\n<li>Interview bandwidth is limited<\/li>\n\n\n\n<li>Communication is critical for success in the role<\/li>\n\n\n\n<li>You want stronger signal before committing engineering time<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"533\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-1024x533.png\" alt=\"Screenshot of a the custom video question's \u201cRecording\u201d setup page in a multi-step workflow (Instructions, Recording, Evaluation, Settings). The \u201cRecording\u201d tab is active, showing format options with \u201cVideo (records camera and microphone)\u201d selected and \u201cAudio only (records microphone only)\u201d unselected. Below, an \u201cEvaluation criteria (100 pts in total)\u201d section displays a single criterion labeled \u201cCriterion\u201d with Skill set to \u201cProblem solving,\u201d Weight set to 1, and Points set to 100, along with an option to add another criterion. A \u201cPreview\u201d button and an \u201cActions\u201d dropdown appear in the top right.\n\" class=\"wp-image-43998\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-1024x533.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-300x156.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-768x400.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-1536x799.png 1536w, https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image-18x9.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/image.png 1557w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">In addition to choosing what type of recording they answer in, you&#8217;ll also be able to set-up manual grading criteria and basic question settings like the maximum length of the recording and the total points the question is worth.<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Still have questions about how to create video questions? Checkout this detailed guide:<\/p>\n\n\n\n<div data-wp-interactive=\"core\/file\" class=\"wp-block-file\"><object data-wp-bind--hidden=\"!state.hasPdfPreview\" hidden class=\"wp-block-file__embed\" data=\"https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/Video-Questions-User-Guide.pdf\" type=\"application\/pdf\" style=\"width:100%;height:600px\" aria-label=\"Embed of Video Questions User Guide.\"><\/object><a id=\"wp-block-file--media-47d9cc87-6084-4b42-8f34-910439b8750e\" href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/Video-Questions-User-Guide.pdf\">Video Questions User Guide<\/a><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2026\/02\/Video-Questions-User-Guide.pdf\" class=\"wp-block-file__button wp-element-button\" aria-describedby=\"wp-block-file--media-47d9cc87-6084-4b42-8f34-910439b8750e\" download>Download<\/a><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"create-a-file-upload-question\">Create a file upload question<\/h2>\n\n\n\n<p>File upload questions allow you to assign a project to candidates to do on their own time using their own IDE or other technologies\/applications they like.<\/p>\n\n\n\n<p>You provide any starting instructions or files they need, and then once they&#8217;ve completed the assignment they&#8217;ll upload their results for you to review.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-158.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"486\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-158-1024x486.png\" alt=\"Here\u2019s an appropriate **alt text** for the image you provided:\n\n&gt; Screenshot of a CoderPad interface showing a custom question titled \u201cQuestion 1 \/ 1 - Vibe coding.\u201d The timer shows 00:10 elapsed out of 30:00 minutes. The instructions say \u201cUse your favorite LLM and vibe code an enterprise application.\u201d On the right side, there\u2019s an upload area with a download icon and a message saying \u201cYou can drag &amp; drop your project here. You must upload before the timer ends.\u201d Below it are buttons for \u201cBrowse files,\u201d an optional comment box, and \u201cSubmit\u201d and \u201cPreview\u201d buttons at the bottom right.\n\" class=\"wp-image-43497\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-158-1024x486.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-158-300x143.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-158-768x365.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-158-1536x730.png 1536w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-158-18x9.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-158.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"add-translations\">Add translations<\/h2>\n\n\n\n<p>Whenever you create a new question, if you select more than one language, you will find tabbed areas for inputting the text in other languages.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-120.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"526\" src=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-120-1024x526.png\" alt=\"Multipl choice question translation screen with &quot;Chinese&quot; tab opened and title, statement, and answers fields displayed.\" class=\"wp-image-40593\" srcset=\"https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-120-1024x526.png 1024w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-120-300x154.png 300w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-120-768x395.png 768w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-120-1536x789.png 1536w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-120-18x9.png 18w, https:\/\/coderpad.io\/wp-content\/uploads\/2022\/08\/image-120.png 1551w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"custom-question-video-tutorial\">Custom question video tutorial<\/h2>\n\n\n\n<p>For more information on creating custom questions, check out this <em>Creating custom question with CoderPad Screen<\/em> tutorial video:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube\"><div class=\"wp-block-embed__wrapper\">\n<lite-youtube\n    videoid=\"AzVf0BczyrY\"\n            params=\"rel=0\"\n        style=\"background-image: url('https:\/\/i.ytimg.com\/vi_webp\/AzVf0BczyrY\/maxresdefault.webp');\">\n  <a href=\"https:\/\/youtu.be\/AzVf0BczyrY\" class=\"lty-playbtn\" title=\"Play Video\" target=\"_blank\" rel=\"noopener\">\n            <span class=\"lyt-visually-hidden\">Play Video: Getting Started with Screen Part 3: Creating custom questions<\/span>\n      <\/a>\n<\/lite-youtube>\n\n<\/div><\/figure>\n","protected":false},"parent":8905,"menu_order":0,"template":"","class_list":["post-8907","doc","type-doc","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/doc\/8907","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/doc"}],"about":[{"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/types\/doc"}],"version-history":[{"count":179,"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/doc\/8907\/revisions"}],"predecessor-version":[{"id":44223,"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/doc\/8907\/revisions\/44223"}],"up":[{"embeddable":true,"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/doc\/8905"}],"wp:attachment":[{"href":"https:\/\/coderpad.io\/wp-json\/wp\/v2\/media?parent=8907"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}