Hey! We are excited that you are interested in joining the team at Regov Technologies.
We feel that the best place to really show us your skills is somewhere you feel comfortable. This test should not take you a long amount of time to complete.
This take home test is used to determine how you go about solving problems logically, as well as building out easy to use, API End points. This test is open to interpretation and implementation.
Managing product inventory requires adding products to a product catalog and adding warehouses to store the products. A system administrator control access rights for users.
Develop a backend app that exposes APIs for managing inventory with the following features:
- Add product
- Add warehouse
- Stock
- Unstock
- List product
- List warehouses
- List warehouse
- Delete product
- Delete Warehouse
- Manage users
- As a user I can register.
- As an admin i can approve registration, reject, suspend, and delete users.
- As a user I can login in only after approval and do the following on a product:
- Add product
- List products
- Add warehouse
- List warehouse
- List warehouses
- Delete product
- Delete warehouse
- As a user I can logout from the system
- As an admin i can login to manage users
Feel free to go above and beyond if you have ideas for extra features!
- Use Node.js | Python
- Dockerise the application
- The project structure is up to your decision.
- You are recommended to use git commits in a logical manner to demonstrate the development progress
- Writing tests and adhering to development standards/conventions will attract extra points.
- Writing design documents will attract extra points :)
- Send your implementation in Git Repo.
Please include a README file with a quick description of your solution, the thought process, and any points you'd like to highlight. It will help us during the review, where we'll look at:
- VCS history
- the project structure,
- the project architecture,
- coding practices,
- consistent coding style and formatting,
- namings and naming conventions,
- good use of comments,
- lint warnings and code smells
- unit & integration tests