Skip to content

SynthetixLtd/developer-coding-exercise

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 

Repository files navigation

Coding Exercise Assessment

Overview

Congratulations on getting to the technical task stage of the Synthetix recruitment process! The purpose of this coding exercise is to evaluate a candidate's skills in developing a simple web application using the API documentation on apisandbox.synthetix.com, as well as their knowledge of a range of web technologies such as HTML, CSS, JavaScript, Vue.js, React, Angular2, PHP, Node.js, relational and non-relational databases, Git, AWS and cloud hosting. Phew.

Requirements

Full-stack developer roles ONLY

For this exercise, we'd like you to create a simple web application that allows users to search for articles on our knowledge base, and display the search results. Use all of the following:

  • HTML
  • CSS
  • JavaScript

...one of the these:

  • Vue.js
  • Svelte
  • React
  • Angular2

...and, finally, at least one of these:

  • PHP
  • Node.js
  • Databases (relational or non-relational)

We suggest using the following for version control and deployment:

  • Git/GitHub
  • Cloud Hosting (any cloud provider - extra points for AWS and automated deployment)

The application should perform the following:

  1. The application should have a search box where users can enter a query and a search button to initiate the search.
  2. The application should use the Synthetix API to search for articles based on the user's query.
  3. The search results should be displayed in a list on the page, with the title, summary, and linking to the article.
  4. The user should be able to click on the link to view the full article inside your application.
  5. The application should have a clean and professional user interface.
  6. The application should be responsive and work well on desktop and mobile devices.

You'll find the endpoints needed for this task documented at apisandbox.synthetix.com.

Front-end developer roles ONLY

For this exercise, we'd like you to create a simple web application that allows users to search for articles on our knowledge base, and display the search results. Use all of the following:

  • HTML
  • CSS
  • JavaScript ...and one of the these:
  • Vue.js
  • Svelte
  • React
  • Angular2

We suggest using the following for version control and deployment:

  • Git/GitHub
  • Cloud Hosting (any cloud provider - extra points for AWS and automated deployment)

Here is the specification for the app we want you to build:

  1. The application should have a search box where users can enter a query and a search button to initiate the search.
  2. The application should use the Synthetix API to search for articles based on the user's query.
  3. The search results should be displayed in a list on the page, with the title, summary, and linking to the article.
  4. The user should be able to click on the link to view the full article inside your application.
  5. The application should have a clean and professional user interface.
  6. The application should be responsive and work well on desktop and mobile devices.

You'll find the endpoints needed for this task documented at apisandbox.synthetix.com.

Deliverables

Please submit the following deliverables:

  1. A link to your forked repository or a pull request to the original repository.
  2. An instructions.md file that contains instructions on how to launch the application.
  3. If you are hosting the code yourself (if possible - helps us!), you should provide a link or instructions on how to access the application.

Evaluation Criteria

Your submission will be evaluated based on the following criteria:

  • The application is simple, reusable, scalable, performs well, and follows best practices.
  • The code is well-organised, easy to read, and well-documented.
  • The code demonstrates a basic understanding of the selected technologies.
  • The instructions.md file is clear and easy to follow.
  • Have you gone over and above the basic specification we have provided to show us something more? Imagination is a plus at Synthetix.

Additional Notes

  • The API Keys required to interact with the apisandbox.synthetix.com API are provided in these instructions, below.
  • You are encouraged to reach out to your Synthetix contact with any questions you may have. Feel free!
  • Let us know if you want to use an alternative techolofy that we haven't listed above.
  • A session must first be initiated prior to any searches or article requests - you can't call the search or article API without a valid session.
  • Do not include any node_modules folders, as dependencies will be regenerated when running the code

API Keys

  • APPLICATIONKEY: 7b829f3aeaf04561471b8e258739da3d
  • CONSUMERKEY: 9800bcc32393905388563bb784b84720

We know that you have a life outside of a potential employer's technical tasks, so we recommend that don't spend more than a day on this and try and get it completed within 7 days of receipt. When you are finished, please send us an email with a link to your Git repository and/or hosted application. Good luck, and have fun! We can't wait to see what you create.

Releases

No releases published

Packages

No packages published