Congratulations to making it to this year's CodeIT Suisse Challenge.
This page provides all information to get you and your team started.
Please do find the time to digest everything here - there is a lot!
Do make a note of the following too:
Wear your name badge at all times. This allows for coaches and staff to know who you are.
Be open to staff members asking about your code. They should occasionally be reviewing the code you check in to Heroku.
Remember that your performance, regardless of end result, can have a positive impact on a future application to the internship program.
Don't be afraid to ask questions! We would rather help you than have you twiddle your thumbs.
And finally have fun!
Technology Stack
Make sure your weapon of choice is supported by Heroku.
We only evaluate solutions that are deployed on Heroku - our system will make call backs to your application/server.
It may be worth skimming through the challenges before finalizing your choice.
Reaching Out For Help
There are staff members around and also coaches assigned to your team. Please do feel free to reach out at any time during the competition.
If you cannot directly get hold of a member of staff, or rather have a more general question to ask, please ask on the Discord server.
Click on me!
Once logged in to the Discord server, if your username no where resembles your actual name, please PM Dave Ip and correct roles shall be assigned.
Challenges
Remember, the team who achieves the maximum total score will win. Your team is expected to solve as many
challenges as you can.
We have different challenges with different maximum scores. Higher scores likely means higher difficulty.
Most challenges will have multiple test cases/stages with increasing difficulty and increasing points.
Choose your strategy wisely.
Create your application in Heroku
- Create your project (Sample project templates available here)
- Execute below commands in the project root directory
- run "git init"
- run "heroku login"
- run "heroku create <your-team-name>" (team name has to be unique in heroku, try a different name if it already exists.)
- run "heroku access:add [email protected]" (or [email protected] if you are in Singapore)
- run "git push heroku master" (Note down the url of your app)
- Open Postman - send post request with input and verify your output.
Register Team
Provide the following information when registering your team. Only register your team once.
- Team name Show us some creativity! But be politically correct :)
- Url Use the heroku url of your app
- Members Let us know who you are. After all we need to know whom to give the prizes too :)
POST /api/teams
{
"name": "Code Monkeys",
"url": "http://code-monkeys.herokuapp.com",
"members": ["King Kong","Rafiki", "Abu"]
}
Evaluate Solution
You can evaluate your solution at any time, as many times as you want, but only one evaluation run per challenge
can run at any given time. Maximum score out of all the evaluation runs will be used as your final score of that challenge.
POST /api/evaluate
{
"team": "Code Monkeys",
"challenge": "MatrixDeterminant"
}
The response will contain the evaluation runId.
{
"runId": "b2df17ca-73e1-42ab-a2cf-0eda141c2200"
}
You can use this id to query the details of that evaluation run.
GET /api/evaluation-run/b2df17ca-73e1-42ab-a2cf-0eda141c2200
{
"runId": "b2df17ca-73e1-42ab-a2cf-0eda141c2200",
"team": "Code Monkeys",
"challenge": "Matrix Determinant",
"status": "COMPLETED",
"score": 100,
"message": "Passed: 10. Failed: 0",
"createdAt": "2017-09-23 13:30:00",
"completedAt": "2017-09-23 13:30:30"
}
Leaderboard
The ranking is based on the total number of scores across all challenges.
If multiple teams end up with the same score, we will rank them ascending on completion time.
Go to leaderboard
Questions?
If you have questions or run into issues, feel free to approach any of the coaches or ping us on Discord.
Have fun!
You are more than welcome to share your fun photos experiences over Facebook, Twitter, Instagram, ...
#CodeITSuisse