This document goes through some questions and thoughts on improvements that could be done if given more time
- There should be much more testing done in order to make sure that the intervals are correct.
- The storage module interface should be implemented by other storage solutions such as a db, key value store or maybe just an external file in JSON or similar.
- Third party dependency for checking for holidays, Nager.Date, is not tested
- Error handling could be improved with better error messages to the client
- Logging could be enabled.
- Some more optimzations could be done for the usage of the storage module. As of now, stored values are read on every request, an improvement could be to cache it.