Hey everyone! I'm a senior systems engineer with a background in systems administration and I'm thinking about making a shift into a cloud-focused career. I've got solid experience with tools like Intune and Defender XDR, as well as some familiarity with Azure's PaaS offerings. I want to get into DevOps but I'm a bit lost since the information online seems all over the place. Can someone break down what your daily work looks like in DevOps? I'm comfortable with PowerShell and Bash scripting, but I'm not deeply versed in other programming languages. Any insights would be greatly appreciated! Thanks!
6 Answers
DevOps is basically about streamlining the deployment process, ensuring that once the software is ready, it can be shipped out as efficiently as possible. The specific focus can depend on the company's goals, whether it’s cloud-oriented or more traditional on-premises setups. What matters most is your adaptability and willingness to learn new technologies, as the landscape is always evolving!
In my day-to-day, after everything's set up, I mostly launch CI/CD pipelines for deployments. It's mostly about enabling the dev and QA teams to test and roll out new versions. Though, I often find myself fixing failed pipelines caused by issues from the development side. There's also some light scripting involved when we have tool updates requiring tweaks. Sometimes it involves operational tasks like managing server performance or dealing with system errors. It keeps me on my toes!
DevOps essentially focuses on closing the communication gap between devs and operations. It emphasizes collaboration and reducing friction so that both teams can efficiently handle their tasks. The actual implementation can vary widely based on the company culture and needs.
Having moved from a senior DevOps engineer to a principal engineer, I can say that in larger organizations, DevOps roles often become siloed, which can go against the grain of what DevOps aims to achieve. I work with Terraform primarily for AWS and Azure and handle quite a bit of application code too. Having a foundation in at least one cloud provider, shell scripting, and some programming is essential for anyone looking to step into a DevOps role.
Just check out some YouTube videos on troubleshooting git pipelines; they're super helpful if you get stuck!
DevOps is essentially about bridging the gap between development and operations. It differs from one organization to another; in some, you'll find a dedicated 'DevOps' team that handles infrastructure as code, CI/CD pipelines, and deployments. In others, the development teams have the tools to deploy and monitor their services independently. What you might want to focus on includes willingness to learn, strong debugging skills, foundational knowledge of Linux, and familiarity with a major cloud provider. Oh, and being proficient with Kubernetes and Docker is a big plus!
Great answer! Also, just to add, nowadays many roles expect knowledge of Terraform, which is pretty crucial for infrastructure management.
Thanks! So it sounds like roles vary and can have different titles, huh? You mentioned debugging - do you mean debugging code specifically?
Sounds like being in DevOps might not be my thing since I'm more into setting up infrastructure. I aim to be an Azure admin and learn more about those services.