My DevOps Journey: From Curious Beginner to Confident Engineer

Monica SubishMonica Subish
5 min read

When I first stumbled across the term DevOps, it felt like tech’s best-kept secret—a mix of mystery and magic powering modern infrastructure. Coming from a Linux admin and infrastructure background, I quickly realized that DevOps wasn’t just a buzzword—it was a mindset, a career path, and a community.

In this post, I’ll walk you through how I navigated from confusion to clarity, the hands-on projects that brought theory to life, and the lessons that transformed my skills. Whether you're a beginner taking your first steps or a recruiter peeking into my journey, I hope this resonates with you.

🌱 The Beginning: Asking the Right Questions

My journey began with one simple question:
“How do modern applications run reliably in the cloud?”

That led me down a rabbit hole filled with Git, Docker, CI/CD pipelines, and cloud services like AWS. Tutorials were helpful, but actually deploying code, breaking things, and fixing them? That was the real teacher.

In the beginning, everything felt overwhelming. I didn’t know where to start. Some terms felt interchangeable, and others just didn’t make sense. I saw tools like Docker, GitHub Actions, AWS, and Terraform being thrown around in tutorials and job posts, but I didn’t know how they all fit together.

So, I did what most people do: I started Googling, watching YouTube videos, and signing up for beginner courses. I followed tutorials — even if I didn’t fully understand what each command was doing at first. My first small wins, like spinning up a web server using a bash script or pushing code to GitHub and seeing it deployed, gave me the confidence to keep going.

🧰 Building Blocks: Core Skills That Changed the Game

Here’s how I structured my learning to avoid overwhelm:

🏗️ Fundamentals First

  • Linux CLI, Git workflows, SSH—my bread and butter.

☁️ Cloud & Infrastructure as Code

  • AWS (EC2, S3, IAM), Terraform, Ansible.

  • Automating server setups felt like unlocking cheat codes.

📦 Containers & CI/CD

  • Docker, Docker Compose, GitHub Actions, Jenkins.

  • Containerizing apps and automating deployment made it all click.

📊 Monitoring & Kubernetes

  • Grafana + Prometheus, ArgoCD, Helm, Kubernetes clusters—where I’m digging deeper now.

🛠️ Hands-On Projects That Built My Confidence

I didn’t rush — I gave myself time to repeat exercises and break things on purpose to understand how they worked. Slowly, the puzzle pieces started to fit together.

No amount of tutorials can replace the lessons you learn when you start building and breaking things yourself.

After getting a decent grip on the basics, I set up a small lab environment on my laptop and in the cloud using AWS Free Tier. My goal was simple: build something end-to-end using DevOps tools — even if it was small.

📁 Project💡 Skills Learned
Static website on AWSS3 hosting, IAM policies, DNS with Route53, Terraform
Node.js app with DockerDockerfiles, Compose, MongoDB integration
CI/CD with GitHub ActionsAutomated testing, ECR pushes, EC2 deployment
GitOps with ArgoCDKubernetes, Helm Charts, declarative deployments

These projects weren’t flawless — I ran into errors, misconfigurations, and lots of frustrating moments. But every mistake became a learning moment.

Each project connected another dot in the DevOps lifecycle. Seeing code turn into deployments was powerful—and addictive.

💡 Challenges I Faced & Lessons I Learned

No learning path is perfect — and mine certainly wasn’t. I faced roadblocks, self-doubts, and a lot of Googling. But looking back, each challenge taught me something important.

🧱 Overwhelm from Too Many Tools

Early on, I tried to learn everything at once — Docker, Jenkins, Terraform, Kubernetes, and AWS… all in the same week. That led to burnout and confusion.

Lesson: Stick to one concept/tool at a time. Master the fundamentals before jumping to the next thing. I learned to build a roadmap and follow it step-by-step.


🐛 Fear of Breaking Things

I hesitated to try new commands or deploy code in my practice environments out of fear that I might mess something up. Ironically, that slowed down my learning.

Lesson: Breaking things is part of DevOps! I started setting up test environments and intentionally causing errors to understand how to fix them. That hands-on trouble made me confident.


🕰️ Time Management

Learning DevOps while managing work, study, or personal responsibilities isn’t easy. I often felt like I wasn’t making enough progress.

Lesson: Consistency > speed. Even 30–45 minutes a day made a big difference. I used Notion to track my daily learning and projects, which helped me stay focused.


😓 Impostor Syndrome

I questioned myself constantly — “Do I really understand this?” “What if I’m not cut out for this?” Especially when looking at job descriptions filled with 20+ tool requirements.

Lesson: Everyone starts somewhere. Even senior DevOps engineers once Googled “What is CI/CD?” I learned to compare myself only to my past self, not to others online.


🧩 Connecting the Dots

Sometimes I understood individual tools but struggled to see how they fit into a complete DevOps pipeline or workflow.

Lesson: I started building end-to-end projects — even small ones — to see the full picture (e.g., code > Git > CI/CD > deploy > monitor). That made everything click.


💼 What This Means for My Career

DevOps sharpened not just my technical skills, but my approach to solving problems. I can build secure, automated, cloud-based solutions with confidence. I’m continuing to grow—currently diving into Kubernetes, GitOps, and soon, the Go programming language.

📢 If you’re a recruiter looking for someone who’s not afraid of YAML-induced headaches, who thrives in hands-on learning and continuous improvement—I’d love to connect.

📚 If you’re a beginner, my advice is:

“Start small, stay curious, and don’t be afraid to break things. DevOps is learned by doing.”

0
Subscribe to my newsletter

Read articles from Monica Subish directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Monica Subish
Monica Subish

I design, automate, and deploy cloud-native solutions using tools like Terraform, ArgoCD, Jenkins, and Kubernetes on AWS. Passionate about making infrastructure scalable, secure, and self-healing. Currently documenting my DevOps journey through technical blogs and hands-on projects to empower developers and streamline operations. 🛠 Building in public. Learning always. Helping teams ship faster.