👋 Hello and welcome to the DevOps Challenge! https://github.com/moonpay/devops-challenge
We're excited to see what you can do! This take-home exercise is your time to show off your technical skills and aptitude. We want to understand how you think, how you solve problems, and how you apply DevOps principles to real-world scenarios.
This exercise uses a simple Next.js application, but our focus is on your DevOps expertise—working with Containers, CI/CD, and Infrastructure as Code (IaC).
Note: For development setup, scripts, and project structure details, see DEVELOPMENT.md.
Deploy the provided Next.js application in a production-ready manner.
You should be comfortable with:
- Docker: Building and running containers.
- CI/CD & IaC: Tools like GitHub Actions, Terraform, etc.
- Orchestration: Kubernetes (GKE or local).
- Git: Version control.
- Write a
Dockerfileto containerize the application. 🐳- Ensure it follows best practices for a Next.js application.
- Build and run the container locally to verify it works. 🛠️
- Deploy the application to Kubernetes (GKE or a local cluster such as kind, minikube, or Docker Desktop).
- Ensure the solution is as close to production-ready as possible. Consider aspects like:
- Security
- Scalability
- Reliability
- Demonstrate that the application is reachable and returns the Latest Crypto Prices. 🌐
This is a take-home exercise — complete it on your own time and submit when you're ready. We want to see your best work! Be prepared to walk us through your solution and decision-making during the interview.
If you use AI tools to assist with this challenge, please bring the prompts you used to the interview. The interviewers would like to understand how you arrived at your solution.
Good luck! 🍀