# RelianceHMO Frontend Developer Assessment Grading
## Candidate Info:
**Name**: William Olojede
## Final Score
56 / 120 ( 46.7% )
## 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 | 2 |
| | Case insensitive | 0 |
| | Reset when search is empty / provides a clear button | 0 |
| | Updates UI on keypress (Reactive search) | 3 |
| | Debounce on keypress | 0 |
| | Show loader while filtering | 0 |
| | | |
| 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 | 0 |
| | UI works appropriately | 0 |
| | | |
| Q4 | Successful Submission | 5 |
| | Successful Image Upload | 5 |
| | Render uploaded image in placeholder | 3 |
| | Show loader while submitting | 3 |
| | Update UI after submission | 2 |
| | | |
| Q5 | Maintain Layout on new route | 3 |
| | Add onClick to dropdown and provider grid. | 3 |
| | Style Page :D | 2 |
---
## Expectations / Comments:
### Task 1 :
- Nice work with the detailed error catching here. Extra points for that.
### Task 2:
- Lost points cause filter only works for absolute equality. Ideally it should've been case insensitive , and shouldn't use absolute equality i.e It should've used `string.contains()` or `string.indexOf()`.
- 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.
### 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 styling the dropdown appropriately. P.s styles were already available in App.scss.
### Task 4:
- Lost points for not sizing the image after successul upload.
- Lost points for not showing any submission indicator i.e a loading screen. Seems like you had plans to though.
- Lost Points for not reseting the form after submission, and not showing an appropriate successful submission view (An alert doesn't count [-_-] )
### Task 5:
- Lost points for not navigation to new route on clicking the autocomplete dropdown.