What is DevOps, and how differing interpretations have affected me

I just completed my last contract and started looking for a new one. To my surprise, I began receiving offers primarily for tasks like managing Kubernetes clusters, setting up CI/CD pipelines, and automating platforms — all without any development work involved.

While I do have experience with these tasks, it's comparable to my experience in writing unit and integration tests: I do it because it’s part of the job, and I believe I do it well. However, I don't enjoy it as much as research and development.

This led me to ask: where is the 'dev' in so-called DevOps? And that's where the funny part began, I found that there is different understanding about what DevOps is.

What internet said about DevOps?

·?????? Amazon: “Under a DevOps model, development and operations teams are no longer ‘siloed.’ Sometimes, these two teams are merged into a single team where the engineers work across the entire application lifecycle, from development and test to deployment to operations, and develop a range of skills not limited to a single function.”

·?????? Atlassian: “A DevOps team includes developers and IT operations working collaboratively throughout the product lifecycle, in order to increase the speed and quality of software deployment. It’s a new way of working, a cultural shift, that has significant implications for teams and the organizations they work for.”

·?????? Wikipedia: "A set of practices intended to reduce the time between committing a change to a system and the change being placed into normal production, while ensuring high quality"


DevOps loops

In my recent projects, we utilized platforms like OpenShift and Kubernetes (k8s), and my responsibilities included:

·?????? Architecting, designing, and developing microservices.

·?????? Creating CI/CD pipeline frameworks using tools such as GitLab CI, Helm, Jsonnet, Maven (mvn), and Kubernetes (k8s).

·?????? Building tools and frameworks to automate our development and operation tasks

·?????? Managing the platform with tools like ArgoCD and Crossplane.

·?????? Monitoring and supporting clusters and microservices across all environments, including production.

·?????? Fixing failed Renovate updates.

·?????? Addressing security findings identified by pipeline tools such as WhiteSource and Trivy.

I would say that I spent roughly 65% of my time on development tasks and the remaining 35% on operational tasks. The team primary goal was to design, build, deliver, and operate a set of microservices in the most efficient way possible. Based on my understanding, I was part of a DevOps team.

I found that being responsible for the deployment and operations of the services I develop has significantly improved my skills in several areas:

·?????? Logging: When troubleshooting production issues, I became much more careful about what needs to be logged, the appropriate logging levels, ensuring all relevant context information is captured, and enabling the correlation of all log entries related to a specific transaction.

·?????? Monitoring: Supporting services in production has taught me to proactively prevent issues whenever possible. When prevention isn’t feasible, I aim to detect problems before clients start complaining, allowing me to address issues as quickly as possible.

·?????? Business Activity Monitoring: Understanding who uses your services and how they do so is essential for setting up effective anomaly detection. This also helps in predicting the impact of issues or maintenance windows.

·?????? Code Review: When I’m responsible for maintaining a service in production, my motivation to prevent errors in a colleague's code increases significantly, as I will likely have to deal with the consequences.

·?????? Automation: We iteratively developed tools and frameworks to improve our workflows. By the end, we became an order of magnitude more effective in our work processes.

There is a different interpretation of a DevOps team as being separate from development teams, responsible primarily for platform automation, platform operations, and CI/CD setup. However, I believe the process I followed is much more aligned with the true DevOps concept, where development and operations are integrated.

Now, I’m wondering how I should adjust my CV to avoid being considered for such purely operations-focused roles. ??

要查看或添加评论,请登录

Ivo Mitov的更多文章

  • ML Dreams & Hard Lessons

    ML Dreams & Hard Lessons

    As my latest project wrapped up, I decided it was finally time to rebrand and relaunch my company website…

  • Distributed Complex Event Processing and data locality

    Distributed Complex Event Processing and data locality

    1. Abstract I would like to share architecture of CEP system taking an advantage of data locality.

  • Real-time Applications of Big Data

    Real-time Applications of Big Data

    Real-time Applications of Big Data Hello, On behalf of Data Science Society Bulgaria you are kindly invited to be part…

  • Happy new year!

    Happy new year!

    Dear friends and partners, we would like to wish you all the best in the coming New Year and most of all, to be healthy…

社区洞察

其他会员也浏览了