This is a solution for Oden Technologies's Cable Diameter Challenge.
The solution calculates a one minute Simple Moving Average(SMA) of the cable diameter that is updated once per second.
- Handle errors - my (lack of) error handling had more to do with pragmatism than oversight
- Add authentication and authorization
- Improve/Add unit tests - I added just enough tests case to give insight into how I test code
- Manage application secrets through environment variables - I like https://cloud.google.com/secret-manager
- Document packages better. Ideally by adding a README.md into the subfolders
- Add more metric types
- Better abstraction for metric registration
- Eventually CI/CD, IaC, collect application metrics, document endpoints(OpenAPI Specification)
- Load IoT metrics into a time series database and visualize the data through a interactive application.
docker-compose up
make test