Topcoder offers a number of challenges where you are able to code solutions, submit ideas, or work on other activities to earn money (and TCO points). This article will go over exactly what you have to do in order to participate in Topcoder’s development challenges.
FIRST AND FOREMOST: If you ever experience any issues on the Topcoder platform, your first instinct should be to email email@example.com.
The first thing you probably want to do as a competitor is to see what challenges are available to you to participate in. You can find all available challenges on the Challenge Listings page.
On this page you will find individual challenges that display challenge titles, tags, as well as the timeline and prize money offered. For additional information on any of the elements you see on this page, simply hover your mouse over that specific area.
If you are logged in, the first challenges you’ll see on this page are the ones you are registered for at that moment. As you scroll through the challenges, note which phase the challenge is in. In particular, note which challenges are open for registration when searching for a competition. To make it easier, you can filter through challenges with the default filters in the menu on the right, or for more flexible options you can use the Filters button in the top right, which will help narrow down your search even more.
Great, you’ve found the challenge you wanted to compete in! Each challenge has its own dedicated page with the description of the challenge and links to relevant material. Let’s look at the different pieces of information you can find on this page that will help you become a worthy competitor.
This top area presents you with the number of winners for that particular challenge and the prize amounts they would receive. Upon your first visit to the page, you will be able to click the register button, but only do that if you plan on submitting by the deadline. Clicking the register button will allow you access to the private challenge forum as well as files you may need to complete your submission.
Expanding this bar will reveal all of the dates and times you need to know in order to submit your solution on time. Make sure you take special note of the “Submission” deadline as that is the specific time you need to submit your solution by or else it will be disqualified.
In the event that you are participating in a First2Finish challenge, you should be aware that the first person whose judged submission meets all of the requirements of the challenge will be awarded the prize and all submissions that follow the winner will not be reviewed.
These are the details of the challenge you are about to compete in. Be sure to read this section thoroughly before you begin so you do not miss any details. If something doesn’t seem quite clear or you need more information, ask your question in the Challenge Forum.
*Note, this link is not displayed until you register for the challenge
Clicking this link will take you to the private challenge forum where you can ask your questions to the copilot or to generally talk about that specific challenge (more on this later).
A few things change once you register for a challenge.
You may notice the challenge forum link becomes available. The challenge forum is VERY important. The challenge forum is where members of the contest and the copilot (the Topcoder member who manages the challenge) post messages to each other. In most circumstances, the materials relevant to the challenge will be attached in the forum.
Sometimes, some download materials may also be available on the right side of the page.
The challenge forum is where members of the contest and the copilot (the Topcoder member who manages the challenge) post messages to each other. Once you registered a challenge, you will watch the forum automatically so that you will receive email notifications whenever a new thread is posted.
If you don’t want to receive email notifications, you can click the “Stop Watching Forums” link to stop watching the forum. But it isn’t recommended to do this.
As a default, there are two sections in the forum: Code Questions, and Code Documents.
The copilot will sometimes post relevant material to the challenge in the thread “Code Documents” so make sure to view or download those files first.
If a contestant (including you) has a question, needs clarification on something, or finds an issue while working on the challenge, then during the challenge they may post in the “Code Questions” section. Be aware that clarifications and updates posted by the copilot in the forum will override the original specs in case of conflicts, which is another reason to watch the forum upon starting the challenge.
Everyone is usually friendly and helpful, however remember that this is a contest and you’re not allowed to share any actual submission details that would give any other competitors an unfair advantage.
To figure out what you have to do for a challenge, read the description to determine what the challenge is asking for. Specifically, look at the “Final Submission Guidelines” section to determine exactly what you need to provide in your submission.
Prepare your submission according to the challenge requirements. Typically, you should create a folder where you’ll put all your deliverables and verification instructions for the reviewers. The actual content and its structure will vary. For example:
A challenge asks you to submit a Git patch for a codebase. Your submission folder should have the Git patch file and a README.md doc, which will contain any instructions and information for your submission. The README.md doc should be submitted as a separate file and not part of your git patch file as it should not be committed into the codebase. Information such as: the base commit where your patch should be applied, how to reproduce the bug you were fixing, how to see it is fixed, etc. should belong in this document.
A challenge asks you to create a new codebase. Your submission folder should contain a sub-folder with the codebase. Most of the deployment and usage instructions will go into a README.md file located in the codebase. Any additional instructions should be located in the verification.md file in the root folder of your submission.
A challenge asks you to create a virtual machine image, which has a large size. In this scenario you will want to upload the VM to Google Drive or similar service that allows verification of the last modification time of uploaded files and include a link to it into a text file that you submit to the Topcoder system. In certain cases, if the exact instructions were not given in the challenge specifications, it is always a good idea to double-check the exact submission format with the challenge copilot.
Be sure to note the Review Scorecard to determine how to focus your submission. Click the link on the challenge details page to see what the review scorecard will be grading you on. This is the rubric the challenge reviewers will use to rate your submission.
Always be mindful of when the deadline is and remember that if you are competing in a First2Finish challenge you should submit as soon as you have met the requirements.
When you’re finished with your submission, zip up the files and submit it to be reviewed.
To formally submit your submission, go to the challenge details page and press the “Submit” button.
A new page will show up. Drag & Drop your .zip submission to the submission area or click the “Pick a File” button to upload your submission from your local drive. It should be pretty straight forward from here.
Once your submission is uploaded, check the box to agree to the terms, and press the submit button.
And now your submission is submitted! If you want to change something before the deadline, you are able to submit again (which will overwrite your old submission). Only the latest submission will be judged by the reviewers and the submission time will be used to break any ties in the event that multiple competitors received the same score.
You can view the status of your submission by clicking the “Review Scorecard” button on the challenge details page that we had displayed earlier.
When looking at the Review Scorecard, click the “My Open Projects” tab at the top of the page. It is here that you can see all challenges that you’re registered for.
Click a challenge to see it’s details.
From here you are able to see the phases of the challenge, see the judge’s comments when they become available, and also make your appeals.
Once the submission deadline is over, the review begins. The copilot (and/or reviewers) will review all of the submissions for that challenge. They’ll judge the submissions based on the challenge description and the review scorecard.
Once the review phase ends, the appeals phase begins. This is important, because if you feel that a reviewer has misjudged your submission, you can write a message “appealing” to them by identifying why your submission should be scored higher. You are only allowed to appeal reviewer mistakes or any inconsistencies in the scoring of your solution. Once you have either submitted your appeals or agree with your reviews; press the “Complete Appeals” button, which signals that you are done with your appeals. If every competitor has pressed that button before the scheduled end of the Appeals phase then the phase will be closed earlier, saving time for both you and the project.
When you click the “Complete Appeals” button, a secondary confirmation page will be prompted. Click “Confirm” to complete the appeal.
The page will be redirected back and the link now shows “Resume Appeals”. If you think you need to resume the appeal, you can click it.
Once the Appeals phase ends then the Appeals Response phase begins, which is where the reviewers will check everyone’s comments and amend the scoring if necessary. Once that phase finishes, the challenge ends.
You will get email notifications when each phase of the challenge begins and ends.
The challenge is over when the Appeals Response phase ends. You can go back to the challenge details page (or click the link in the email you get) and a list of winners and scores for each submission will become available.
The challenge is officially over. The competitors who placed will be awarded their prize money. Note: Each scorecard specifies the minimal score threshold necessary to qualify for a place. If your score is lower than the threshold, you will not be awarded a prize.
For Code, Assembly, and UI Prototype challenges — after the challenge is over, you are able to download the submissions of other submitters if and only if your submission passed review. Note that different tracks of challenges have different score thresholds for passing review.
After the challenge is over, you can visit the Online Review page of the challenge and click the link of the submission to download it.
Although you may not have won the challenge, your hard work is still rewarded because by being able to download other’s submissions (especially the winning submission), it is very helpful to learn why the winner was able to obtain a higher score. Then in your next challenge you will be even that much more prepared.
The Topcoder community is not only a crowdsourcing platform, but also an important and useful learning vehicle for you to enhance and improve your technical skills.
Shortly after a challenge ends, prize money is awarded to the winners. To see your prize money, click “COMMUNITY” and then “Payments”.
Here are some notes to remember about payments:
It may take up to 24 hours for a payment to appear in PACTS.
If you haven’t already, you should fill out and submit a W-9 or a W-8BEN. Click here for more information.
Your payment methods are either through Paypal, Payoneer, or Western Union. For more information you can click here.
Each prize payment is on hold for 30 days.
The Challenge ID is the unique identification of a challenge. You can easily access challenge related pages if you remember the ID.
How to get the challenge ID? Note that the URL form of a challenge page https://www.topcoder.com/challenges/
You can get the URL from the address bar of your browser when visiting a challenge page. For example, if the URL is https://www.topcoder.com/challenges/30063881, then the Challenge ID is 30063881
At this point, you can easily access:
(1) The challenge page by visiting https://www.topcoder.com/challenges/
(2) The Online Review page of the challenge by visiting https://software.topcoder.com/review/actions/ViewProjectDetails?pid=