/training

🎓Training exercises

MIT LicenseMIT

Training Exercises

The purpose of these exercises is to evaluate the candidate or apprentice's designing and development abilities. We expect the code to be published publicly in a Github or Bitbucket repository. You can use any technology with which you you feel proficient. We suggest using Django for the Backend, React for the frontend, and PostgreSQL for the database.

Excercise

We have the following exercises available:

Optional Requirements

If you feel inclined and you have extra time, consider also completing the following activities related to code quality, testing and deployment.

Code Quality

  • Improve the code using Sophilabs' Guidelines.
  • Unit Test coverage above 90% both frontend and backend.

Deployment

Diagram of containers for the project

  • Use containerization through Docker to isolate your web server and database. A good starting point could be having 3 containers:
    • A Frontend Server, which hosts a Single Page Application and makes calls to a Backend Server to do any operation with the system.
    • A Backend Server, which exposes an API for operating with the system. It can contain the Admin Site to approve users.
    • A Database Server to store persistent data, using PostgreSQL or another database engine of your choice.
  • Deploy your project to be available publicly on Amazon Web Services, Heroku or a similar service.

Good luck!