A practical, hands-on assessment for platform and infrastructure engineers. This test evaluates real-world skills through a working-but-suboptimal microservices setup running in a sandboxed Kubernetes environment.
This interview test presents a working microservices application deployed on a local Kubernetes cluster (k3s in Colima). While the application runs, it has several areas that need improvement. Candidates choose one path to focus on, demonstrating their expertise in that domain.
- Environment: k3s Kubernetes cluster running in Colima (fully sandboxed)
- Application: A simple e-commerce system with microservices and a database backend
- Infrastructure: OpenTofu configurations and Helm charts
- Time: 3-4 hours (we respect your time - this is not meant to be a week-long project)
Select ONE path that best matches your interests and expertise:
Focus: Assess and refactor the infrastructure code following IaC best practices.
Focus: Assess observability gaps and implement a monitoring stack.
Focus: Audit, identify vulnerabilities, and harden the infrastructure.
Focus: Design and implement automated deployment pipelines.
- Colima installed
- kubectl installed
- OpenTofu >= 1.11 installed
- Helm installed
- Basic familiarity with Kubernetes and Docker
- 8GB+ RAM available for the VM
-
Start the environment:
./scripts/setup.sh
This will start Colima with k3s, build and deploy the application stack.
-
Explore the environment: Familiarize yourself with what's running and how it's configured.
-
Choose your path: Read the instructions in your chosen path directory under
paths/. -
Work on your solution: Make improvements according to your chosen path.
-
Document your work: Update
SOLUTION.mdwith what you changed, why, trade-offs, and what you'd do with more time.
We're looking for:
- Problem identification: Can you find and articulate what's wrong?
- Technical competence: Does the solution work? Is it production-ready?
- Design thinking: Are trade-offs well-considered?
- Pragmatism: Is the solution appropriately scoped?
- Communication: Are decisions clearly explained?
- Ensure your solution works end-to-end
- Complete the
SOLUTION.mddocument - Create a git bundle:
git bundle create solution.bundle --all - Send the bundle file back to us
If anything is unclear or you encounter issues with the environment setup, please reach out. We want you to spend time on the engineering challenge, not fighting tooling.
- You're not expected to complete everything perfectly in 3-4 hours
- We value working code over perfect code
- Document what you would improve given more time
- Feel free to add tools or technologies you think are appropriate
- The goal is to simulate real platform engineering work