The coding challenge is optional if you already have some code that you're proud of and can share with us.
If you have existing code, please follow the following guidelines:
- Include a link to the hosted repository (e.g. Github, Bitbucket...). We cannot review archives or single files.
- The repo should include a README that follows the principles described below In particular, please make sure to include high-level explanation about what the code is doing.
- Ideally, the code you're providing:
- Has been written by you alone. If not, please tell us which part you wrote and are most proud of in the README.
- Is leveraging web technologies.
- Is deployed and hosted somewhere.
Regardless of whether it's your own code or our coding challenge, write your README as if it was for a production service. Include the following items:
- Description of the problem and solution.
- Whether the solution focuses on back-end, front-end or if it's full stack.
- Reasoning behind your technical choices, including architectural. Trade-offs you might have made, anything you left out, or what you might do differently if you were to spend additional time on the project.
- Link to other code you're particularly proud of.
- Link to your resume or public profile.
- Link to to the hosted application where applicable.
Your application will be reviewed by at least three of our engineers. The aspects of your code we will judge include:
- Clarity: does the README clearly explains the problem and solution?
- Correctness: does the application do what was asked? If there is anything missing, does the README explain why it is missing?
- Code quality: is the code simple, easy to understand, and maintainable? Are there any code smells or other red flags?
- Testing: how thorough are the automated tests? Will they be difficult to change if the requirements of the application were to change?
- UX: is the web interface understandable and pleasing to use?
- Technical choices: do choices of libraries, databases, architecture etc. seem appropriate for the chosen application?