If you've never finished a project, lived through political, technological and social consequences of your actions, what use is your experience? You could make any decisions and you wouldn't know if they're worth anything.
Doesn't mean his post is useless or worthless - but it does give important context to his writing.
Titles are the exact time we should do some gatekeeping. Being called a “senior engineer” with only 2-3 years is frankly a joke.
Knowing if someone is new to what they are discussing makes the reader less likely to take what they say at face value.
While you should still be critical of people who have experience, it probably will hurt you less or give you different insights if what they are saying comes from experience.
For example, I'm fairly certain the world of web programming would be way better off if lots of those tutorials had some sort of "I didn't know what HTTP or arrays were a couple of weeks ago" disclaimer :|
it seems like "staff" or "principal" roles are the real "seniors"
I’ve interviewed “Principal Software Engineers” whose understanding of software engineering and computer science were minimal, and it’s because of this phenomenon. Just last week I talked to one who couldn’t explain what what makes an interface RESTful. They had no idea how Git works beyond commit and push. They wrote a unit test that did the exact same stateless thing twice, and asserted that the results were identical. They wanted $250K/yr.
You have maybe a 40 year career. If you get the "senior" title 2 years into it, odds are you'll have the same title for the next 38 years. That's kind of demoralizing if you're a "ladder climber" personality.
I remember quite clearly sitting in an office back in 2006 or so as a young punk but with enough years behind me to have already reached the salary plateau. Looked around me and saw a guy in his late 50s doing the exact same thing I was doing, with the exact same title, and probably making pretty close to what I was making. It filled me with existential dread! The realization that this industry hardly has any avenues for growth as an IC once you become "senior" and hit that salary plateau. If you don't want to be a people-manager, you're likely going to wander from company to company as a perpetual "Senior Software Engineer" until you are elderly and retire.
There are a handful of companies that have those "staff engineer" and "principal engineer" and "fellow" titles that come with actual salary growth, but they constrain those roles so severely, that most people won't get into the club. Just like most managers will not get into the Director or VP club. And these titles are not meaningful across the industry: If you do make "principal engineer" at your medium-sized startup, nobody else cares: when you get hired at Google, you'll be back to "Senior Software Engineer" and on the treadmill again.
It's kind of a reality that us worker-drones need to just accept and deal with. Companies don't seem to be motivated to provide actual, achievable growth paths that are transferrable from company to company.
> Companies don't seem to be motivated to provide actual, achievable growth paths that are transferrable from company to company.
The cynic in me says why would they if they're getting what they need without it? But taking a step back, most companies don't have any work worthy of someone who actually deserves a Principal or Fellow title. Even Staff doesn't mean much when you work at a logistics company with 10 developers - you're just a glorified manager at that point.
Just because the JS framework you're working with is 3 years old doesn't make you a senior because you have 2.5 years of experience with it. There's a lot more to the job than that.
I’m in data engineering myself these days but if I jumped into some other area, even one I didn’t know from previously, I’d set out to walk the walk there too. It’s not like “We know you’re staff now, but that is backend, so we’ll make you an associate front end dev” or whatever?
Labels are a leaky abstraction, genuinely useful for those who don’t (want to) care and know. But useless, maybe harmful, when it comes to difficult problems, conflict and subtle interactions. In these cases we need to recognize that the map is not the territory.
If I meet someone with 8 years of experience that is not confident to tell me they're a senior engineer, I won't hire them.
If I meet someone with 2 years that tells me they're senior. I'll listen to what they say carefully and judge if they can do the job.
Titles are useful labels that compress a lot of info. It's not about how accurate they are, is about trying to differentiate quickly.