Trying to wring some useful insights out of the roiling AI discourse: today I want to talk a little bit about Senior Engineer Essentialism. As with many AI Coding things, this is not a *new* problem, but it is now a *worse* problem.

According to my hazy recollection, circa 2012 we started seeing a rash of forgettable blog posts about "what it really means to be a senior software engineer".

There is no such thing as a senior software engineer. 🧵

Nowadays we are hearing constantly about "treating an AI like an enthusiastic junior". I've recently written at a bit more length about why that's not really a good metaphor specifically <https://blog.glyph.im/2026/03/what-is-code-review-for.html> but it also makes an incorrect categorical assumption about people: that there is a clear distinction between "junior" and "senior" people, which just isn't true. You might think it's a spectrum, and of course any cutoff will be arbitrary, but even that's wrong. It's multiple spectra.
What Is Code Review For?

Code review is not for catching bugs.

People have skills, and skills come from training and experience. Recent graduates often have a clearer memory of specific aspects of their training. If I needed to have someone implement a customized hash table, chances are I'd seek out someone who had recently been to college or to a training program that focused on algorithms. That does not mean I would look for a "junior"; some "juniors" are self-taught. Some had education that focused less on fundamentals and more on a specific tech stack.
In addition to skills, people have *titles*. Titles come from promotions, which means that they come from self-advocacy and luck. In 2017 when engineers were a red-hot commodity and people could get raises by skipping from one company to the next every 6 months, we had a fair amount of title inflation. In 2026 when layoffs are happening every year in the tens of thousands and early-career folks are barely hanging on, title advancement is significantly slowed.
As humans, we look at our environment and try to find patterns. So if we find ourselves in a place with some people called "senior" or "staff" who seem pretty skilled, and some people called "junior" (or "no adjective", that's always fun to try to talk about, just in terms of grammar) who seem less so, it's natural to begin to think, "hmm, it seems that senior-ness is a quality I should cultivate and try to achieve. how can I do that?" These correspondences are not *random*, after all.

This is where the parade of thinkpieces come from, people picking apart elements of experience they admire in others and in themselves, trying to chart a path.

But the reality is that there is no path. Many of these decisions are made arbitrarily. What your particular organization values may be different than what another one does. Not to mention tons of implicit biases at play. Different skills are evaluated and rewarded differently in different places and at different times.

If you want to improve your professional standing, by all means, make a skills inventory and try to achieve those skills. Many of these skills might be in common with other "senior" people you know. Take some from your organization's leveling doc. But remain aware that there is nothing that "separates" juniors from seniors, that there is no threshold you cross, and that a good team is made up of a diversity of skills that complement each other, not just a bunch of people with maxed out 10X stats

The negative outcomes of a static senior/junior distinction mindset include:

- complacency once you've achieved an arbitrary title
- failure to identify specific skills needed to complete specific projects
- treating other engineers as homogenous and fungible based on level
- not listening to people lower-level than you are because you're now Senior-er than them
- failing to provided needed pushback on people higher-level than you are even when you have specific knowledge that they don't

"Juniors" can be more than you expect and "Seniors" can be less. A senior engineer who has been in an environment that provides psychological safety, good tools, constant clear feedback, a culture of mutual respect, and strong technical challenges will probably be amazing to work with. Someone who has worked just as long and just as hard in a backbiting constant corporate turf war will be bitter and jaded but will not have the technical chops to match that.
Ultimately in our culture we need to have ways to calculate what people are compensated, and I do not fault anyone for participating in the process of this type of ranking. Some number needs to be written on the offer letter and if you don't have a process for determining that as fairly as you can, then it will be entirely based on implicit biases. So people will have titles and titles will have pay bands. But that's the real, final difference between "junior" and "senior": about $100,000.

@glyph yet another symptom of our collective mythmaking that capitalism and modern corporate culture is a meritocracy

the money majorly follows antisocial behavior and exploitation instead of skill and cooperation

@glyph A union I used to work with had this kind of turf war culture. As a result, whenever you got two people from that union into the same room, they'd spend an hour or two locking horns like rams to establish which one was dominant. This turned out to be an excellent way to never get anything productive done

@jalefkowit that's some simple sabotage manual energy right there.

I also had a job like this once. Some adjacency to military culture had leaked in the toxic concept of "rank" and sometimes people would even begin by asking each other their levels to quickly determine who was first among equals without going through the tedious process of "hearing ideas" or "doing the work of analysis"

@glyph I feel like that's a mixed bag. Explicit rank has at least has the virtue of short-circuiting the kind of dominance establishment that comes with implicit rank. It also short-circuits good ideas if they come from people without enough stripes on their sleeve, but that's a different problem
@glyph In short, organizing people is a pain in the ass

@jalefkowit yeah, not really disagreeing, tyranny of structurelessness and all that.

my counterpoint though would be that while "chain of command" is a useful concept and can prevent deadlock (you give your inputs but the manager makes the final call, or delegates the final call in a specific context to a specific deputy), "arbitrary level comparison" in a lateral discussion / informational meeting is just laziness. if we're here to share ideas, let's talk about ideas, not domination

@glyph

In my 30-year career, I've seen basically no relationship between job title and technical ability. Some companies do better than others at this (my current one is more equitable than any I've worked at previously), but it's a hard thing to do perfectly, and most do so very badly.

@joelle At several of my jobs I have been unusually lucky on this front, but yeah, I have had the experience you're describing too and I don't think it's uncommon at all.

@glyph This. A thousand times this. Engineering is a social activity. It's a rare bird whose attitudes towards the community they are in isn't shaped by how that community functions.

Sometimes their work environment changes them so profoundly that it's visible outside of work - and that is a tragedy.

@glyph Something I notice is that the senior/junior distinction is also based on specific kinds of skills, usually ones that tend to lend themselves to high levels of visibility. For example, leading a large project is a fast path to the kind of visibility that gets you marked as "senior", keeping a crufty old project working is not... even if most large software projects fail, and it's terrible for accessibility and tends to upset people when the UX changes pointlessly again.

I'd also wonder if there's a gender element, crufty maintenance tends to be pegged as more "feminine". I know one of my colleagues who mentored me warned me not to do too much important glue work because that stuff just isn't visible.

EDIT: I think I found the article/presentation about this: https://www.noidea.dog/glue

Being Glue — No Idea Blog

Slides and notes for the Being Glue talk.

No Idea Blog
@glyph Personally, I'm not a huge fan of the way the article treats it as a this-engineer-is-not-doing-corporate-politics-right issue rather than a the-industry-needs-to-get-its-incentives-in-order issue, but I think it does point to real patterns that happen in a lot of corporate environments
@glyph I'd add "privilege" to "self-advocacy and luck." E.g.: my experience is that "principal" means "senior and cis."

@glyph not to try and influence the direction of these thoughts, but something that occurred to me today:

around the same time, we saw an awful lot of fuss around the adjective "opinionated" as the world of programming embraced that programmers have Big Opinions and these inevitably make their way into our software, and navigating opinions (especially where there are conflicts) is in some sense one of the cores of the profession

and now there's a lot of fuss about something that definitionally cannot have opinions replacing that core…?

@SnoopJ @glyph One time I decided I was going to stop having opinions.

In reality I was going to stop saying things that sounded like strongly held beliefs even though I had only thought about them for like 30 seconds just now in this meeting.

Management generally became less interested in what I had to say if I said it with my actual levels of confidence.

LLMs can't have opinions, but they can make text that is incorrect and uses words that imply confidence.

@dreid @SnoopJ @glyph this is a thing a lot of women in software could tell you about.

I've literally been told by technical leads to speak more confidently in meetings with the subtext of "just bullshit management."

Not a thing I was willing to do for multiple reasons.

@pathunstrom @dreid @SnoopJ yeah I'm taking all the stuff about gender and race as read here, because I don't want this thread to turn into a dissertation, but it's all obviously a strong influence
@dreid @SnoopJ @glyph yeah same dynamic in academia
@glyph in countries where "engineer" is a reserved professional title... God kills a kitten every time a software job is posted

@glyph my title got unexpectedly upgraded to ‘senior’ when I started at my current employer, after trying and failing to get promoted at the previous job. I’ve got ~10 years more experience than some coworkers who had the title before I did. But they had several years more experience with parts of the tech stack (and conversely I’ve done a bunch of other stuff that not everyone else has, which is useful too).

It’s at least taught me not to set too much store by the adjective, anyway.

@glyph this is giving me flashbacks to the “title doesn’t dictate behavior” bit from _Clerks_