DEV Community

Sruthi
Sruthi

Posted on

2

πŸš€ Why I Started Learning Automation & DevOps

As a DevOps intern, I had to explore a wide range of tools. Coming from a web development background with Django and React.js, shifting to a DevOps role was slightly challenging. It forced me to step out of my development comfort zone and learn how to manage builds, deployments, and automate tasks.

At first, it was overwhelmingβ€”so many new tools, workplace jargon, and concepts. I even questioned if I had made the right choice or if I had what it takes to succeed. But as I started working with these tools, I slowly found my passion for them. More than fear, I started feeling excitement, and soon, my mindset shifted.

✨ What Sparked My Interest?

I quickly realized that managing infrastructure manually is inefficient and prone to errors. That’s when I jumped into the world of automation and DevOps tools like Ansible. The idea of automating tasks, reducing repetitive work, and ensuring consistency across multiple systems struck a chord with me.

🎯 Why Automation?

βœ… Reduce manual effort and repetitive tasks.
βœ… Learn how real-world infrastructure is managed at scale.
βœ… Gain hands-on experience with industry-standard tools.
βœ… Stand out in job applications with in-demand DevOps skills.
πŸ“š Facing the Learning Curve

When I started exploring tools like Ansible and Terraform, I quickly realized I needed a strong foundation in:

πŸ”ΉBasic Linux & Shell Commands – Commands like ls, netstat, cd, ping, and basic Bash scripting, since most automation tools interact with Linux servers.
πŸ”Ή SSH & Remote Connections – Secure communication between systems is critical for automation.
πŸ”ΉYAML – The language used in Ansible playbooks.
πŸ”Ή Configuration Management Concepts *– Understanding why automation is essential and how it maintains consistency.
πŸ”Ή **Python Scripting *
– A powerful language for writing automation scripts.
πŸ”Ή
Basic Database Connections** – Understanding how applications interact with databases.
πŸ”ΉLog Files & Monitoring – Keeping track of tasks, analyzing issues, and troubleshooting.
πŸ”Ή Jenkins & GitLab CI/CD Pipelines – Automating builds and deployments instead of doing them manually.

As I got my hands dirty with these tools, automation started making more sense. Every little step built my confidence and deepened my understanding.

πŸŽ‰ My First Automation Experience

One of my first tasks was setting up an SSH key to connect to a remote server without a password. At first, it seemed daunting, but as I explored it, things started clicking. It felt like a small win, but it also made me realize how automation can simplify things to a vast extent.

I also ran my first Ansible command to ping a remote machine:

ansible all -m ping

Seeing a successful response felt like magic! I was controlling remote systems with just a simple command. πŸš€

πŸ” How Does This Work?

When you run ansible all -m ping, Ansible follows these steps:

1️⃣ Inventory Check **– Ansible looks for an inventory file (usually /etc/ansible/hosts) to determine which machines to target. If no file is found, it defaults to localhost.
2️⃣ **Establishing Connection
– Ansible attempts to connect to the listed hosts over SSH.
3️⃣ Executing the Module – The ping module sends a small test payload to check connectivity.
4️⃣ Returning the Result – If successful, Ansible receives a pong response, indicating that the connection is working.

If no inventory file exists, you can still specify a target manually like this:

ansible localhost -m ping -i localhost,

This forces Ansible to treat localhost as the target and execute the module locally.

πŸ’‘ Lessons Learned So Far

πŸš€ Start Small – Automation is a broad topic, and it's okay to take baby steps.
πŸš€ Break Down Complex Concepts – Instead of diving into advanced topics, I’m focusing on the basics first.
πŸš€ Hands-on Practice is Key – The more I experiment, the more things start to make sense.
πŸš€ Be Patient – Every new skill takes time to master, and consistency is key.
πŸš€ Celebrate Small Wins – Even getting an SSH key setup right felt like an achievement!

This journey has taught me that automation is not just about tools; it’s about mindset. Instead of manually fixing issues repeatedly, I now think about how to automate the process and make it efficient.

πŸ’¬ Final Thoughts

I’m excited to continue learning, experimenting, and sharing my experiences. If you're also starting in DevOps, remember:

Take it one step at a time, and soon, it will all start making sense. 😊

AWS Q Developer image

Your AI Code Assistant

Generate and update README files, create data-flow diagrams, and keep your project fully documented. Built to handle large projects, Amazon Q Developer works alongside you from idea to production code.

Get started free in your IDE

Top comments (0)

Sentry image

See why 4M developers consider Sentry, β€œnot bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more

πŸ‘‹ Kindness is contagious

Please leave a ❀️ or a friendly comment on this post if you found it helpful!

Okay