How I Started My DevOps Journey
Introduction
July 2022 marked the end of my undergraduate journey in computer engineering, and the beginning of an exciting chapter in my life. It was the month I took my first steps into the world of DevOps as a DevOps Engineer Intern at a well-established company. Little did I know that this internship would serve as the foundation for my career in DevOps, leading to a full-time position as a DevOps Engineer in the same organization. In this blog, I will share my experience of how I embarked on my DevOps journey, the challenges I faced, and the growth that followed as I transitioned from an intern to a seasoned DevOps professional.
What Exactly is DevOps?
There are a lot of wrong ideas about DevOps out there, but here's one definition from AWS that I find captures it well: "DevOps is the combination of cultural philosophies, practices, and tools that increases an organization’s ability to deliver applications and services at high velocity: evolving and improving products at a faster pace than organizations using traditional software development and infrastructure management processes." In other words, DevOps is about people, processes, and the best way they can be brought together to accelerate the pace of innovation.
Due to the broad range of tasks, you will be responsible for, DevOps Engineer is not an entry-level job in the industry, but this doesn't mean you can't do it. Some of the DevOps responsibilities include:
building and setting up new development tools and infrastructure.
automating and improving development and release processes.
ensuring that systems are safe and securing against cybersecurity threats.
identifying technical problems and developing software updates and ‘fixes’.
working with software developers and software engineers to ensure that development follows established processes and works as intended.
It's worth noting here that different roles relate to the practical implementation of DevOps - Platform Engineer, Site Reliability Engineer, and so on. If you're interested in a more granular breakdown of those roles, plenty of other resources online provide that.
Hands-on Learning
During my internship, I was fortunate to work on real projects alongside experienced DevOps professionals. From setting up CI/CD pipelines to automating deployment processes, I got hands-on experience with various tools like Jenkins, Docker and Kubernetes. I quickly realized that DevOps was more than just the sum of its tools; it was a philosophy that emphasized collaboration, efficiency, and continuous improvement.
The Importance of Collaboration
One of the key lessons I learned during my internship was the value of teamwork and effective communication. DevOps is all about breaking down barriers between teams and fostering a culture of collaboration. I actively participated in meetings, shared ideas, and collaborated with developers, QA engineers, and operations teams to ensure a smooth and seamless software delivery process.
Continuous Learning and Growth
One of the most exciting aspects of DevOps is that it is constantly evolving. To stay relevant and effective in my role, I continued my learning journey even after transitioning to a full-time position. I earned certifications and engaged in online communities to keep myself updated with the latest trends and best practices in the DevOps landscape.
Conclusion
My journey into the world of DevOps has been an incredible adventure that has reshaped my approach to software development and operations. Embracing the DevOps philosophy has not only enhanced my technical prowess but also nurtured essential soft skills like communication, collaboration, and adaptability. If you're passionate about optimizing software delivery, I encourage you to embark on your own DevOps journey - it's a decision you won't regret. Happy coding!