You can create many task types through the CodeSignal UI. If you'd like to create a different type of task that you don't see here (e.g. user interface, DevOps, mobile, etc.), contact your Customer Success Manager with your idea and our team will assess feasibility.
Jump to a task type:
- Single-Function Algorithmic Task
- Quiz Task
- Free-Coding Task
- Free-Text Task
- Frontend Task
- Filesystem Task
- SQL/Database Task
- Task Notes
Task creation video walk-through
Task creation steps
1. From your CodeSignal account click on the Task Library icon on the upper right side of the screen and you will be taken to your task library.
2. Click + Create Task.

3. You will be taken to a page where you can choose the type of task you want to create. Select a task type and click CREATE or NEXT (will vary depending on task type).
I. Create a Single-Function Algorithmic Task
1. In the SETTINGS tab, add a title, description, and a label if needed for your task.

2. Go to TIMEOUT tab and edit the execution time limit for all languages as needed.
3. Click on Input/Output to add descriptions of what the input(s) will be and what the output should be as well as set the input parameters for randomly generating.
4. Choose how many tests to make visible. Here you have 2 options:
- Show the first half of your test, or
- Manually set the amount of the first visible tests
5. On the lower right side of the screen, under Tests, click on ADD TEST to add at least one test case with which to evaluate the submitted code.
6. Add the Author solution and run it to make sure all tests are passing.
7. Click on RANDOM TEST to automatically generate test cases.
8. On the upper right side of the screen, under Code, the system generates a starter code snippet that contains the desired function name and the name of the input(s).
9. Once you’re done creating the task, you can click PREVIEW to view your task in advance of public presentation. Then click Save. Your task will now be available to use.
II. Create a Quiz Task
1. Enter a task name, description, label (optional), and a number of answer choices for candidates to select from.
2. Write an answer description for each answer choice and toggle "Correct answer" on for the answer that is correct.
3. Click the "Multiple Choice" text box if you would like to allow more than one correct answer choice.
4. Click the “Don’t shuffle answers” text box if you don't want the answers to be randomly shuffled.
5. Once you’re done creating the task, you can click PREVIEW to view your task in advance of public presentation. Then, click Save. Your task will now be available to use.

III. Create a Free-Coding Task
1. In the SETTINGS tab, enter a task title, description, label(s) if needed, and starter code.
2. Go to TIMEOUT tab and edit the execution time limit for all languages as needed.
3. Click on the LANGUAGES & CODE tab to configure languages for this task.
If you want to limit languages for this task just toggle on the Limit the languages available button. Then select the language and click on the arrow pointing right to exclude it from your list of available languages.
4. Once you’re done creating the task, click SAVE. Your task will now be available to use.
IV. Create a Free-Text Task
1. Enter a task title, description, and label(s) if needed.
2. Once you’re done creating the task, you can click PREVIEW to view your task in advance of public presentation. Then click Save. Your task will now be available to use.
V. Create a Frontend Task
Please see our article on setting up and configuring frontend tasks:
VI. Create a Filesystem Task
Please see our article on setting up and configuring filesystem tasks:
VII. Create a SQL Task
Please see our article on setting up and configuring SQL/database tasks:
VIII. Creating Task Notes
Note: To create or edit a task note, you must have an admin or manager role or a custom role with this permission.
1. Once you create your task, click on the three lines icon on the left side of the IDE to edit the task notes.
2. Click SAVE button to save your task notes.
Questions? Email support@codesignal.com