Currently Empty: $0.00
Legendary Ways Academy · Portfolio
Real-World DevOps Projects, Build the Proof
A certificate says you studied something. A working project you built, broke, and fixed says you can actually do the job. Here are seven projects that build a real portfolio.
7 real projects
Beginner to advanced
Portfolio-ready
Every topic covered in this curriculum, Linux, Bash, Git, CI/CD, Docker, Kubernetes, Ansible, AWS, security, and observability, is genuinely useful in isolation, but hiring managers and technical interviewers care most about whether you can put them together into something that actually works. A real project, one you built, broke, debugged, and eventually got working end to end, is dramatically stronger portfolio evidence than a certificate or a list of topics studied. This guide walks through seven concrete projects, ordered from beginner to advanced, each combining several of the topics above into something you can point to, demo, and talk through in an interview.
Beyond the seven project descriptions themselves, this guide covers which skills each project actually proves so you can prioritize based on the roles you’re targeting, a realistic timeline for building a portfolio alongside an active job search rather than delaying applications indefinitely, how to keep projects working and credible months after you first build them, and how to actually talk about a project convincingly once you’re sitting in the interview.
Project 1: CI/CD Pipeline for a Simple Web App
Beginner
Automated build, test, and deploy for a small app
Take any small web application (a to-do list, a simple API) and wire up a full GitHub Actions pipeline: run tests on every pull request, build the app on merge to main, and deploy it automatically to a free-tier hosting platform. Add a status badge to the README.
Stack: GitHub Actions, any small app, a free hosting platform (Render, Railway, Vercel)
This is deliberately the simplest project on this list, and that’s the point: it directly demonstrates the core CI/CD concepts from our CI/CD pipelines guide without requiring infrastructure knowledge yet. It’s also the fastest project to actually finish, which matters if you’re building a portfolio from zero and need an early, real win.
Project 2: Multi-Container App With Docker Compose
Beginner-Intermediate
A real app, its database, and a cache, running together
Containerize an application with a proper multi-stage Dockerfile, then use Docker Compose to run it alongside a Postgres database and a Redis cache, with environment-specific configuration and a named volume for persistent data.
Stack: Docker, Docker Compose, Postgres, Redis
This project proves you understand the layer caching, multi-stage builds, and networking concepts from our Docker guide, not just “I ran docker run once.” Document the setup clearly enough that someone else could clone the repo and get it running with one command.
Project 3: Deploy to Kubernetes With Autoscaling
Intermediate
The same app, orchestrated and auto-scaling
Take the containerized app from Project 2 and deploy it to a local Kubernetes cluster (Minikube or kind) with a Deployment, Service, ConfigMap, and a Horizontal Pod Autoscaler. Load-test it to trigger a real scaling event and capture it.
Stack: Kubernetes, Minikube or kind, kubectl, a load-testing tool like k6
This directly applies the Deployment, Service, ConfigMap, and autoscaling concepts from our Kubernetes guide. Recording a short screen capture of the autoscaler actually adding pods under load is a strong, concrete artifact to reference in an interview.
Project 4: Provision Real Cloud Infrastructure With Terraform
Intermediate
Infrastructure as code, provisioned and configured
Write Terraform to provision a VPC, an EC2 instance (or a small ECS setup), and an RDS database on AWS, using the free tier. Follow it with an Ansible playbook that configures the server once it’s provisioned. Store Terraform state remotely in S3.
Stack: Terraform, AWS free tier, Ansible
This is the project that most directly demonstrates the provisioning-then-configuration pattern covered in our Terraform and Ansible guides, and the core AWS services from our AWS guide. Remember to run terraform destroy when you’re done experimenting to avoid ongoing charges.
Project 5: Full Observability Stack
Intermediate-Advanced
Metrics, dashboards, and a real alert that fires
Instrument an application with Prometheus-format metrics, run Prometheus and Grafana locally via Docker Compose, build a dashboard around the four golden signals, and write an alerting rule. Deliberately break something and capture the alert firing and the dashboard reflecting it.
Stack: Prometheus, Grafana, the application from an earlier project
This directly applies the instrumentation, dashboarding, and alerting practices from our monitoring and observability guide. The “break something on purpose and show the alert catching it” step is what separates a project that proves real understanding from one that just displays a pretty dashboard with no working alerting behind it.
Project 6: A Pipeline With Automated Security Scanning
Advanced
DevSecOps, built into an existing pipeline
Add SAST, dependency scanning, secrets detection, and container image scanning to the CI/CD pipeline from Project 1, configured to fail the build on critical findings. Intentionally introduce a vulnerable dependency and a fake secret to prove the checks actually catch them.
Stack: Semgrep, npm audit or Trivy, Gitleaks, GitHub Actions
This applies the scanning categories from our DevSecOps fundamentals guide directly. Documenting a before-and-after, “here’s the pipeline failing on a real vulnerable dependency, here’s it passing after the fix”, is compelling, specific evidence of security awareness in an interview.
Project 7: Capstone, Everything Together
Advanced
One project, every topic in this curriculum
Combine every project above into a single, coherent system: a real application, containerized, deployed to Kubernetes on real cloud infrastructure provisioned by Terraform and configured by Ansible, with a full CI/CD pipeline including security scanning, and a complete observability stack with alerting.
Stack: Everything above, integrated
This is the single strongest portfolio artifact a career changer can build, and it’s genuinely what our bootcamp curriculum is structured around producing by the end of the program. It doesn’t need to be a large or commercially useful application; the DevOps tooling wrapped around it is the actual point.
Which Skills Each Project Actually Proves
Different companies and interviewers care about different parts of the DevOps skill set, so it’s worth being deliberate about which projects to prioritize based on the kinds of roles you’re targeting. If you’re aiming at roles heavy on application delivery, Projects 1, 2, and 6 (CI/CD, containers, and pipeline security) demonstrate the most directly relevant skills. If you’re targeting roles closer to platform or infrastructure engineering, Projects 3 and 4 (Kubernetes and Terraform/Ansible) carry more weight. Project 5 (observability) and the Project 7 capstone are valuable across nearly every DevOps-adjacent role, since reliability and end-to-end system thinking matter regardless of specialization.
It’s also worth explicitly connecting each project back to the specific guide it draws from when you write it up: a README that says “this project applies the layer-caching and multi-stage build practices covered in [our Docker guide]” signals that you understand the underlying concept, not just that you copied commands that happened to work.
Building a Portfolio on a Realistic Timeline
Trying to build all seven projects before starting a job search at all is a common, well-intentioned mistake that delays applying far longer than necessary. A more effective approach: build two to three solid projects first (typically Projects 1, 2, and one of 3 or 4), start applying and interviewing while continuing to build additional projects in parallel, and treat later projects as ongoing proof of continued growth rather than a gate you must clear before you’re “allowed” to apply anywhere.
This matters because the job search itself takes time regardless of portfolio depth, first-round screens, technical interviews, offer negotiation, so there’s little practical benefit to delaying the start of that process by weeks or months waiting for a “complete” portfolio that no employer is actually expecting. A candidate with two genuinely well-understood projects, ready to discuss in real depth, consistently outperforms a candidate with seven shallow ones they can’t confidently explain under interview pressure.
Keeping Projects Alive After You Build Them
A project that was working three months ago but silently broke since (a dependency updated, a free-tier service changed its API, a certificate expired) is a bad surprise to discover mid-interview when a hiring manager asks to see it live. Revisit your portfolio projects periodically, confirm they still run, and treat necessary fixes as an opportunity to demonstrate the exact kind of ongoing maintenance discipline covered in our support and maintenance guide, applied to your own work instead of a client’s.
How to Present These Projects
A GitHub repository alone isn’t self-explanatory to a hiring manager skimming quickly. A strong project README explains what the project does, the architecture (a simple diagram helps enormously), how to run it locally, and specifically what DevOps concepts it demonstrates. Linking to a short screen recording or a live demo, where feasible, is more persuasive than a wall of text, since it proves the thing actually runs rather than asking a reader to trust that it does.
In interviews, be ready to talk through what broke during the build and how you debugged it, not just the final working state. Interviewers specifically probe for this, since the debugging process reveals far more about real capability than a project that (as far as the interviewer can tell) worked perfectly on the first attempt.
Common Mistakes to Avoid
Building every project in isolation with no connection between them is a missed opportunity; reusing the same application across Projects 2 through 6 (as suggested above) means each new project adds a layer of DevOps capability onto something already familiar, which is both faster to build and easier to explain coherently as a portfolio narrative. Skipping documentation is another common mistake: an impressive project with no README explaining what it demonstrates gets skimmed past rather than actually understood by a busy reviewer. Finally, leaving cloud resources running after finishing a project is an easy way to rack up unexpected charges; always tear down what you provisioned once you’ve captured what you need from it.
Frequently Asked Questions
Do I need to build all seven projects before applying to jobs?
No. Two or three well-documented projects, ideally spanning CI/CD, containers, and one cloud/infrastructure project, are enough to have real, specific things to discuss in an interview; more depth on fewer projects beats shallow coverage of all seven.
Should these be entirely original ideas, or is following a guide okay?
Following a structured guide is completely fine as a starting point; what matters for interview credibility is that you understand every piece well enough to explain and modify it, not that the underlying idea was entirely your own invention.
How long should each project realistically take?
Projects 1-2 typically take a few days each; Projects 3-5 a week or more; the capstone in Project 7 can reasonably take several weeks, especially the first time integrating everything together.
Where should I host these projects for a portfolio?
Public GitHub repositories with clear READMEs are the standard; linking them directly from your resume and LinkedIn, alongside a short summary of what each demonstrates, makes them easy for a recruiter or hiring manager to actually find and review.
Can I use these project ideas for a work sample during an interview process?
Yes, many companies specifically ask for a take-home project or code sample, and a well-documented version of one of these builds (particularly Projects 1, 2, or 6) often satisfies that request directly, or can be adapted quickly to match the specific prompt given.
Do employers actually check GitHub links on a resume?
Not universally, but technical interviewers and hiring managers at companies that care about hands-on skill frequently do, especially when a candidate’s resume otherwise lacks direct production experience; it’s one of the highest-leverage things a career changer can control.
Turning a Project Into an Interview Story
Beyond having the project itself, the way you talk about it in an interview matters enormously. A strong answer to “tell me about a project you built” follows a clear shape: what problem the project solved or what skill it was meant to demonstrate, a specific technical decision you made and why (not just what tool you used, but why that tool over an alternative), a real obstacle you hit and how you debugged it, and what you’d do differently if you rebuilt it today. That last part, a candid reflection on what you’d change, signals genuine understanding far more convincingly than a purely positive account with no acknowledged rough edges.
Practicing this narrative out loud, not just having it mentally organized, meaningfully improves how it lands in a real interview under time pressure. Most candidates undersell strong projects simply because they’ve never actually rehearsed explaining the interesting technical decisions concisely, and end up either rambling through unimportant setup details or skipping the genuinely impressive parts because they assume they’re obvious.
Related reading: see our full DevOps career roadmap, compare DevOps bootcamps if you want a structured path through these projects, or return to the full topics overview to revisit any concept these projects depend on.




