The following exercise is to gauge the developer’s expertise in the various technology components used to create software at Bellese Technologies.
In this exercise you will be tasked with creating a simple inventory system for an item of your choosing. This item can be anything from characters in a movie, collectables (like trading cards), or pictures of cats. These items should be managed through a web interface that offers persistence through a database.
- There should be a front-end web interface that allows a user to
- View a list of all items in the inventory
- View a single item from the inventory
- Add an item to the inventory
- Edit/Delete an item the exists in the inventory
- There should be a RESTful API which handles all data transmission
- There should be persistence in the form of a simple database
- All items in the inventory should have multiple properties including
- An ID
- A name
- A description
- A picture
- Any other relevant fields
Bellese Technologies uses a wide range of technologies across the entire stack. Primarily, Bellese has a focus on using Angular 7 and greater, Go, and Postgres through various AWS services. If you do not have an aptitude in one of the aforementioned languages, you are encouraged to use a technology that will allow you to complete the exercise and demonstrate the relevant theoretical knowledge.
1. Frontend - should demonstrate a thorough understanding of the framework used in the solution and ui best-practices including event handling
2. Backend - should demonstrate best-practices with respect to route handling and REST
3. Database - the database, though small, should demonstrate best practices for data persistence
This is in no way a pass/fail exercise. The reviewers will be looking at the overall solution, what technologies were used, and how those technologies were implemented. The reviewers will also be looking at aspects of the approach that include code cleanliness and pattern usage. The developer should demonstrate a solid understanding of how the components of a tech stack come together to produce a functioning web application.