# RelianceHMO Frontend Developer Assessment Grading
## Candidate Info:
**Name**: Uche Jude
## Final Score
73 / 120 ( 60.8% )
## Score Breakdown
|**Question** | **Expections** | **Score**
|----|------------------------------------------------------|---|
| Q1 | Search works for query strings | 5 |
| | Catch no result | 5 |
| | Case sensitive | 5 |
| | Works for arrays | 5 |
| | | |
| Q2 | Filter Works | 5 |
| | Case insensitive | 5 |
| | Reset when search is empty / provides a clear button | 0 |
| | Updates UI on keypress (Reactive search) | 5 |
| | Debounce on keypress | 3 |
| | Show loader while filtering | 5 |
| | | |
| Q3 | Search Works | 5 |
| | Debounce on keypress | 0 |
| | Shows "no result" when search returns nothing. | 0 |
| | Clear search when input is empty | 0 |
| | Dropdown Items should be clickable | 5 |
| | UI works appropriately | 5 |
| | | |
| Q4 | Successful Submission | 0 |
| | Successful Image Upload | 0 |
| | Render uploaded image in placeholder | 0 |
| | Show loader while submitting | 0 |
| | Update UI after submission | 2 |
| | | |
| Q5 | Maintain Layout on new route | 5 |
| | Add onClick to dropdown and provider grid. | 5 |
| | Style Page :D | 3 |
---
## Expectations / Comments:
### Task 1 :
- Nice work with the detailed error catching here. Extra points for that.
### Task 2:
- Lost points for not reseting the list when the query is cleared.
- Filter should've been debounced for performance reasons i.e a delay should've been observed before performing filter, instead of performing it on every keypress. Saw a TODO there for this. So you get some points here for even being aware of its necessity.
### Task 3:
- Search should've been debounced for performance reasons i.e a delay should've been observed, to gather a considerable amount of input first, before performing search, instead of performing it on every keypress. This helps in reducing the amount of times a request is send to the server.
- Lost points for not hiding the dropdrown when the input loses focus.
### Task 4:
- Image upload not working
### Task 5:
- None.