Hacker News

Favorites Setup
A family tree of software job titles (zwischenzugs.com)
2026-11-14 Sat | 410 points by umerf | original
[−]backend_dev82 · 2026-11-14 Sat 18:15 UTC · link
Would be nice if I could actually see it. I cannot zoom in, zoom out or do anything with it.
[−]merelysounds · 2026-11-14 Sat 18:19 UTC · link
[−]zamadatix · 2026-11-14 Sat 21:41 UTC · link
That's probably the one they found not working if they are mobile (or, at least, that's where I got stuck).

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 · 2026-11-14 Sat 21:55 UTC · link
There is a different incantation: when viewing the main version on mobile you can zoom in by choosing a category (eg “development”). And you can zoom out by pressing “all”.
[−]carbonbioxide · 2026-11-14 Sat 18:29 UTC · link
agree, the ui to navigate this data is very uncomfortable, I guess we're gonna need a front-end developer here to fix it. :)
[−]yuliyp · 2026-11-14 Sat 18:30 UTC · link
There's a link to the SVG version of it that you can navigate using your browser's normal interface controls.
[−]flurdy · 2026-11-14 Sat 19:45 UTC · link
CTRL+scroll wheel to zoom
[−]HelloUsername · 2026-11-14 Sat 20:42 UTC · link
On mobile you can pinch zoom on the png file: https://ianmiell.github.io/sw-job-title-family-tree/job_titl...
[−]tayo42 · 2026-11-14 Sat 18:18 UTC · link
> When I’m asked what the difference is between a DevOps engineer, an SRE and a platform engineer, the honest answer is always a little history lesson. This is the shortest version of that lesson I’ve managed so far.

Unless you talk to a recruiter and they say something like your more of a SRE then a DevOps engineer and we really need a devops engineer. Insansity

[−]bee_rider · 2026-11-14 Sat 18:28 UTC · link
Software is mostly human-defined. The complexity mostly comes from understanding the meaning of a large corpus of existing text, and then building your thing on top of existing human-created conventions. Therefore, I suggest we start calling ourselves Software Lawyers, Software Judges, and Software Legislators. This is a much more sensible set of titles than “software engineer” and “architect,” and it will probably cause less confusion and pointless bickering.
[−]pona-a · 2026-11-14 Sat 22:32 UTC · link
Software is just an extension of electrical engineering, only with the small technical difference that instead of building circuits that process signals, you write instructions for a pre-made Turing machine instead. FPGA engineers are clearly digital engineers, if they want they could write out their circuits with diagrams, though most use code, because it's more compact, easy to modify, and is easier to operationalize with version control and testing. The only thing different from software is the depth of our abstractions, and the scope of our problems.

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.

[−]stroebs · 2026-11-14 Sat 18:29 UTC · link
So far in my career:

- 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 · 2026-11-14 Sat 18:51 UTC · link
DevOps requires tooling and infrastructure, and at a certain size, a dedicated DevOps Engineer optimizes that tooling. What's wrong with that?
[−]aduty · 2026-11-14 Sat 21:43 UTC · link
Most places mean someone who does development and operations. They see it as a term for someone who has responsibilities on both sides, not a specialty.
[−]stroebs · 2026-11-14 Sat 22:50 UTC · link
In my experience DevOps Engineer has been infrastructure + operations while having a good grasp on code but writing application code was almost never part of the role. Almost every position had a coding interview round though.
[−]groestl · 2026-11-15 Sun 09:39 UTC · link
Which is still the philosophy (i.e. one person responsible for the whole app lifecycle, from development to production, so there's no diffusion of responsibility when it comes to production readiness).

However, a decent sized team can affort a role which focuses on the orthogonal tooling aspects which benefits all engineers who follow DevOps best practices. And that would be a DevOps Engineer.

[−]brabel · 2026-11-15 Sun 12:57 UTC · link
I started as Software Developer, then quickly got a Senior title prefixed to that because I became literally the only developer in the startup I was working at , and held the title Senior Software Developer for another 10 years through a few companies. Then, I was promoted to Chief Software Engineer which is my current title. Nothing up for me except maybe CTO or CEO. Not sure I want to move to either.
[−]ctrlaltdileep · 2026-11-14 Sat 18:37 UTC · link
This was interesting to look at. I know it's not supposed to be perfect but it certainly does make one think about the career routes available. What surprised me was how short the path was for security to getting into the C-Suite. Although I do feel like most people become security analysts, then ISOs. Also I didn't realize that tape librarians were still a thing.
[−]torh · 2026-11-14 Sat 18:40 UTC · link
I can't see Operations Manager listed, yet I've had that title for the last 15(?) years.
[−]NikolaNovak · 2026-11-14 Sat 18:46 UTC · link
I've had the title on and off since 2018, I assume we are pretending with DevOps that pure operations / ops management doesn't exist 0:-)

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.

[−]bblb · 2026-11-15 Sun 09:05 UTC · link
As a pure sysadmin / server admin for the past 21 years, I can't see myself pivoting into DevOps if the job market required that. Yes, we do manage container infra also, but it's not "DevOps" or "SRE".

Maybe the future is all about AI agent harness runtime environment orchestration or some other uninteresting tech.

[−]kristianc · 2026-11-14 Sat 18:55 UTC · link
> In 1947 coding was the clerical bit, and the real work was in the planning.

A tale which of course, flatters the planners…

[−]jsrcout · 2026-11-14 Sat 19:07 UTC · link
Heh heh. Meanwhile in 2026, the developers are doing the real work, including those heavily employing AI. Which flatters me :-)
[−]jsrcout · 2026-11-14 Sat 19:05 UTC · link
It's fascinating seeing all these in one place with the relationships and over time. I'd love to see one with the less formal titles (I like to go by "developer" personally though it's not my job title), but it would be gigantic.
[−]siva7 · 2026-11-14 Sat 19:08 UTC · link
Scrum and Agile seem to be dying. I had a Product Owner and Scrum Master cert for years on my resume but i've dropped it from my current. Feels now like the ancient webmaster title of the mid 90s. Made for another timeline which is not more relevant.

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 · 2026-11-14 Sat 19:29 UTC · link
A dev can very much enjoy learning new skills without feeling any desire for the pressure and burden of having to deal with ops.
[−]cadamsdotcom · 2026-11-14 Sat 21:07 UTC · link
Ops is when what you made collides with reality. Replacing "ops" in your post with "reality" gave me a good chuckle.
[−]lowbloodsugar · 2026-11-14 Sat 21:19 UTC · link
Now I'm reading every comment here, substituting "Ops" with "Reality" and it's hilarious.
[−]layer8 · 2026-11-14 Sat 22:40 UTC · link
Ops has heaps of accidental complexity that has little to do with the software that was made. That’s why many devs dislike ops work.
[−]cadamsdotcom · 2026-11-14 Sat 23:45 UTC · link
What makes you say it's accidental?
[−]datadrivenangel · 2026-11-15 Sun 05:49 UTC · link
accidental complexity versus essential complexity.
[−]cadamsdotcom · 2026-11-15 Sun 06:32 UTC · link
Yep the distinction is well understood. I didn't do a great job making it clear.

I'm asking what op believes is accidental complexity. If it was reducible we would've surely done so by now?

[−]Viliam1234 · 2026-11-14 Sat 21:22 UTC · link
Exactly. The field is already too complicated, you can learn a lot without learning literally everything.

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 · 2026-11-14 Sat 22:44 UTC · link
I kindly disagree. In my experience, developers don't spend 24h a day learning new stuff. They spend their working hours mostly writing new code. Learning how to build and ship it correctly isn't a lot of effort, averaged over years of work.

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 · 2026-11-14 Sat 23:15 UTC · link
> Learning how to build and ship it correctly isn't a lot of effort, averaged over years of work.

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 · 2026-11-14 Sat 19:41 UTC · link
As someone who has been in the "robot devops" space for like a decade now, I think with robot companies it becomes particularly acute because:

- 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.

[−]gertlex · 2026-11-15 Sun 06:35 UTC · link
Plus there's the mess of "different audiences need different views of info about the robots in order to triage" and those lines are murky, and someone's always trying a new tool, and "ugh, the new thing is great for group A, but now I can't efficiently see Y, and the old tool was fine (for me)"

> IOT but with the power and disk and observability requirements of a real server

And the issue with the robot is usually none of the regular observability health metrics of a real server... but when it is... "where does that dashboard live again, and is it still working?"

[−]Aurornis · 2026-11-14 Sat 20:26 UTC · link
> 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.

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 · 2026-11-14 Sat 20:48 UTC · link
I think pure Product Manager - idea person and feature gate - as a role has limited days left, but Technical Product Manager - often people with recent dev experience and strong tech chops who can build a lot with AI - might be the new role.
[−]mjr00 · 2026-11-14 Sat 21:12 UTC · link
> I think pure Product Manager - idea person and feature gate - as a role has limited days left, but Technical Product Manager - often people with recent dev experience and strong tech chops who can build a lot with AI - might be the new role.

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.

[−]jkells · 2026-11-15 Sun 01:20 UTC · link
Bingo
[−]jghn · 2026-11-14 Sat 22:58 UTC · link
Where "product manager" really started going off the rails was when enterprise agile achieved hockey stick level popularity as all of a sudden the "product owner" role wound up being in the "product manager" job family.

All of a sudden you had "product managers" inserted deep in the bowels of large systems, instead of focusing on big picture topics.

[−]elmer2 · 2026-11-15 Sun 02:36 UTC · link
There is also a lot of title inflation, especially at startups.
[−]makeitdouble · 2026-11-14 Sat 20:35 UTC · link
DevOps'issue IMHO is developing software and dealing with the ops side are two fundamentally different propositions, and require two different life styles.

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 · 2026-11-14 Sat 20:46 UTC · link
Last team I was on was repsonsible for supporting and maintaining their product, with help from the SRE team. It means after-hours support for issues and (maybe) releases but I think this was the right way. You became the backstop and support resource for things like data center outages and DDOS attacks that were largely the responsiblity of the (much smaller than many places) SRE team. We also put devs very closely behind front-line customer facing staff where it made sense (ex: reporting & analytics - yes, platform - probably not). It made the devs better and they might try and deny it but I think most of them actually appreciated it. #YMMV
[−]makeitdouble · 2026-11-14 Sat 22:46 UTC · link
> I think most of them actually appreciated it.

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 · 2026-11-14 Sat 20:59 UTC · link
> being in the war room when a data center goes under

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 · 2026-11-14 Sat 22:29 UTC · link
Imagine managing a gitlab instances. You're doing it for years and have a stable environment. If one of the instance gets hammered by external traffic or one of your data center dies, will you call the gitlab devs to deal with it ?
[−]viraptor · 2026-11-15 Sun 00:31 UTC · link
Depending on the size of the deployment. (Not sure what you mean with "one of your data center" though) If it's just you, you deal with it. If you're running a bigger deployment, you likely have GitLab devs internally that will be reachable. Even bigger - you're likely to have access to upstream devs in the ultimate tier even with self hosting.

So... Yes, sometimes you will.

[−]zbentley · 2026-11-15 Sun 13:21 UTC · link
Exactly. Source: have done exactly that (thanks to the folks at GitLab for being professional, available, and capable when we needed you!)
[−]mjr00 · 2026-11-14 Sat 21:08 UTC · link
> DevOps'issue IMHO is developing software and dealing with the ops side are two fundamentally different propositions, and require two different life styles. 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.

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.

[−]makeitdouble · 2026-11-15 Sun 00:18 UTC · link
> devs don't care about the operational side.

That's an org issue. For a given service dozens of roles will be involved, if devs are needed to do every single of them to care and be invested, there is a problem.

> [...] Only your developers can answer this question, not the ops team.

Yes. Those are questions that need an answer before a service is released, and the ops team need the veto power + sufficient means to escalate recurring issues in ways that will hurt the dev teams enough to make them care.

[−]jimbokun · 2026-11-15 Sun 04:58 UTC · link
Dozens of roles for one service???
[−]lowbloodsugar · 2026-11-14 Sat 21:16 UTC · link
>DevOps'issue IMHO is developing software and dealing with the ops side are two fundamentally different propositions

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 · 2026-11-14 Sat 23:02 UTC · link
These are all good point, that I think aren't really related to having devs do operations.

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.

[−]lowbloodsugar · 2026-11-15 Sun 00:33 UTC · link
>Having engineers understand what makes a service resilient and easy to manage,

I don't believe engineers can understand this without experiencing it. A counter argument might be "football coaches don't need to have played", but the counter to that is "players need to have played". Why would being on call make you a better player? Personally, I think being the person watching the dashboards, in realtime, scraping the logs, in real time, watching how the contagion happens, in real time, gives insights that a next-day post mortem just doesn't. There are things I've learned only from hearing something on the conference call and then asking someone about it in chat. Watching a presentation on "Why 99% of people fell of our new bike" isn't nearly as useful as riding the fucking bike.

I've been on teams (briefly) where the ops team having an absolutely shit 48 hours was simply not on the dev teams radar, because they had more important things to worry about. That of course meant that when devs needed, e.g. a new host to try something, ops just dragged their feet, sometimes for months. Perhaps I've only seen dysfunctional companies in this regard. Or perhaps teams are made of humans, and splitting dev and ops is guaranteed to fail for any organization of more than 20 people? Like, sure, a startup of ten highly motivated people - maybe that works. Never done that myself: we've always run our own shit at the startups I've run/worked. Once that startup is 50 people, I think you're destined to fail with separate dev and ops.

Been paid for this over 40 years now. Done startups and FAANGs. But yes, the rewards better be fucking worth it, and the shifts better be reasonable.

So like, I'm not certain you're wrong. I don't think you can be wrong here. It's about what you're willing to do. Personally, I've done both ways, and if I started a company, I'd only hire people willing to support their shit with a pager. I'm not sure that matters for all businesses, but I'm not interested in starting, e.g. a mom-and-pop web hosting site for local businesses. If the service matters, devs are on call. So maybe I'm self selecting by the expected $ return.

[−]jghn · 2026-11-14 Sat 23:00 UTC · link
Any developer who doesn't at least *understand* the ops side of the fence and has never spent time actually *doing* it, will make bad decisions along the way from an ops perspective. These are bad developers.
[−]makeitdouble · 2026-11-15 Sun 00:13 UTC · link
I see a stark difference between understanding how it works and doing it in a professional manner.

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.

[−]jghn · 2026-11-15 Sun 02:40 UTC · link
You should at least be able to step in and do that job, however, if necessary. That's different than that being the most efficient use of your time, but it's something every good developer should be *capable* of doing.
[−]kakacik · 2026-11-15 Sun 11:22 UTC · link
Understanding anything is not binary, and evolves over time. Feeling like you understand something and then having at least some continuous hands-on experience are incomparable levels.

At the end, its just another part of your skillset with the general aim being the best / most experienced engineer to deliver best designed software for customer/company needs. There is no real seniority without being fully-versed in roughly everything that makes software stable and maintainable and delivering it. One cannot be had without the other.

[−]jimbokun · 2026-11-15 Sun 04:54 UTC · link
Give developers on call rotations and watch their code quality sky rocket.
[−]nkmnz · 2026-11-14 Sat 21:22 UTC · link
DevOps should be a guiding principle for the organization, not a dedicated role. Every developer (or at least: every team) should be able to

- 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 · 2026-11-14 Sat 21:35 UTC · link
Was that not the OPs point too about it being a sad story and many Devs not being capable of learning to run software outside of an IDE?
[−]999900000999 · 2026-11-14 Sat 21:51 UTC · link
So jack of all trades master of none?

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 · 2026-11-14 Sat 22:07 UTC · link

    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) Dijkstra

https://www.cs.utexas.edu/~EWD/transcriptions/EWD13xx/EWD130...

[−]IsTom · 2026-11-14 Sat 22:16 UTC · link
While I agree with this, in a lot of software there's more to verify than just being correct. Unless there's a separate and rigid UI/UX spec then there's also matter of things being intuitive to use etc. which may vary from person to person and the one making the thing might not have the same sensibilities as the users.
[−]kodoman · 2026-11-15 Sun 00:57 UTC · link
Dijkstra being able to witness software development today would be interesting to say the least.
[−]jghn · 2026-11-14 Sat 22:56 UTC · link
> So jack of all trades master of none?

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.

[−]ravenstine · 2026-11-15 Sun 07:36 UTC · link
Most people aren't particularly good beyond 1/3 of those domains. It's delusional to expect everyone to be Superman even though that idea is amazing in a vacuum.
[−]999900000999 · 2026-11-15 Sun 09:24 UTC · link
Everyone now needs to be full stack and experienced with dev ops , cicd too. Maybe you’ll also be forward deployed so you can gather client requirements, implement them, test, and deploy the whole project.

I’m seeing contracts with twice as many required skills for about half of what I was making in 2019.

[−]nkmnz · 2026-11-15 Sun 10:49 UTC · link
Wait until you hear that some employers might expect that you take a car or public transportation to the office, all by yourselves. I mean, come on, you're not a mechanical engineer or public transportation policy expert, how should you do that. Driving a car or taking a bus are skills that cannot be acquired in a couple of hours. Those are crafts that rely on wisdom of generations, passed on only from father to son. Just like taking care that the new image compression that you've implemented for your company's "Not Hotdog" app doesn't break production. How dare they asking you to write an e2e test that plugs into the existing test runner, and add the creation of required artifacts to the existing CI/CD pipeline.

If someone expects a non specialized developer to create a CI/CD pipeline for a brownfield project from scratch, or implement a test strategy including runner infra etc., then that's not DevOps. It's just stupid.

[−]nkmnz · 2026-11-15 Sun 02:38 UTC · link
> So jack of all trades master of none?

Once you write software that is run in places other than your computer by people other than you, you have the right and the duty to speak to those people, to look into those places, and to push updates in small increments once you've learned something valuable from either of the two sources. "You" can be a small team of close collaborators, so not every developer has to speak to users, and not all developers need to push to prod or look into the Grafana every now or then. It's just that those responsibilities should not be gated into remote departments.

Infrastructure is still provided and maintained by Ops. That's exactly the point of my critique: giving Devs access and responsibilities is no excuse to dump the whole Ops department. Managers shouldn't give someone a DevOps-title and think they get 2 for 1.

Similarly, asking Devs to write and maintain proper test automation for their services is the bare minimum - scraping centralized QA is still a bad call, though. Somebody must build and run test infra, set and enforce standards, aggregate data, track regressions, keep the full picture etc. - but they shouldn't block incremental deployments for days.

[−]jimbokun · 2026-11-15 Sun 04:50 UTC · link
That’s why the developers have to be on pager duty sometimes for the code they write.

Nothing makes you take testing your code more seriously than having to respond to an outage caused by a bug code you wrote.

[−]surajrmal · 2026-11-15 Sun 16:35 UTC · link
Nothing more fun than being paged for a cloud outage, platform outage, etc, that was out of your control.
[−]kakacik · 2026-11-15 Sun 11:13 UTC · link
Thats a very junior take.

Extremely narrow focus makes one visibly worse off since topics in real world are never so narrow and to deliver anything complex in any engineering one has to understand cascading consequences of every complex decision. And what is software than series of complex decisions, usually about how to handle and secure data for backend and talk to user in frontend.

Without understanding how prod is actually used, monitored, how things are fixed etc its almost impossible to design, deliver and maintain any software worth its salt in any company.

Come to interview with such attitudes and if you ever get hired it will be for lowest pay scale. Given current market for juniors it would probably not be nice for you.

[−]jghn · 2026-11-14 Sat 22:54 UTC · link
> DevOps should be a guiding principle for the organization, not a dedicated role

The way I've always phrased it is that if a company has "DevOps" teams or titles, they're not doing DevOps by definition

[−]sighansen · 2026-11-15 Sun 07:17 UTC · link
I call it the reverse devops principle. The more a company speaks of doing DevOps, the less they are actually doing it.
[−]0xbadcafebee · 2026-11-15 Sun 01:47 UTC · link
It's sad that people still think DevOps was about teaching people "dev and ops skills". There isn't even such a thing as "ops skills". Ops stands for Operations - as in Operations Management, a job that has nothing to do with servers (it's a job focused on ensuring business continuity in any industry). The term "Operations" got associated with servers and server commands because the department that Systems Administrators worked in was called the "IT Operations" department, aka, ensuring the business continuity of the Information Technology department. All of this happened because the entire industry spontaneously became collectively ashamed of the term "Systems Administrator" and "sysadmin". But they still wanted a way to refer to "the server people" and "what server people do", so they started saying "ops".

The "Ops" in DevOps was intended to mean the department itself, not the tasks they performed. The idea that devs should be learning or doing Systems Administration is the same as a building architect learning/doing concrete pours. They should know about concrete and the pouring/curing process, but they don't (and shouldn't) be pouring and smoothing the concrete themselves.

[−]rester324 · 2026-11-15 Sun 09:30 UTC · link
You know it's ironic that people think that scrum and agile is dying and at the same time everyone's dog and their uncle is working in sprints, or using a Kanban board, etc. WTF are these people doing I wonder??? And why???
[−]zbentley · 2026-11-15 Sun 13:27 UTC · link
I think both are true. Agile/SCRUM as these vaunted “hire a coach and certified scrum masters and your process blockers go away” org-wide religions are on the wane.

But they left behind a few practices that were easy to adopt and lots of people liked (whether that makes them “the good parts of agile” or “lazy process theater” depends on who you ask). Sprints, boards, paying attention to velocity, and so on.

[−]littlexsparkee · 2026-11-14 Sat 19:23 UTC · link
IME, you see changes in numbers over time but the titles data analyst, data engineer, analytics engineer, data scientist are all still around. data platform engineer or SWE data seems to be stable as a systems role but anecdotally there is less demand for data roles now due to AI (either believed capability or deferred hiring to understand near term needs).
[−]zekenie · 2026-11-14 Sat 19:45 UTC · link
Where’s member of technical staff?
[−]ichorio · 2026-11-14 Sat 19:58 UTC · link
Jokes on you, I'm a Senior Systems Engineer.
[−]i_am_a_peasant · 2026-11-15 Sun 15:45 UTC · link
I studied systems engineering but never had systems engineer as a title. i did have “design engineer” as a professional title. and everyone in the factory was referring to me as a “designer”. it felt kinda fancy. but i was always an embedded software guy
[−]gmoque · 2026-11-14 Sat 20:00 UTC · link
I enjoyed looking back at my 20 year career through roles. I've done a few of them crossing domains twice. The tree should be seen as a constant evolving graph. There will be a plethora of new roles in the coming years.

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 · 2026-11-14 Sat 20:44 UTC · link
Very few think that SWE roles will completely disappear. The main concern is that whatever it evolves into, the world will need far fewer.
[−]livinglist · 2026-11-14 Sat 20:04 UTC · link
I think there should be more domains included other than mobile/backend/frontend, there’s software engineers working on robotics/graphics/aviation but not necessarily embedded engineer
[−]yuppiepuppie · 2026-11-14 Sat 20:16 UTC · link
These days I half-jokingly (it’s on my slack profile “position” field) refer to my self as a Serious Product Vibe’ineer.

Where does this fit in on the chart?

[−]weinzierl · 2026-11-14 Sat 20:24 UTC · link
As a kid I always wanted to be a SysOp. Not that I knew what it was, all I knew was it had to do with computers and sounded cool. That was enough.
[−]lorenzohess · 2026-11-14 Sat 20:34 UTC · link
Where is Prompt Engineer?
[−]enjoyyourlife · 2026-11-14 Sat 22:05 UTC · link
It wasn't a software role
[−]dmd · 2026-11-14 Sat 20:45 UTC · link
My first paid job, at 21, in 1999, was "Senior Network Operations Engineer".

I've never been able to take "senior" seriously since.

[−]xstas1 · 2026-11-14 Sat 20:49 UTC · link
What's the source of this data?
[−]temporallobe · 2026-11-14 Sat 20:59 UTC · link
I’ve always been “software engineer” or some variant thereof, but always with the implication that you pick up any tech stack and learn it well enough to be productive. Often it was not the new programming language(s) that were challenging, but some really difficult black box tool (API, platform, database, framework, etc.), and even MORE challenging, the unnecessarily complex development environment.
[−]jensgk · 2026-11-14 Sat 21:00 UTC · link
Before data scientist, there was data miner or data mining engineer.
[−]chadk · 2026-11-14 Sat 21:02 UTC · link
Surprised “Web Designer” didn’t make the cut. That is what we were often called between being a Webmaster and Web Developer.
[−]hackernud3s · 2026-11-15 Sun 00:07 UTC · link
I've been a Webmaster and a Web Developer but I never called myself a designer.
[−]etoxin · 2026-11-15 Sun 01:09 UTC · link
The chart skips design entirely. e.g. UX, web designers, etc. also Web designers normally went into front end development.
[−]hackernud3s · 2026-11-15 Sun 01:23 UTC · link
Webmaster too though, I always thought that it downplayed my skills but since Claude writes most of my code, maybe that's what I am now.
[−]andreygrehov · 2026-11-14 Sat 21:19 UTC · link
Member of Technical Staff is missing
[−]ykl · 2026-11-14 Sat 21:21 UTC · link
Where does “Member of Technical Staff” fit on this tree? At the bottom should all arrows just feed into “Member of Technical Staff”?
[−]Zaheer · 2026-11-14 Sat 21:26 UTC · link
Co-founder of Levels.fyi here. We think about this problem space a lot in developing our own taxonomy: https://www.levels.fyi/t

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 :)

[−]estetlinus · 2026-11-14 Sat 21:27 UTC · link
I’ve not been in the industry that long, but feel it’s so awkward that devops is in the operations silo. What happened with Development & Operations? Every place I’m at, the devops team is a bottleneck and everyone kind of accepts it.
[−]cheschire · 2026-11-15 Sun 03:18 UTC · link
Read The Phoenix Project. It will give you a little insight into what the original intent was.
[−]verall · 2026-11-14 Sat 21:30 UTC · link
The chart has "Systems Engineer" and "Systems Programmer" and te text even calls out different meanings of "systems engineer", but it misses both the independent field of systems engineering, which is not a software job and all, and the title "systems software engineer", which are SW engineers that write "systems software" i.e. drivers, kernel, OS.
[−]smcleod · 2026-11-14 Sat 21:33 UTC · link
In my 20 years I've been the following (in order):

  - Technician
  - Systems Engineer
  - Senior Platform Engineer
  - Lead Platform Engineer
  - Principal AI Engineer
[−]oldjohnnylane · 2026-11-14 Sat 22:01 UTC · link
I worked in SWE for 35 years and the only titles I was given were: junior, senior, staff, senior staff, principal, lead principal, and senior principal. All followed by “software engineer”. I guess I never worked at companies that used all these fancy names.
[−]dprkh · 2026-11-15 Sun 04:03 UTC · link
No middle or intermediate?
[−]probably_wrong · 2026-11-14 Sat 22:07 UTC · link
Recently I spoke to someone who wanted to know what they should call themselves seeing as they never learned software development, formally or otherwise, but that's not stopping them from releasing AI-powered Python projects in GitHub. I suggested Project Manager, but they took offense to that because (I think) they wanted to hear Software Engineer in order to apply to those jobs. My counter-argument was that, legal rules aside, a S.E. should be able to differentiate good code from bad, but my suggestion wasn't super well received.

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.

[−]layer8 · 2026-11-14 Sat 22:36 UTC · link
You could have suggested “prompt engineer”. As in “engineering by prompting”. :)
[−]Xirdus · 2026-11-15 Sun 02:09 UTC · link
Prompt engineering usually means engineering the prompts themselves, and implies in depth knowledge of what makes a good prompt.
[−]layer8 · 2026-11-15 Sun 11:26 UTC · link
I know, but the vibe-coder in question wouldn’t have liked that.
[−]gumby · 2026-11-15 Sun 02:38 UTC · link
A prompt engineer is one who gets to the standup on time.
[−]pcthrowaway · 2026-11-14 Sat 23:06 UTC · link
As a software engineer (CS degree and ~10 years of pre-AI experience), I'd feel uncomfortable saying I was a Project Manager
[−]santoshalper · 2026-11-15 Sun 04:10 UTC · link
Who would want to?
[−]yieldcrv · 2026-11-14 Sat 23:12 UTC · link
Member of Technical Staff, Applied AI
[−]Buttons840 · 2026-11-14 Sat 23:20 UTC · link
Software engineers keep software on the tracks like train engineers keep the train on the tracks. Nobody thinks the train engineer built the train...
[−]jelloroll42 · 2026-11-14 Sat 23:30 UTC · link
Do you think the "engineer" in software engineer is etymologically closer to train engineer than it is to electrical/mechanical/civil engineer?

I don't think so.

[−]layer8 · 2026-11-14 Sat 23:46 UTC · link
We should train engineers regardless.
[−]zx8080 · 2026-11-15 Sun 00:04 UTC · link
Isn't it maintenance, not engineering?
[−]hunter2_ · 2026-11-15 Sun 05:21 UTC · link
If you look up the etymology of engineer, you'll find ancient roots (Latin, etc.) many hundreds of years old which are primarily about contriving/inventing/designing clever devices and occasionally about operation thereof. And you can find that a definition regarding train operators was added less than 200 years ago. The train thing is just an offshoot that is irrelevant to other types of engineering.
[−]zx8080 · 2026-11-15 Sun 00:05 UTC · link
Prompt Editor (Senior)
[−]apt-apt-apt-apt · 2026-11-15 Sun 03:45 UTC · link
LGTM-er (100% approval rate)
[−]0c3ca83 · 2026-11-15 Sun 01:03 UTC · link
I would suggest "Anthropic client", because the relationship between them and Anthropic is similar to the relationship between a client and a contractor.

You ask the contractor for what you want, iterate a little, and take what they give you. Sometimes you may read the results.

[−]derektank · 2026-11-15 Sun 16:18 UTC · link
Nobody calls the person that manages a company’s external contracts a client internally though, we call them something like “contract manager” or “acquisitions specialist” if the contract is with a manufacturer.
[−]person8645 · 2026-11-15 Sun 01:06 UTC · link
Project Manager is a great fit. I also heard and liked Director, which brings in good analogies from filmmaking and implies nothing about technical ability either way. Could even be Software Director.
[−]Xirdus · 2026-11-15 Sun 02:05 UTC · link
Software Director could be confused for Director of Software Development.
[−]luisfmh · 2026-11-15 Sun 04:39 UTC · link
Director of Software Directing?
[−]disgruntledphd2 · 2026-11-15 Sun 08:24 UTC · link
Clearly Director of Software Direction.
[−]anal_reactor · 2026-11-15 Sun 01:08 UTC · link
"The title is not important" was a movement coming from the fact that same jobs at two companies could've had vastly different responsibilities, and vice versa. But that was rather an exception and outside that bubble, people have always paid great attention to titles.

Yours sincerely, Software Developer with 6 years of experience. Last week for the first time in my career I've actually merged application code. It was AI generated.

[−]Xirdus · 2026-11-15 Sun 02:11 UTC · link
...what did you do the last 6 years?
[−]tipperjones · 2026-11-15 Sun 03:55 UTC · link
Yeah, wait what?

I'm confused about the point he's making here with the 6 years thing.

[−]anal_reactor · 2026-11-15 Sun 08:30 UTC · link
Infra
[−]Xirdus · 2026-11-15 Sun 14:47 UTC · link
Oh I see.
[−]chupchap · 2026-11-15 Sun 01:36 UTC · link
As an analyst who vibe codes a lot I think it is perfect, along with Product Manager. There is a lot more to these roles, but I think they're the closest.
[−]disgruntledphd2 · 2026-11-15 Sun 08:27 UTC · link
Product rather than project makes much more sense for vibe coding.

It's a weird one, because recently I've been working on a JS based system when I don't know JS and it's definitely very very different from when it's a language you're familiar with.

[−]TZubiri · 2026-11-15 Sun 02:14 UTC · link
There's only one country to my knowledge that has historically allowed anyone to be called a software engineer without being an engineer . Now that the bar is dropping even lower, can we stop normalizing that? I never had the audacity to call my self a Software Engineer without an Engineering degree, just use any of the other dozens of words.

Comp Sci degree is somewhat of an exception, I get that

[−]keyle · 2026-11-15 Sun 05:09 UTC · link
Project engineer..?
[−]isolay · 2026-11-15 Sun 05:22 UTC · link
Prompt Whisperer
[−]RGamma · 2026-11-15 Sun 10:52 UTC · link
Cybermancer
[−]physicles · 2026-11-15 Sun 05:39 UTC · link
If I asked Gemini to recommend a weight loss plan, does that make me a dietician?
[−]egeozcan · 2026-11-15 Sun 06:54 UTC · link
You're jesting, but I've seen self-claimed "dietitians" with much less involvement than asking a bot.
[−]theginger · 2026-11-15 Sun 09:37 UTC · link
If you earned a living by doing it for other people it would.
[−]mike50 · 2026-11-15 Sun 12:02 UTC · link
A nutritionist, the non protected title / non licensed person.
[−]gremlinunderway · 2026-11-15 Sun 15:15 UTC · link
Except dietician is a protected job title that is licensed by legally-recognized professional standards bodies.

Software "engineers" in North America don't have any actual professional board that licenses or oversees their work. Until governments actually regulate the profession through these bodies, no one can gatekeep software development job titles.

A bunch of blog posts talking about "industry standards" is not a reference point for this.

[−]galaxyLogic · 2026-11-15 Sun 06:57 UTC · link
AI is heavy machinery. In the construction industry you need special permits to operate such machinery, and everybody driving a car needs to have a driver's license.

So I wonder if users of "heavy AI" should also need to have a license.

[−]cadamsdotcom · 2026-11-15 Sun 11:40 UTC · link
Do people die or get maimed if you drive your model wrong?

Will your model and harness be the same in enough time to develop a curriculum for it and disseminate that to enough people to give it enough of a reputation to be worth doing for students, before it's obsolete?

I'd argue no on both counts.

This work has key differences vs operating heavy machinery.

[−]whilenot-dev · 2026-11-15 Sun 07:05 UTC · link
I'd call them a Software Conductor.
[−]julianpye · 2026-11-15 Sun 07:11 UTC · link
I think the role is that of a producer - similar to a music producer in the 70s and 80s integrating new synth and recording technology into ambitious outcomes where the goal was defined but the shape and detail unpredictable.
[−]sznio · 2026-11-15 Sun 07:38 UTC · link
i think "User" ultimately.

It depends on the way they use it. If you design an architecture and use an LLM to fill it in, I'd consider a more technical label. If you're just using what Claude made, and providing feedback, that's just how software was done 10 years ago except then they'd be talking to a guy instead. And it would be orders of magnitude more expensive.

From my perspective, Claude feels like 5 engineers in a box. you can make things that required small organizations to make.

[−]cstever · 2026-11-15 Sun 11:46 UTC · link
"User" makes sense. Another option would be "Client"
[−]jacobsimon · 2026-11-15 Sun 15:22 UTC · link
This is shortsighted (no offense). We should collectively stop personifying AI tools like this before we’ve completely lost our way.

If you’re building and producing valuable software, you are still a creator or software engineer full stop. We can argue over titles, but don’t demote your own creative process to passive consumption.

[−]dan_grec · 2026-11-15 Sun 08:07 UTC · link
I have a bachelor of Software Engineering that is fully accredited by the Australian institute of Engineers. It was two years longer than a C.S. Degree.

Software Engineering is about so many things other than code it was an ongoing debate if code and programming should even be taught at a university level course, and while contemplating my masters of S.E. I had many great conversations with faculty about the distinction. Writing code is much more akin to welding or wiring, therefore belongs at a trade school, not a university.

After all, the discussion goes, Aerospace and Electrical Engineers don’t learn the doing of welding or pulling wires through crawl spaces, why should Software Engineers concern themselves with the doing of code.

>a S.E. should be able to differentiate good code from bad

A software Engineer needs to have all phases of the SDLC in mind, and be thinking about and planning all of them. Code is a tiny piece of the puzzle.

I’m thinking about requirements gathering, designing, testing, deployment, maintenance, long term change strategy, hand off to a new owner, etc, etc.

I could always see the merits of both sides of the discussion. Then at my first few jobs it very quickly became clear that many CS grads were just there to write code and that’s it. They didn’t have the big picture ideas at all, and I immediately understood the difference of a Software Engineer.

[−]f1shy · 2026-11-15 Sun 08:21 UTC · link
Just let me give my 2ct: as somebody that did search for hiring EEs and mechanical engineers, I really searched hard for the ones that DID soldered, pulled wires and welded, even for management positions. They use to manage much better, had better communication with the team, had better feeling for quality, could look much further in the furure and had much more authority, were way more respected by the team.

That being said, another 2ct:

> A software Engineer needs to have all phases of the SDLC in mind, and be thinking about and planning all of them. Code is a tiny piece of the puzzle.

I would not AT ALL call it tiny. Yes, is one part of MANY. But is your final delivery. Would be like Toyota saying: “hey they don’t really have to understand what makes a good car, the cars we sell is a tiny portion in the whole development cycle”. SW engineers do need to tell apart good from bad code, as much as good from bad tests and good from bad requirements. After all, if I somehow manage to deliver good SW (working and documented) I don’t gove a crap how the requirements and teat work or don’t in the company.

[−]dan_grec · 2026-11-15 Sun 08:30 UTC · link
I remember a professor who used to say “If the requirements, design, test plan and acceptance criteria are done to a high enough standard, the code can be written by a monkey.”

Which is exactly what we’re seeing now with LLMs writing code.

Interestingly you’ll see the same building a mega bridge or skyscraper. As long as the plan has been done well, it can be assembled by relatively very unskilled labor.

Note the test plan and acceptance criteria could be one and the same, depending.

[−]sverhagen · 2026-11-15 Sun 12:19 UTC · link
> If [everything before coding] are done to a high enough standard

That "if" is doing an unrealistic amount of lifting, here, in practice, and that's probably why human coders have had a better run than monkeys.

[−]f1shy · 2026-11-15 Sun 12:25 UTC · link
> If the requirements, design, test plan and acceptance criteria are done to a high enough standard, the code can be written by a monkey.

Nice sentence. But it has 2 problems:

1) Define "high enough" - There is where good requirements start, make it measurable! (How much is going to cost?)

2) Related to "you’ll see the same building a mega bridge or skyscraper". I've seen enough cases where "unskilled labor" messed up building something. You will reply "that is why I said 'Acceptance Criteria'!". My take is: you are making it far more complicated than it should, taking totally unnecessary risks, and it will be invariably more expensive in the long run.

I mean, I've seen enough examples of cases where the acceptance criteria was not properly checked, because also the ones doing the test were "unskilled" and had received a "perfect plan". (Just look at any infrastructure disaster we have every year)

And even in the best case: you discover the poured cement does not meet the specifications. What now? Blow the thing and start over? Better to have skilled labor.

Again, my 2ct. experience: hire experienced people, who actually have done the work all the way down to the lowest level.

"If you think knowledge is expensive, try with ignorance"

[−]randomaccountpe · 2026-11-15 Sun 10:30 UTC · link
I’ve heard this argument before about software engineering vs CS, and it’s just super untrue. Especially for most Australian/NZ universities, where the software/math focused courses are basically copy-pastes of each other regardless if you do CS or SE.

I only particularly mention this, as it sounds like your argument has shifted from "What does software engineering entail" -- to -- "What is software engineering that CS student's don't learn"

SDLC and other “engineering” concepts are all in computer science for most universities. The line you’re drawing between CS and SE grads just doesn’t exist in practice.

Also, where did you find a 5 year long software engineering bachelor’s?

As far as I’m aware, most pipelines are a 3 year bachelor’s degree in compsci. Or a 4 year long engineering bachelor’s with honours, in software engineering.

I normally don’t post, but these sorts of comments have always irked me. They give off gatekeepy, “No True Scotsman” vibes.

Funnily enough, this kind of thinking is part of the problem the family tree shows: there are so many different titles that are meaningless, which is what other commenters have pointed out

[−]mike50 · 2026-11-15 Sun 11:48 UTC · link
Electrical Engineering programs have practical labs where you build electronic projects and run wires. Most electrical engineers don't work in power or building engineering. Senior design projects (for undergraduate) have to be mostly built by the students. Metallurgical Engineers and Welding Engineers take welding courses not Aerospace.
[−]dan_grec · 2026-11-15 Sun 12:10 UTC · link
Absolutely , you’re right.

Of course no Electrical Engineer would be able to tell you the building code requirements for how close an outlet can be to a sink, or the ground, or a window. Every electrician can.

No Aerospace Engineer will be able to weld strange metal combinations, or be great at aluminum and thick stainless and oil pipeline pipe. Every ticketed welder can.

When you want the doing done, it’s great the Engineer has a working knowledge, which no doubt makes the project better, but no way in hell you get them to do it on the real thing. You get the ticketed tradesperson.

[−]squishington · 2026-11-15 Sun 12:29 UTC · link
If writing code can be considered a trade, what about debugging? What about debugging a complex embedded system? I'm not sure what i should call myself. I usually just say programmer because it's easier to say that. I did an electronics and communications engineering degree at an Aus uni, focusing on DSP and FPGA. I had 2 FPGA jobs, one in defence and one in medical devices. Now I've been working with embedded software for 7 years for a chip company. I'm still not sure if I should call myself a Software Engineer, even though that's what it says on my contract. I occasionally find gaps in my software engineering knowledge, but i learn as i go.
[−]AQuantized · 2026-11-15 Sun 13:32 UTC · link
I don't understand the view that coding is like a trade; even with a good idea of the systems involved and an intended design, I often find out things while coding that change the perceived optimal design substantially. I don't think this is nearly as likely to be the case with wiring or welding, and may even be impractical to change regardless given the less mutable nature of the metal or electrical systems you're working with.
[−]giantg2 · 2026-11-15 Sun 13:45 UTC · link
I think you're vastly underestimating the complexity and possible technical variations involved in welding and wiring at an industrial level.
[−]sdeframond · 2026-11-15 Sun 17:28 UTC · link
I've come to think there is a good amount of BS, bikeshedding and misplaced ego in making these distinctions.

Actually, no. It is a HR concern. HR need to put people into boxes. Most people dont actually fit but whatever.

[−]_s_a_m_ · 2026-11-15 Sun 09:12 UTC · link
the endless cycle of incompetent people wanting important titles to fake a personality they will never have
[−]kakacik · 2026-11-15 Sun 11:04 UTC · link
Cannot be an engineer without corresponding university title, be it mechanical, construction or software etc. Same as doctor or lawyer for example. Various emotional insecurities of wannabe-whatever are not that relevant here.
[−]hkolk · 2026-11-15 Sun 11:15 UTC · link
That really depends on the country and the spelling of title. In the Netherlands only the dutch version of the word is protected for instance. And other countries don't have protection.
[−]mike50 · 2026-11-15 Sun 12:00 UTC · link
Until recently you could get licensed as a Professional Engineer without a degree at all in my state (with the exams) and even today there is an waver process for 15 year of lawful practice elsewhere (my great uncle did this).
[−]gremlinunderway · 2026-11-15 Sun 15:17 UTC · link
Nope.

Actual engineers, doctors and lawyers are given that title not through their universities but through legally-recognized standards bodies. These are standards bodies that certify them, review their work, can investigate deviations from standards and even delicense people if needed. These standards bodies may require university education too, but they set the standards and certify professionals, not the university.

In North America, there aren't any such bodies for software development. So trying to gatekeep this term because of a university degree is absolutely not the same thing as lawyers, doctors or mechanical engineers.

I would be fully supportive of gatekeeping this btw if such professional bodies (recognized by law, not just self-initiated) existed, but pretending that the title software engineer is the same as mechanical engineers, doctors and lawyers is ridiculous. Lawyers have to pass the bar and maintain certification with the bar, and can be decertified if found to be performing outside of those standards.

Until there are actual standards bodies overseeing this, sorry, your university degree equally means the same as anyone self-taught so long as no one actually oversees the work and certifies people.

Pretending your university degree qualifies you to this is equally emotionally sensitive ("but but but my university WAS SUPER DUPER HARD U GUYZ")

[−]giantg2 · 2026-11-15 Sun 13:41 UTC · link
The titles between different levels don't seem to mean much because of the variation between companies. But I do see merit to differentiating between roles.

As an example, I moved from Software Engineering to IT Controls Analyst. The pay brackets are lower and there are way fewer job postings. Even this chart of software related job completely leaves out any compliance or audit function, illustrating just how little my own profession thinks of us.

[−]zahlman · 2026-11-15 Sun 17:33 UTC · link
It's probably not worth wasting time on people who present as wanting your insight but apparently really just want your permission.
[−]thomasqbrady · 2026-11-14 Sat 22:09 UTC · link
Where my Design Engineers/Design Technologists at?
[−]etoxin · 2026-11-15 Sun 01:14 UTC · link
UX, Flash developer, Animation, 3D animator, 3D modeller. So many roles under this.
[−]yieldcrv · 2026-11-14 Sat 22:14 UTC · link
I a/b test titles on my linkedin every other month to the trendiest of trendiest terms

sometimes I hypothesize terms and roles, like a astro physicist imagining celestial objects that cant be detected for another 100 years

and that works too sometimes, you have to assume there is a mismatch between what employers want and what talent does

my background remains the same just what I’ve been doing the last 2 years gets radically reimagined

[−]bodash · 2026-11-14 Sat 22:42 UTC · link
Another path: “fullstack” -> “product engineer”
[−]the_origami_fox · 2026-11-15 Sun 08:01 UTC · link
My path is software engineer -> data engineer which isn't on here.

Some data engineers do come the SQL path, which is shown , but I came from a software background and work with AWS, Azure, Spark, Python, Scala and IaC. I'm always shocked at my peers lack of basic software foundations - I had an intermediate ask me what a "Python environment" was!

[−]fffrantz · 2026-11-15 Sun 00:19 UTC · link
I guess telecom engineer has been kind of a grab-all title for all kinds of jobs that are telecoms related but not enterprise networking. I’m a telecom engineer (telecommunications eng. diploma and all that jazz) but I deal with such ancient (PDH & SONET, yay!) and arcane stuff that no current job title would work.

Funny how an almost 100 years old title is still relevant today.

[−]oh_my_goodness · 2026-11-15 Sun 01:05 UTC · link
Folks. Job titles don't mean anything. You know this.
[−]cobychapple · 2026-11-15 Sun 03:18 UTC · link
Interesting how disciplines critical to good software like Product Design, Service Design, Interaction Design, Content Strategy etc are just… not represented.
[−]SoftTalker · 2026-11-15 Sun 03:25 UTC · link
I've always just called myself a "computer programmer." Never was much concerned with what HR called me.
[−]davidw · 2026-11-15 Sun 04:30 UTC · link
"Forward deployed engineer" sounds like it comes from people who spent too much time fantasizing about military crap.
[−]bcooke · 2026-11-15 Sun 12:44 UTC · link
Seems to have started at Palantir so the math checks out
[−]CSMastermind · 2026-11-15 Sun 05:15 UTC · link
The switch to the terminology of "forward deployed engineer" to replace consultant has been overwhelming. Almost certainly driven by the bad connotations that the title consultant has. Makes me wonder how long it will take to burn through any positives associated with that title before they switch to something else.

I've also seen a huge number of data scientists rebrand as "AI engineers" so I agree with that title's placement in the chart but I think that ultimately that's the wrong place for it to live. I'm convinced that AI Engineer will be a specialization of backend engineering since the work to integrate agents into production systems will be backend work not model training or other data tasks.

[−]classified · 2026-11-15 Sun 05:37 UTC · link
Great project! I love that you can download the Graphviz source.
[−]bluerooibos · 2026-11-15 Sun 05:48 UTC · link
Cool! Not mobile friendly though - can you make the diagram zoomable with touch screens?
[−]mgaunard · 2026-11-15 Sun 08:30 UTC · link
What would be more interesting would be going deeper on the software engineer titles.

Team Lead, Engineering Manager, Architect, Head of Engineering...

Everyone has a different view

[−]rester324 · 2026-11-15 Sun 09:21 UTC · link
I need to point out that these titles are very much culture specific. For example in the japanese work culture regardless of whatever experience, skills and certificates you have, you are just a software engineer, an idiot who is treated like a low IQ moron and paid in peanuts (OK, I am strongly exaggerating, but not that much in reality sadly :/)
[−]pmg101 · 2026-11-15 Sun 10:09 UTC · link
I'm glad someone's done this! I've been a paid programmer since graduating in 1999 and every time I change jobs I find that the title has changed behind my back and everyone is acting like today's titles have existed forever with an immutable and universally agreed meaning and scope, meanwhile I just turn up and be the human/computer conduit as always.
[−]b800h · 2026-11-15 Sun 10:34 UTC · link
It's funny. As late as 1995, careers books in UK schools were still listing only "Systems Analyst" as a viable job in computing. Never pay any attention to school career advisors.
[−]MuhammedBasith · 2026-11-15 Sun 11:47 UTC · link
interesting how the same title can mean completely different things depending on the company.
[−]janpeuker · 2026-11-15 Sun 12:51 UTC · link
Odd that levels such as "Senior Software Engineer" are on a timescale (they should just be removed) but others such as "Technical Lead" are not even in the core. Classic Example why AI-generating this looks nice but doesn't actually offer much insight.

I'd much rather have seen how "Architect" developed and merged back; similarily how "SRE" (and Platform Engineer) following its idea "when you treat operations as a software problem" merged System Administrators with Software Engineers; or how Full Stack Engineer with AI now has gone back to Product Engineer.

[−]giantg2 · 2026-11-15 Sun 13:36 UTC · link
I would say you're missing the whole Compliance spectrum, such as IT Control Analysts, Internal IT Auditors, etc.
[−]nkapias · 2026-11-15 Sun 14:40 UTC · link
https://news.ycombinator.com/item?id=21591441

Somehow linked, I find both resources complement each other.

[−]pkthunder · 2026-11-15 Sun 14:53 UTC · link
Really digging the interactive graphviz diagram, would love to know more about how you threw it together.
[−]bszczyglo · 2026-11-15 Sun 16:32 UTC · link
I always have a problem to name myself, I've done too many things for too long..