Hacker News new | past | comments | ask | show | jobs | submit login
The curse of the senior software engineer (yieldcode.blog)
56 points by thunderbong 11 months ago | hide | past | favorite | 42 comments



I started my career as a founder in the dot com boom, hiring engineers and doing everything in the stack. Founded more companies then eventually decided to leave the founder game and went to get a role as an employee about 5 years ago.

Recruiters had no idea what to do with me. I've been working as a senior IC with increasing responsibilities, but my founder experience seems to be a negative. Half the time during intro calls they didn't even read that far down my resume.

Only early stage startups seem to value the experience at all, and even then it tends to be outweighed by my age. It's frustrating, but I think I will try the advice from that other post about chopping off everything but my last 5 years of experience. People want simple narratives.


Depends on the company. 2000s-Google valued former founders very highly - I was one, as was my manager, as were about a half dozen of my coworkers. Certain teams within Google still do - we've got 4 indie app developers on my team in Play. Reportedly Facebook also values ex-founders highly (or did during their growth phase, I dunno if they still do), and Coinbase seemed very happy to pick up another crypto-adjacent founder when I applied. On the flip side, Apple offered me a position as a retail sales associate, Stripe seemed to want implementors that didn't ask questions, and Netflix didn't know what to do with me.

I've found that what the recruitment process is looking for is a pretty good filter for the type of environment that you'd want to work in, though. If you're the type of personality who was a founder for many years, you probably will not be happy in an environment where you're asked to put your head down and do what your manager tells you.


I was in a similar position, founder/business owner of about 20 years turned employee about 5 years ago. I went on to (technical) product management and that's worked out really well for me, being promoted twice in 3 years. My experience is really beneficial, with little effort I feel like I'm running circles around peers and even higher-ups who lack experience. I'm fortunate to be in a company which values this.


We're not organized, like other professions, where third parties can actively judge your performance based on public information (publicish...?: lawyers, architects, doctors, etc.); but therws's not an obvious direct relationship to our trade (mechanic, construction, ...). We're treated, at best, like middle management, where expectations are set by factors like past experience (working at the "right" companies), and personal charisma.

I suppose that's the trade off our industry has chosen? It may be fundamental. I think I'd still prefer some way to map the IC portion of the job onto "trade", and the leadership part into "management".


It's not only about being organized, but it's also about the fact that in software engineering, seniority is not valued.

If you need a plumber, or a dentist, or a car mechanic--you would select the one who has been in the profession the longest (considering other factors of course). Other professions have a sense of pride for having long years of service, and a car mechanic with 10+ years of experience probably won't have a problem to find a work at any good car repair shop. He is not expected to become manager or assume other leadership position within the repair shop.

And yet, the tech industry keeps promoting good engineers to bad managers, and expects you to be a Principal/Staff because you are too senior for being a senior.


That makes sense though? There is such a variety in individual skill level that years of experience does not really matter much.

I can think of a few right-out-of-college people who do amazing work, as well as few "10+ years in the field" types who are remarkably bad at the stuff they are supposed to be good at.

The "years of experience" for software engineers is not even in top 10 important signals...


Having been doing this for 30 years there is a clear gap young engineers need to overcome and it comes with seniority.

You saying there is no difference is not coherent, simply. Let's there was no difference then people right out of college would get staff titles which I have not seen, ever. Therefore from personal experience you're completely wrong.


Why does it matter if you don't get promoted? What if you like doing good work, making all that impact by osmosis anyway, but do it for the sake of just liking your damn job?


> Why does it matter if you don't get promoted?

I think the point of the blog-post is that in the long-term it makes it harder to be employed at all.

Kind of like the quip that you can ignore politics, but it won't ignore you.


Not arguing against you in any way, but IMO, if you're at a place where politics will dictate your _actual continued employment_, it's probably not somewhere I'd particularly enjoy working.


Staying employed is one half of it, but the other half is periodically landing a new job. I think most software developers would agree that companies often have frustrating mismatches between what a candidate needs to get hired versus what an employee needs to be productive.

All this job-title/promotion/levels stuff is another kind of mismatch. So a future company you would enjoy working for could still have a hiring process which looks for the stuff you dislike.


That's what I thought as well, and then my company merged with another one with a very different culture.

Design review? "Let's get some Staff engineers in the room". Promotions? "Senior Staff decide". At some moment there was almost a totally silly situation when a redesign for a widely-used internal system was going to happen without engineers who wrote and maintained it - just because those engineers never bothered to chase the titles.


> Design review? "Let's get some Staff engineers in the room". Promotions? "Senior Staff decide". At some moment there was almost a totally silly situation when a redesign for a widely-used internal system was going to happen without engineers who wrote and maintained it - just because those engineers never bothered to chase the titles.

At my company, Staffs were making promo feedback on people they've never interacted with. When asked about Jeff, they just reported, "I haven't seen Jeff's work".

The reason why the staff never interacted with Jeff was because they were both working on different things for many months. For their paths to cross, the staff would have had to be on-call for services Jeff was neck deep in.

But the director took the staff's feedback to Intuit that Jeff is not building relationships at his level. Stack ranked, pipped and fired Jeff who single handedly kept a service alive.

When one sees organizational dysfunction such as this, you start losing faith in corporate structures and management. The work environment just becomes a shithole of confusion. Dysfunctional structures and poor management practices are so pervasive in American tech industry it's a case study of it's own.


> But the director took the staff's feedback to Intuit that Jeff is not building relationships at his level. Stack ranked, pipped and fired Jeff who single handedly kept a service alive.

The irony is the director was the one completely failing to develop a working relationships with his subordinates and what they are doing. He's the one that should have be kicked out the door.


> The irony is the director was the one completely failing you develop a working relationships with his subordinates and what they are doing. He's the one that should have be kicked out the door.

But they won't. Welcome to organizational dysfunction.


One might term it "needlessly greenfield".


Maybe you can also tell the business owner to like his damn job of managing the company more than the sweet profits coming from underpaying senior engineers?


Not following the relevance here. I acknowledge and am aware this is very common, and it's a shame. But seems like a separate discussion.


Not sure if the problem is "being senior", of the kind of companies one works for. If you work at FAANG as senior dev and apply elsewhere similar as senior dev and they are actively hiring, I expect things would go fine. If you worked at FAANG and apply to a way smaller company, then indeed you may look overqualified.

My feeling after 12y in industry and 2.5y at FAANG-like company is that senior engs are valued, and staying senior without getting promoted is considered normal/fine (compared to e.g. not getting promoted from mid to senior). Heck, the pyramid shape of org makes it natural that it's impossible for half the org to become staff eng/managers and have cross-team impact; there can be only so many cross-team collab opportunities and large projects; meanwhile someone has to do the work of shipping things on time and keeping lights green.


I think the author (who says it might be the case) is just seeing a tough job market. I’ve got similar YoE and I’ve seen many older ICs. Maybe not at startups that need to grind you, but what decent dev who has options would want to work there anyways?

3 years ago these “cursed seniors” (assuming they’re decent) could get a 20% pay increase in a couple weeks.


Yeah, I'm not saying the author is wrong, but if all his job search was in 2023 this may very well be the case. When in a tough job market employers can cite a million different things to not hire you, and you start to double doubt yourself as to what's wrong with you.


There is the third part, none of us failed, and there is any desire to lead anyone or anything.


The other curse is to progress to IC7-9 (non manager) at MAANG making 500k-900k and unable to be hired anywhere else. The only place to go is to stay at a megacorp. Thankfully, some of these megacorps violate this article's "curse" rule and allow IC <-> M transitions somewhat freely.

It behooves IC7-9 to instead work on side hustles that can turn into profitable businesses, leveraging their employment pedigree and potential early adopters in industry, because working for a corporation is risky and plateaus.


This is the curse of the enterprise. Small companies can avoid these issues entirely, if they want. And, if they don't and you find a startup with lots of titles like CxO and Head of LaDiDa, run for the hills since they have inexperienced leadership.


The biggest curse in this industry is being so obsessed with titles and ladders that they forget that ultimately - none of it matters.

It doesn't matter to the business that an Engineering Manager title is hands on/off. It doesn't matter if a Staff title is leading/not leading.

What matters is identifying problems and self-organizing teams to solve those problems REGARDLESS OF TITLES.

It it the obsession with titles that causes Directors to spend an enormous amount of time judging people whereas the company actually really only wants the Director to organize their team solve problems. But no, the director will spend time judging people instead of solving problems because the career ladder doc says so.


While I was thinking he had rediscovered how to make "hot water" aka not a big secret, he's also sharing a truth that maybe not everyone knows especially juniors devs.


[flagged]


Author here. I do, in fact, have an engineering degree.

But I guess your comment is more about yourself rather than me.


Interesting, thanks for the information - I think it would be worth including that info to make it clear you're not an "Engineer". At a company I worked at basically everyone had that in their title including "Sales engineers" and "Market engineering specialist" (none of them had an engineering degree)

FWIW, I have a Bachelor of Software Engineering, accredited by the Australian Institute of Engineers.


I honestly don’t care about papers that much. There are professions that can cause harm without proper education, but most of software engineering is not like this.

And to say the truth, it’s all just part of the game. 12 years ago I called myself programmer or web developer. But when the industry popularized the term Software Engineer, I went with that, because in the end I wanted to be hired, rather than dealing with semantics of the word “engineer”.


> FWIW, I have a Bachelor of Software Engineering, accredited by the Australian Institute of Engineers.

FWIW, your bullshit title is just as bullshit as everyone else's bullshit title. It's what you do that matters. Most programmers / software developers / software engineers are garbage at their job, and I give it about a 0% chance that your accredited software engineering degree means you're any less likely to be garbage too. The guys who walk around talking about how they have a Bona Fide Microsoft Partner Certification (BFMPC) are usually the worst coders of all. You realize that they literally just called it "Engineering", right? Some universities call it "Engineering" and some don't, that's just a word they decided to use. You're literally claiming to be better than other people because your college called it "Engineering" instead of "Science". That's the kind of person you're deciding to be.

Anyone can get through school; it's meaningless. And it's meaningless that your college happened to pick the word "Engineering" for your degree. My local colleges distinguish between "computer engineering" and "computer science" as the former being more focused on logic gates and C, and the latter being more focused on type theory and high-level programming languages. That's all it is -- a focus.

The only titles that matter are those that can be revoked, like a medical license, the Bar Association, or a Professional Engineer's license (which is not the same as simply having graduated with the word "Engineering" in your degree), because at least then you know the person is less likely to be literally dangerously unqualified. But I'm guessing your Superior Better-Than-Everyone-Else Bachelor of Software Engineering Accredited by the Australian Institute of Engineers isn't something they'd revoke if it turned out you didn't know a for-loop from your own asshole, is it?


lmao this has got to be one of the most ignorant comments on hn. Unless you're just shit posting, then meh.


Given how snide and ignorant the parent was being, I actually think their response was entirely warranted. You better not be insecure about your own credentials if you've got the balls to question someone else's authority on engineering. Turnabout is fair play.


Oh please. They didn't even claim to be a member of AIE, they just said their university/degree was "accredited" by them. You know: the absolute bare minimum requirement to even call it a degree? You're really impressed by that? Would you be impressed if someone told you they were a member of IEEE? It's just all the same bullshit.


who's talking about being impressed? You are but that's all I see lol


Well then what are you talking about? Why did you bother responding to my comment if you have nothing to say? What exactly was ignorant about it?


In many parts of the world it is not heavily regulated. I studied Computer Science and taken no engineering board exams, yet I've held Software Engineer titles for years.


It's interesting you wouldn't study Software Engineering to call yourself a Software Engineer.


What is engineering? That isn't a rhetorical question, but the root of the whole question.

I would argue that engineering isn't certifications, exams, or education. Those are methods of quality control, not the act itself.

Merriam-Webster gives the following definition for engineering:

> 1: the activities or function of an engineer

> 2a: the application of science and mathematics by which the properties of matter and the sources of energy in nature are made useful to people

> 2b: the design and manufacture of complex products software engineering

> 3: calculated manipulation or direction (as of behavior) social engineering compare genetic engineering

(https://www.merriam-webster.com/dictionary/engineering)

The first definition is unhelpful as it takes us back to the question of definition, but definitions 2-3 apply to software engineering.

Should software engineering require the same quality control mechanisms as civil or mechanical engineering? Possibly, but that's a very different question.


I would imagine you would call yourself a Software Engineer if what you do for a living is software engineering. I'm not sure that schooling needs to be a factor.


Meh, it's my job title / position.


>> I worked 6 years in that company. I had to look back at these 6 years and try to put the “correct” titles to each period of time:

>> - Web developer at the beginning

>> - Senior software engineer afterward

>> - Tech lead when I was leading my own product and a tiny team

And here lays the problem. Claiming that title after 2 years is a joke and devalues the whole thing. It only makes sense if you moved to Mexico and automatically became Señor software engineer otherwise you're making a fool of yourself.

I stopped reading after this as it's a mix of ridiculousness mixed with lack of awareness. Should also change the title to "The Curse of the Señor Software Engineer".


If you show up for your shifts a few weeks in a row you are an assistant manager or a shift manager at a fast food restaurant.. After a year you've dealt with some things that would make a maître d' blush if they saw them in ten years of work. If we refused to let the food service industry create distinctions for itself there would probably be a lot of frustrated HR people but a little more mobility..

In many respects the BS of the tech industry is really a refusal to accept a larger universally accepted structure of BS.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: