This repository contains the technical assessment for Junior DevOps candidates at UNIwise.
If you're applying for this position, please complete the assignment detailed below. While the assignment is intentionally open-ended to allow you to demonstrate your skills, please ensure you meet all specified requirements.
At UNIwise, we value quality over quantity. This means we prioritize working, well-structured code over partially completed features. Your code should be readable and follow consistent formatting conventions.
This project includes a Docker Compose setup, but there are several issues preventing it from running properly. Your tasks are:
- Get the project running in containers:
- Configure and run the project with all dependencies using Docker Compose:
If time permits, consider completing any of these additional tasks:
- Implement CI:
- Choose your preferred CI tool
- Document your implementation with screenshots in
handin.md
or provide access to the CI platform - Consider including:
- Basic
go build
verification - Unit tests
- Image pushing to a registry
- Basic
- Add unit tests
- Optimize the Dockerfile for minimal size
- Implement "shift-left" practices using linters or similar tools
- Create Kubernetes deployment files using:
- Kustomize
- Raw Kubernetes YAML
- Helm chart
- (You can use Minikube, Kind, or MicroK8s for local testing)
To submit your assignment:
- Fork this repository
- Create a
handin.md
file in the root directory containing:- Setup and running instructions
- Documentation of any unresolved issues or challenges
- Your thoughts and considerations about the assignment
- Grant repository access to the UNIwise reviewers as specified by your contact person. If you've used external platforms (e.g., CI services), please ensure reviewers have access to those as well.
Good luck and happy coding!