The point being: I'm always amazed at the cross-purpose impulse of arguing "the title is not important" while, simultaneously, really wanting to use the title.
A family tree of software job titles (zwischenzugs.com)
probably_wrong 2 hours ago
layer8 2 hours ago
pcthrowaway an hour ago
yieldcrv an hour ago
Buttons840 an hour ago
jelloroll42 an hour ago
I don't think so.
layer8 30 minutes ago
zx8080 12 minutes ago
zx8080 11 minutes ago
siva7 5 hours ago
DevOps is another sad story as it was a saner approach to get people skilled for both dev and ops but turns out people don't like learning new skills as much as they claim. So its meaning differed from org to org and even within the same company.
marssaxman 5 hours ago
cadamsdotcom 3 hours ago
lowbloodsugar 3 hours ago
layer8 2 hours ago
cadamsdotcom 31 minutes ago
Viliam1234 3 hours ago
Actually, no one learns literally everything. "DevOps" mean that developers should prioritize learning ops over learning deeper something else (because ultimately there are only 24 hours in a day). Which sounds crazy to me; it would be better if the team had experts on different things cooperating together, rather than everyone being mediocre at everything.
That said, companies love replaceable people, or at least they love to imagine that everyone is replaceable. So when everyone becomes DevSecOpsCloudAccountantJanitor, it feels like as long at they keep one such person in the company, they got everything covered.
palata 2 hours ago
My feeling is more that developers want to believe that they are the superstars, and they don't want to do the "lower job" that is devops. "I'm too good to learn how to not make a mess in the CMakeLists".
> DevSecOpsCloudAccountantJanitor
I think that "DevOps" has "dev" in it for a reason. It is very close to what the devs produce. I am not saying that developers should be sysadmins or accountants or janitors. Just that they should know how to build their shit.
pcthrowaway an hour ago
As someone who worked for years at a company that delivered tools in the devops space, I think you're overlooking the difference between someone who deploys apps to Kubernetes and someone who sets up and maintains kubernetes clusters on bare metal hardware that they procured.
The dev may understand a lot of things about kubernetes, but the devops person is doing a lot of things behind the scenes that the dev should never have to worry about.
mikepurvis 5 hours ago
- Ops for cloud services and ops for deployed robots are very different beasts, so it's really two different teams that could both reasonably be "devops".
- Ops/tools for robot developers is different since you're often dealing with simulation environments (local, cloud) and also managing access to a more constrained pool of test hardware, all of which needs to be able to quickly recover and restore itself to factory state after developers or their code have done unspeakable things.
- Deployed units are often the worst of both worlds between multiple domains. You've got the big deployment assets of a data center but without the big data pipe; nothing is virtualized so you can't just throw away a node that goes bad; you're stuck supporting hardware snowflakes (here's a text file somewhere with the list of units that have bad CPU fans and need different frequency caps); it's like IOT but with the power and disk and observability requirements of a real server.
Aurornis 4 hours ago
Titles like these always mean something different from company to company.
Even “product manager” has had different meanings at my different employers, some times with major consequences for people who got hired into those roles expecting to do one type of work and then being evaluated on different expectations.
For DevOps, there were a lot of unrealistic expectations from everyone who saw the word and assumed they knew what it meant. I saw a lot of engineering leaders come up with completely different expectations for DevOps roles, but when the chaos arrived most of them reduced the DevOps people into the responsible-for-everything people, which just burned people out.
skeeter2020 3 hours ago
mjr00 3 hours ago
This depends on the org, but product managers I've worked with spend a lot of time speaking directly with users, particularly in B2B shops. Between speaking with customers and communicating product plans both upwards (to GMs/VPs/exec etc) and outwards (to your own team + external teams) you really shouldn't have a lot of time to build anything as a PM, even with AI.
jghn an hour ago
All of a sudden you had "product managers" inserted deep in the bowels of large systems, instead of focusing on big picture topics.
makeitdouble 4 hours ago
Doing ops also means entering the on-call rotations, being in the war room when a data center goes under and being on the hook when a DDOS brings down the service.
Very few people want that in their life, money be damned. Same way in an ideal world devs should also participate in customer support, but very few could really do it or handle that for years.
skeeter2020 3 hours ago
makeitdouble an hour ago
The issue I was facing in a previous life was the turnover. We had data scientists, DBA and many specialized roles stay pretty long, where devops moved away at about twice the rate, and work life balance was mentionned in many exit interviews.
I agree with you that it's extremely formative, and having devs involved basically from start to end of the service surface gives a lot of flexibility. The downside being that it requires a ton of different skills as well, and while people learn, many won't get comfortable with it even after months.
This makes it specially tough when people get called at 3 in the morning to deal with an emergency while they've already spent half the night sleep deprived from their kid puking all night. The worst part being that while people could understand wanting to skip turn one or two times, engineers with small kids will have enough going in their lives that most on-call instances land at a time they're busy dealing with more important matters.
viraptor 3 hours ago
When doesn't this involve devs? If you have ops separate and isolated from the development effort, a devs representation will have to get involved at some point.
makeitdouble 2 hours ago
mjr00 3 hours ago
That's exactly the issue that DevOps aims to solve, though. When you have developers who have no ownership or responsibility once the software is running on production, it becomes a "throw it over the fence" situation, and devs don't care about the operational side.
Logging? Who needs that, if there's a bug report I'll reproduce it on my local machine (and if I can't, CLOSE-WONTFIX!) Performance monitoring? That's an ops problem, tell 'em to buy better hardware. Application crashes? Works on my machine, probably a bug in the server config; ops problem. Tell them to set up a scheduled restart every hour.
You still need dedicated operations staff who deal with the overall system health and design, but yes, a developer needs to be involved when a DDOS brings down the service, because how should the system behave under heavy traffic? Can it serve up cached read-only pages? Did someone find a very CPU-intensive public endpoint that is being exploited and needs to be fixed? Only your developers can answer this question, not the ops team.
lowbloodsugar 3 hours ago
That's why they have to be the same team. Your dev team needs to: 1. understand how to write code that can be debugged and recovered in a crisis, 2. learn to write code that doesn't cause the crisis in the first place, 3. have the motivation to do so because they will be the ones paged.
Anything else produces are far worse experience for everyone involved, especially customers.
The problem I've seen with DevOps is that some fief-builder sets up a "DevOps Organization", which is literally the opposite of what DevOps means.
makeitdouble an hour ago
Having engineers understand what makes a service resilient and easy to manage, as well as giving them incentives to produce high quality code doesn't require them to do SRE. In particular, being close enough to the SRE team, getting inputs when building the feature, detailed feedback and requests on live services, and the blame when shit hits the fan, are a more scalable way of doing it IMHO.
jghn an hour ago
makeitdouble 3 minutes ago
For instance I probably have a decent understanding of what our CS team deals with, the tools they use, the volume and overall content of the customer feedback and requests that are coming to us. But I don't sit at a CS desk every day for a few hours and process the tickets of the service I'm running.
nkmnz 3 hours ago
- speak to production users
- ship to production
- monitor and learn from production usage
You don't need "devopsy" skills to do that, rather organizational structures that allow for incremental change. FWIW, deployments could still be a 2005-like upload via FTP, and the benefits of DevOps could still be reaped.
Tanjreeve 3 hours ago
999900000999 2 hours ago
We’re seeing the same thing with QA. I guess developers can QA their own deliverables.
Leaving out the key fact that the vast majority of developers have no interest in testing stuff. And thus you end up “testing in prod” like with Microsoft projects.
It’s not a coincidence Microsoft’s software quality has collapsed since they’ve eliminated dedicated QA/SDET roles.
Insimwytim 2 hours ago
A programmer has to be able to demonstrate that his program has the required properties. If this comes as an afterthought, it is all but certain that he won't be able to meet this obligation: only if he allows this obligation to influence his design, there is hope he can meet it. Pure a posteriori verification denies you that wholesome influence and is therefore putting the cart before the horse, but that is exactly what happens in the software houses where "programming" and "quality assurance" are done by different groups. [Needless to say, those houses deliver without warranty.]
(c) Dijkstrahttps://www.cs.utexas.edu/~EWD/transcriptions/EWD13xx/EWD130...
IsTom 2 hours ago
jghn an hour ago
Why does the ability to interact with users, being able to test code, profile/debug code, and actually manage your deployed software imply you're a master of none? Too many developers act like it's a good state of affairs that they just get locked in the basement to grind the code. And now that we have tools that can grind code for you, they're finding out why that wasn't a good state of affairs for them.
The answer is master all of them, not none of them.
jghn an hour ago
The way I've always phrased it is that if a company has "DevOps" teams or titles, they're not doing DevOps by definition
stroebs 6 hours ago
- DevOps Engineer (Junior, Senior, Staff)
- Systems Development Engineer
- DevOps Team Manager
- Cloud Infrastructure Engineer
- Site Reliability Engineer (+Lead)
All have been meaningless except for Cloud Infrastructure Engineer. The rest described a generalist who knows how to deal with ambiguity and (usually) has the trust with things like AWS root account credentials. Most organisations have no idea what real DevOps is. If they did, they wouldn’t hire for a “DevOps Engineer”
groestl 5 hours ago
aduty 3 hours ago
stroebs an hour ago
gmoque 4 hours ago
For those who think Software Engineering roles are extinguishing, they just need to realize roles will evolve into something new. My current role (SRE) was a nascent niche at the start of my career and I didn't even know about it for many years.
tortasaur 4 hours ago
torh 6 hours ago
NikolaNovak 6 hours ago
More charitably though, I think they are not focusing on operations despite it being one of the categories - I don't see incident coordinator / manager, problem manager, etc either.
verall 3 hours ago
jensgk 3 hours ago
temporallobe 3 hours ago
jsrcout 5 hours ago
chadk 3 hours ago
hackernud3s 9 minutes ago
estetlinus 3 hours ago
backend_dev82 6 hours ago
merelysounds 6 hours ago
zamadatix 3 hours ago
The magic incantation I found was to use the PNG version https://ianmiell.github.io/sw-job-title-family-tree/job_titl... since tbat just lets the browser handle it without any "smarts".
The main version wouldn't let me zoom in, the libked version would only let me pan, and the svg version wouldn't let me zoom out.
merelysounds 2 hours ago
carbonbioxide 6 hours ago
yuliyp 6 hours ago
flurdy 5 hours ago
HelloUsername 4 hours ago
smcleod 3 hours ago
- Technician
- Systems Engineer
- Senior Platform Engineer
- Lead Platform Engineer
- Principal AI Engineerlittlexsparkee 5 hours ago
Zaheer 3 hours ago
One of the hardest things is that the same title (and level) can mean very different things across companies, industries and over time. When collecting pay information, we take great care to merge titles that mean the same thing while distinguishing those that don't. There's other edge cases like at some companies a title will be more specific (Security Engineer), while at others they'll retain the general title (Software Engineer) but specialize in the same thing (Security).
Claude has been really helpful in wrangling this all and expanding our taxonomy :)
ctrlaltdileep 6 hours ago
ykl 3 hours ago
weinzierl 4 hours ago
dmd 4 hours ago
I've never been able to take "senior" seriously since.
kristianc 5 hours ago
A tale which of course, flatters the planners…
jsrcout 5 hours ago
zekenie 5 hours ago
bee_rider 6 hours ago
pona-a 2 hours ago
A lot of said complexity is ultimately because we haven't embraced software as an engineering discipline but as rules lawyering. We've lost sight of actual engineering goals like cost and size, and ventured far into the world of marketing, rushing to implement every feature instead of building a sound system first, causing immeasurable economic harm in product defects, engineer burn-out, and missed opportunity.
oldjohnnylane 2 hours ago
lorenzohess 4 hours ago
enjoyyourlife 2 hours ago
yuppiepuppie 4 hours ago
Where does this fit in on the chart?