Task Developers Wanted

Are you an experienced freelance software developer? Would you like to help DevSkiller expand it’s collection of programming tasks? Consider contributing a custom-designed programming task to the DevSkiller archive today. Below, you’ll find the basic instructions for creating tasks for deployment on Devskiller. Your effort will help to make recruiting skilled developers easier.

General Task Creation Guide

Task creators at DevSkiller have the ability to add tasks using our special developer-friendly dashboard. The dashboard allows you to test tasks before they are submitted. Do not send us emails with tasks.

For every task you create, you must include:

  • Task Definition
    • A statement of the problem
    • Description of the task,
  • Difficulty Level
    • Set a difficulty level for your task: Easy, Medium, Hard
  • Solution
    • A properly-commented solution to the task
  • Story
    • A story that describes the task in real-world/business terms
  • Tags
    • Include one or more of the following tags along with your task: Algorithms, Basic Programming, Math, Data Structures (feel free to add additional tasks that add to the task meta information

Step-by-step guide to task creation

  • Task Definition must be clear and concise
  • It must be of a length that is both clear and interesting
  • Properly format your task definition, using industry standards
  • All task definitions must be grammatically correct

General guidelines for selecting appropriate tasks:

  • Tasks must be your original work and not copied from other sites
  • Solutions to your task cannot be easily available online
  • It shouldn’t be a standard problem (think outside of the box!)

General guidelines for setting the task:

  • Don’t ask the user to directly implement a specific algorithm instead describe the task as a story problem. For example, “You are the owner of a horse racetrack and need to build a simple application for managing your horses, their odds of winning, and list of races in which they participated. In addition create a way to add new horses, retire horses, add races, and generate simple stats on all horses in the system.”
  • Add as many test case files as you see fit. Feel free to cover corner cases.
  • Strive for easy test cases to encourage the completion of partial (naive) solutions.

View one of our tasks to get a better idea of what is required.
Programming task lifecycle

  1. Choose an appropriate project type und upload a ZIP file with project files. We will look for a project descriptor inside the uploaded ZIP package and will try to build your project to discover all unit tests.
  2. The system will prepare a candidate’s project template – all files that match verification tests file patterns will be removed from candidates project template.
  3. After inviting a candidate an individual workspace will be prepared for each candidate. The workspace will contain all files from candidate’s project template. During the test the system will forbid the creation or modification of files that match verification tests file patterns.

Join our Remote Task Development Team

If you’d like to create tasks for DevSkiller please contact tom.winter@devskiller.com