A little while ago, before every single conversation has been taken over by either AI or who’s got the strongest military, I was asking a friend of mine, a software engineer, if he will keep programming in one way or another, in case he will receive amount of 1 Billion Dollars to his bank account.
After ten minutes of tax liabilities calculations, and another ten minutes of sharing our frustration from the fact that saying 1 Million Dollars wasn’t big enough of an exaggeration as it used be, he told me that he believed he will.
I didn’t believe him. Probably because I had to face the fact that maybe I don’t really like what I do for a living. I mean, it’s weird because whoever knows me heard me more than once talking about DevOps engineering, automations, how to think about everything as a process.
In my last position as the DevOps tech lead of OM2 Technologies, we’ve been asked to create a vision for each team. My suggestion (that was approved after all because no one else read emails) was ‘To Become Obsolete”.
This is what I do. I am in a constant battle against my job security. If it’s something that only I can do, I’ll build something that does it, and I will build it in a way that I will never even have to maintain it. And if it’s something that others can do, I will build a platform.
If I wasn’t in tech, I’d do DevOps in other places. It’s not only about automating things. It’s about thinking how every task is only a small step in a whole lifecycle. I know I didn’t invent anything, and SDLC is a thing, but I really love this infinity loop get into shape in the form of pieces of code that can dynamically scale and change and adapt and… you got the point.
So why wouldn’t I keep doing it in case I’d be the owner of a Billion Dollars (after tax)?
I call it the manager paradox. And by saying “calling it” I mean that I just thought about it. But it makes sense. Hear me out.
When you are in this business for the full picture, for overseeing the whole SDLC, for not let anyone to do anything other than keep the holy standard, you should lead. I honestly can’t understand DevOps engineers that work with tickets like it was a factory. Fixing issues and building endless library of “scripts” (my most hated word in English). This is why I believe that the right way for DevOps engineers to operate is under an E2E development team (as in Agile), but then you are taking care for only part of a full process. And the bigger the company, the smaller is your opportunity to develop rather than maintain and comply.
When you manage, you spend so much time in trying to get your ideas up and running that you can’t really commit on committing (oh yeah).
It takes you 2 months in a management position in a corp to understand that while code is nice, people are the hardest thing to develop. and this task takes a whole lot of time. and it’s not DevOps-y in any way.
And I hate coding.
It took me a while to admit it.
It’s like a musician who doesn’t like play instruments, car mechanic who doesn’t like the smell of grease or pilot that is afraid of heights. It’s possible to be one, but why?
I wasn’t one of those kids who developed since age of 7. Actually I think that until I was 18 I was still calling my uncle to fix issues in my PC (I actually still am). I was learning how to be an IT guy, and I was really fascinated by servers, network and always on A/C.
Remember those days around 2013? The beginning of cloud engineering? Being an IT was all about maintaining nice and neat excel spreadsheet and right click your environments in speed like never before. I was him. This was my destiny. I felt like a wizard casting my spells. The person that have no idea what to do if the headphones aren’t discoverable by my PC, is suddenly replicating environments and pushing changes in… like… days! instead of months.
Someone told me, and I have no idea if it’s true, that at some point Jeff Bezos instructed all AWS engineers to create API and external interfaces, or they will be fired.
This is where things went south for me. DevOps started being difficult.
Juval Lowy said that a bad architect has one hundred solutions for a problem, while a good architect has one. And I didn’t feel like a good architect. Finding the one was so complicated. Trying to practice all the new wave of DevOps tools (Just check when Kuberentes, Terraform, AWS Lambda and Ansible), was impossible. It was such a difficult year for the buzzwords hater.
I signed myself to all the courses. All of them. And everywhere I searched for the right click, i was facing code snippets and YAML blocks.
Every, damn, course, was about copy pasting, running and seeing EC2 servers spinning up. I had no idea what am I supposed to do with it. And when I tried to dive deep into one tool I found out that I’m not a devops engineer anymore. I just… develop.
Shared libraries, functions, unit testing, recipes, pipelines. Everybody wanted this. So I started building.
But I didn’t build anything new. I didn’t want it. I never saw myself as a developer.
I’ll admit that working with code (regardless if it’s C# or python) requires you to have coding standards. especially when you are supposed to share this code with other components anyway. And this was more the part that I liked about the new job I was sliding into.
Nothing like shared library to feel like you are telling developers how to work. And nothing like a terraform repository to let QAs to build their own infrastructure (without any personal permission).
But this is where I shifted more and more to managing. I knew the tools really good. But I didn’t feel like I want to sit down and build the hell out of these pipelines (sounded better in my head). It gave me the opportunity to touch everything while code as less as possible.
Fast forward for today, and I don’t have a Billion Dollars, I still work, but I found a new hobby.
My name is Snir, and I love to code. ish.