I’m wondering if one of these is preferable in terms of career/salary progression and the ability to find other roles easily. I know that “devops” can mean a lot of different things and that I should focus on what I’m good at and enjoy—-those are good points, but right now I’m just curious about others’ opinions on the relative value of the titles.
1. Do SWE. SRE is a step down. They didn’t give justification.
2. SRE is useful for any programmer because: you need hardcore OS and networking skills on Linux. You need programming skills. You need sys admin skills. You need system design skills (e.g. live migration of 10K DB servers, while usual automated maintenance should not be interrupted). In some cases, you need hacking skills (for defense). So according to this group, the role is wide and concerns more layers of the stack.
Though not sure if a company calls it devops looks at it in the same way. Google doesn’t call it devops. They claim that SRE implements devops and see devops as an abstract interface.
This is my experience, YMMV:
Pros:
1. Get to do a variety of things, not stuck writing business rules in one particular language.
2. Paid better than most if not all of the web developers in our division.
3. Feels like a stable role at the moment. Hiring replacements has been difficult so company has made some effort to keep our team happy. We've survived an initial COVID staff reduction.
Cons:
1. On-call rotation and having to support code you didn't write (especially if it turns out to be of poor quality) can be frustrating.
2. I'm finding it hard to pivot into a development role again, after not having done full-time development in a few years. Both finding the time to catch-up and not getting great responses for applications I send out to other companies.
3. Working with one particular cloud provider isn't challenging. I don't feel like I'm learning any actual skills, just "the way AWS would like you to do things".
4. A lot of the CI/CD, Configuration management, and Infrastructure as Code tools feel like they're still in the dark ages (hey let's just add templating to YAML, it'll be great /s)
One place I worked at regularly gave out new titles, same job just a 'new and improved' title.
Of course, if you just want to impress your mother, go Engineer. Co-workers DevOps. The hot girl at a party ...
As it is now.
Modern devops knowledge is mostly declarative (hence doesn’t inherently have as much value and is subject to stronger and stronger automation).
While software engineers are the ones who usually automate things.
And who’s knowledge is mostly procedural => more valuable.
Of course all this is “other things equal” because these days one can find devops and programming jobs of any level of complexity/value/salary.
If you don’t completely suck, you can always go back to a regular developer role.
Look, 70% of us are just modern day webmasters, if you can believe that was everyone’s title once upon a time.
Good luck, as none of this will mean anything in 10 years given how ridiculous this industry is. ‘Full stack’ will encompass dev-ops inevitably anyway.