Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Software Engineer hitting 40: what's next?
442 points by man-next-door on Nov 27, 2021 | hide | past | favorite | 349 comments
I've been working in software engineering for 18 years. I worked mostly as individual contributor (now as a Senior Staff Engineer), also I was an Engineering Manager for couple years. Now I am interviewing after a few years at the company, and I am hit by harsh reality. For the context, I am in Europe, not in the US.

I like technologies and programming, I want to further improve my skills in designing and developing reliable and maintainable distributed system, make better technical decisions. Also, I want to keep learning and playing with new techs. I am now interviewing for the roles like Staff / Principal Engineer, My expectations for the roles like Staff / Principal Engineer are that while staying hands-on, say for 30%, I will primarily use more my skills in architecture, engineering, and communications to focus on large, important pieces of functionality, technical decisions with big impact, etc. I expect that I would report to a Director or VP level manager, so that I could be exposed to a big picture, collaborate with and learn from a professional who operated on strategic level.

In reality, I am now interviewing for Staff / Principal roles and see a few problems that make me rethink my carrier plans. First, the definion for the most of those positions looks Senior Engineers with a few more years of experience: so you are limited to the scope of a single team scope, report to an Engineering manager, just be a worker at a feature conveyor, just be faster, mentor young workers, maybe get some devops skill. I feel limited in impact in such roles, my borders and carrier are defined by Engineer Managers, who are usually less experienced in engineering and leadership topics than I am. The work is also very repetitive, there is not much meaningful progression, next level. I think those titles are created to cover problems caused by diluted Senior titles: an illusional career progression candy for ICs with some salary increase.

I saw a few Staff / Principal roles that put a very high bar on technical expertise, when only 3-4 percent of all the engineers have such levels, and again usually limited to a lot of coding and a single team scope. They usually have long exhaustive interview process.

An important problem with Staff+ IC roles is that there is a low salary limit as well, and you will face much more competition for top roles. Mostly salaries top at the level of a director of engineering. It is typical for a company to have 10 directors, but only 1-2 IC with a similar compensation.

I want to work hard, and see meaningful progression: in salary, in impact, in respect.

I would like to ask for advice. I believe there are qute a lot 35+ engineers here that faced similar problems and made some decisions for their careers. Now I think to plan switching to a EM track or to Technical Product management. Thank you!




I'm 42 and have stopped paying attention to titles and all the traditional organizational paradigms that are losing relevance.

I feel like the ability to work from home in my sweats on simple problems as a senior engineer and receive a 75th percentile income relative to my neighbors in one of the best neighborhoods in my new home state is the most societal progress I will ever experience in my lifetime. I'm a lifelong bachelor by choice. Why bother striving for anything career wise when I am on track to retire comfortably to focus on my mostly free hobbies no later than the age of 50? For a house with a 3rd bedroom I don't need?

No, best to appreciate what I have and leave the striving for the next generation of engineers.


That's sort of my attitude too, though I'm a bit older. I was able to retire, a bit earlier than most, a little over a year ago. The main reason I actually did was a lack of significant overlap between what I enjoy doing, what I felt needed doing, and what the company insisted engineers at my level should do. I wasn't willing to give up all enjoyment on one hand or my professional conscience on the other, so I gave up the reviews and paychecks. The prevailing attitudes in this industry make me not want to work in it.

People who have never reached either that level or that longevity will surely say I should have stayed in, played by the rules better, and built up political capital so I could make more positive change some time in the future, but you know what? I had already paid those dues many times over, and I wasn't interested in paying them yet again. For all but a few, that promise of a rosy future is just bait that employers use to justify their BS in the present. I'm not that much of a sucker. Now I'm comfortable and my time is my own, and that's the only victory condition I care about.


Sounds great, if you can retire at 50. In the EU you can’t (or at least not in Sweden where I am), so you have to think about how sustainable this approach is past 50… and to me it doesn’t really feel sustainable.


I feel like as a software engineer, in most of the western world, if you actually save money (and invest!), and don't make stupid financial decisions, you can probably retire by 50.


It's definitely not feasible for most Software Engineers in Europe without extreme sacrifice, and fairly low expectations wrt to standard of living in retirement.

Retiring at 50 is extremely risky in terms of sequence risk[0], so you'd want a low withdrawal rate on your pot. You're also likely to want a higher income initially while you're still young enough to enjoy it.

So let's say your target is €2M for a €60K/yr income until you die, after a 25 year career. That gives you a couple years of fucking around after college / some bad years / gaps.

To achieve that over a 25 year, investing in to a smooth 7%/yr bull market, you're going to need to invest €2,500/mo. That's something along the lines of €50K/yr of gross income (assuming 40% tax).

Most software engineers in Europe probably don't even make €50K/yr... and we haven't even taken in to account taxes on gains, raising kids, buying property, or just enjoying life throughout your career!

[0] https://www.investopedia.com/terms/s/sequence-risk.asp


> So let's say your target is €2M for a €60K/yr income until you die

> Most software engineers in Europe probably don't even make €50K/yr

These two statements do not mix well together, if someone doesn't make 50k/yr it's unrealistic to expect to retire with 60k/year.

Let's see more realistic numbers. You make 50k/yr, getting 35k after taxes. COL is around 25k, but that varies wildly; with a partner and each one's COL is lower, but with kids and it's higher. Of those 25k/yr, 15k are for rent. You save 830/month, which gives you 630k after 25y, or 25k/yr at a safe 4% withdrawal rate (gross, so not enough).

But also let's say instead of paying rent you get a mortgage at that price, so when you own the place that is reduced drastically. Suddenly you find yourself with a COL of 12-15k/yr net, making 25k/yr gross from what you've saved previously.

Sure it's tight, but these numbers are without extreme sacrifice that you mention. Get lucky and make 60-70k/yr, or find a cheaper place, or inherit something (a lot more common in EU that USA I'd think), and it now seems possible.


Yes, I realise those two statements are in conflict. However, it's still possible for someone earning €200K to not be able to afford to give up €50K a year of gross income to reach the 25 year target I described. High tax, high CoL, a non-working partner and kids can level your chances.

And some costs are just fixed for everyone, so there's a lower limit to consider

The bottom line really is the balance between CoL and earnings rather than absolute earnings.

To achieve a given fraction, R, of your career salary in retirement you need to give up a fraction, S, now. My claim is that most people won't be willing to give up S to achieve the R they feel they need for early retirement (at say 50).

Personally I feel that unless you're 20-25 and have hit it out of the park with a great career starting salary you may as well forget about it and look to retire later... maybe start investing for your kids instead. Give them the 20 year headstart they can't give themselves. Investing for a decade or two longer is the magic sauce


Sure, and I know someone who got like 80k inheritance and he bought a jet ski and a car, crashed the car and sold the jet ski within a year.

Not all developers can retire within 25, but what I'm trying to say is that a significant fraction of EU developers can, if they learn and are smart about their money, either retire very lavishly at the normal retirement age or retire 10-20 years earlier with a bit of luck/extra effort.


It's more reasonable to expect them to make 35-45K pre taxes, 20-25k after taxes. With a COL of a working class person around 17.5-20k.

Most people in software, or any tech field, are barely middle class let alone retiring aged 50.


Sequence risk matters the most in the first decade. So long as you have a backup plan where you can restart working, even at reduced rates, then you can protect yourself against sequence risk. Older and in an economic downturn means that finding work could be difficult, so one would probably need to keep the backup plan “warm”: for example continuing to do a day or two of consulting work or a non-technical role, preferably in an industry that is counter-cyclical.


The bond tent [0] is an elegant option to deal with sequence risk. It does mean though that you'll need to save a bit more to offset the years your money is out-of-market and not making those 7% returns.

[0] https://www.kitces.com/blog/managing-portfolio-size-effect-w...


If you're pulling a 6 figure salary then sure.

If you've been earning on a typical career - say £25k/yr starting in your mid 20s, £35k-£45k through your 30s, perhaps getting upto £60k by the time you're into your 40s, you won't have saved enough to pull even £20k a year for a few decades.

https://uk.indeed.com/company/Precision-Microdrives/jobs/Sof...

https://uk.indeed.com/rc/clk?jk=62dc4988a0e4f36b&fccid=0de01...


That second job (£70K senior) isn't bad. It's remote, so you could easily live somewhere dirt cheap and be better off than someone in London on £100K+ (the difference in take home pay is only £1450/mo, which could easily be the difference between a 2 bed at £2K/mo in London vs £550/mo in, say, Durham... also buying property outside London would be way more doable)


Imagine that (£70k senior), but instead of somewhere else in the UK, it's somewhere in Europe.

In Munich, Germany (one of the priciest cities in Germany), the overall average rental price is €700 for a one-bed apartment[0]. Compared that to London, a one-bedroom apartment rent is going to cost you over £1000! €1178.48 euros![1]

In Eastern Europe, you can have a very good quality of life for even cheaper. The only problem is the language barrier.

I live in Sofia, Bulgaria, and pay €340 euros for a 2-bedroom flat in a pretty nice area of the city. A coffee costs around 2 лв (about €1), average pint around 3.80 лв (about €2). With a London software engineering salary, I save a drastic amount of money compared to London, and can usually afford to go to more restaurants, bars and outdoor activities (Love that I can ski just 20 mins away in the mountains!)

I assume it would be similar for people who can work remotely for a San Francisco company but live in a different state?

[0] https://www.expatrio.com/living-germany/costs-living-germany...

[1] https://www.london.gov.uk/what-we-do/housing-and-land/improv...


Companies in the US realized that up until a year ago, they didn't have to pay SF salaries to people who aren't in SF, because most cities don't have so many tech jobs laying around that you have to literally flag recruiters' as spam.

Post-covid, where many companies are allowing remote work, it's not at all so clear cut for them. You don't need to leave your hometown and move to a booming tech industry anymore, so paying people who live outside the bay as if they have no other options is resulting in a lot of the big tech companies' hiring pipelines drying up. Hopefully they figure it out


Oh yeah! I work for a Swedish company and live in South America. Just for some perspective, I make quite a few times _more_ than the president where I live. Albeit this all comes at a cost of some things like lacking tech advancements and lots of corruption and things just not working as well as they do in EU, but overall, can save a ton of money all while not sacrificing life quality and being able to go out and do fun stuff without having to think about money much.


Ahem. €700 in Munich gets you a room in shared accommodation. €1200 would still be a pretty good deal.


That's pretty similar to London, I wasn't aware Munich had got so expensive!


The remote has only come in in the last couple of years thanks to covid, and yes going forward if wages stay high. That's upto 70k, and note that it "depends on location". If you live in Durham you'll be on the 50k end.

Chances are by the time you're experienced enough to be pulling in that, you'll also be looking at wanting a family home rather than a small flat, which is going to be costing you more like £1k a month outside of London.


problem is that salary growth in last 5 years has been crazy

A senior engineer with 10 years exp 5 years ago made £35. Now someone out of a 6 month bootcamp can ask for that.

That doesn't even get into all the other roles that have popped up liker product / delivery which dilute engineer contributions and narrow their skillset - which someone in their 40's has.


I've noticed this too. It's rather alarming, but I certainly haven't minded milking it.


youre generally not supposed to make that much in socialist-ish countries, thats why youre taxed into oblivion after a certain point.


High marginal tax rates in the UK are mainly hit at low wages (when you come off universal credit and get taxed at 75p on the pound, when you're repaying your student loan when you get an extra 9p/pound, when you have two kids and the loan at 50k when you get hit by 69p (about to be 72p)

Once you're at say 200k, your marginal rate (as you'll have repaid your loan in the first couple of years) is 45%

Someone on $500k in CA will pay $210k in taxes. Someone on $500k (£375k) in the UK will pay $220k (£165k). That's not a massive difference.

Sources https://listentotaxman.com/375000

https://smartasset.com/taxes/california-tax-calculator


> thats why youre taxed into oblivion after a certain point.

Fun Fact: The nordic countries have a fairly flat tax rate (flatter than the U.S.) as well a 25% VAT and a low (20%) corporate tax rate. Most people don't realize this and would howl about regressivity if the U.S. introduced a 25% sales tax and lowered the top bracket to anyone earning more than $59K - which is Sweden's top bracket this year. So "beyond a certain point" for Sweden means "beyond $60K/year income".


You are right about the corporate tax, but for regular employees Sweden is one of the worst places to be in terms of taxes. Roughly half of the cost to the employer has to be paid in taxes (first withholding tax, then income tax). And then VAT, gas tax, alcohol tax, etc etc.


Yes, I agree that the tax burden is heavy in Sweden. I'm pointing out that with a 25% VAT and a top bracket of $60K, that burden is not nearly as progressive as, say, the U.S., where brackets go from 10% for $10K to 37% for 523K (after deductions). Whereas in Sweden, you pay 32% at $1800 and then 52% at $60K and you stay at 52% (again, after deductions).


Just so that we are clear, the 52% income tax is after 30% has already been paid in withholding tax.


Yes!


And then the student loan payment hits.

Graduated in 2004 (right after the dotcom crash) with $70K in debt, mostly private loans. I didn't get that usurious gorilla off my back until 2014. In hindsight I was dramatically underpaid the first 5 years, but still.

I made that financial decision at 18. First in my family to graduate college. Nobody knew better to tell me not to do that.

A lot of other people are in the same boat.


Don't just live for the future. Life happens now, not at retirement. In my experience talking to people who has retired, many are bored and are struggling with purpose. Sure, there are certainly many exceptions. I just mean, don't forget to live right now, this is it, it happens now.


I think you underestimate the difference in pay across the western world.


If you've been doing it for most of your career, certainly. But a lot of people start their careers later or make dumb decisions with money for a chunk of the time, those things can totally push retirement well past 50.


For sure! I was merely saying that it's not a unicorn, it _can_ actually be achieved with high probability and lots of effort, as opposed to being flat out impossible for the minimum wage workers, for example.


I know it's a little off topic but why is this? Do you mean this is the case due to salaries or is there some other reason?


It’s a double whammy: lower salaries and higher taxes.

The whole society is really structured for people to keep working until 65 or so. E.g. taxes are really progressive, so saving in a high income year and living off that money in another year (with no taxable income) is super expensive. There are tax exceptions for retirement savings but you can’t access that money until 60 or so. Also, the state pays your base pension, but you can’t access that money until 63 or something.


Not OP, but salaries (esp post-tax) in Sweden are “low” compared to e.g the US.

If you make 1M SEK/year (~100k USD) you are in the very very very top of IC’s in Sweden, and your salary post-tax is roughly 68k USD.

Of course you can save a good chunk. Save roughly half, and still have the median post-tax salary.

(And you can save in a less taxed private retirement scheme which can be drawn from at age 55, but at the same time there are implications of not working at the end of your career for the government sponsored pension)


If you invest 50% of your take-home pay, you can roughly expect to retire in 16-17 years:

https://www.mrmoneymustache.com/2012/01/13/the-shockingly-si...


When you say "you can't", I assume you mean retire officially? I imagine that having a few million euros in the bank (or in different assets) would mean that work is optional.


You don't just get a few million through work. Salaries aren't high enough to save that aggressively.


I make like $320k, my wife makes $70k. Our rent in the bay is $2800/mo and we spend about $4000/mo on other expenses.

I just moved to the bay from the enterprise world, so my net worth is 400k. At this rate, assuming very conservative raises and 6% on all investments -- including already reserved stock units -- I'll be worth $2.2m in five years (age 40). $7.5m by 50.

And that's just assuming I hit $400k-ish in the next few years and stay there for the rest of my life, and my wife gets no significant raises. If I get higher, which is entirely possible, I'll make even more. Or maybe at some point I'll try for a startup and go for the really big money. Maybe not.

Of course, many of those assumptions could not work out. But the kind of exponential advantage of saving a large fraction of your paycheck eventually overcomes any disadvantages. Worst case scenario is tech goes bust and US stock market turns into Japan's in the 80s, but in that case I'll still be better off than most because I have a lot of savings and I'm not addicted to the paycheck.

I think the plan will be to do this for a few more years and consult part time. Full retirement would be too boring.


This is the most out of touch thing I’ve read on HN in a while. When did we start talking about whether couples bringing in $400k/year could retire at age 50. You are clearly an outlier, even when compared to software engineers in the states, let alone Europe.


I know it's an outlier because a few years ago I was making $85k in Houston as recently as 2019. I studied whiteboarding and moved. Now I'm a FAANG engineer.


Careful predicting the rest of your life based on 2 years of the best success you’ve ever experienced. Something similar happened to me 5 years ago and I’m operating on the assumption the crazy pay can disappear at any time. If you luck into a way to suddenly retire in 5 years, always assume there’s someone standing behind you willing to do it for less. Many money faucets eventually turn off.


The beauty of saving that much is I don't depend on it.


I have yet to save as much as I theoretically should be able to. Good luck, sincerely.

Edit: and you still have yet to demonstrate that your income will last for the next 5 years, let alone 15. Don’t count your chickens yet.


If you were in Sweden you’d be making $120k and your wife $50k. Your marginal tax rate would be about 70%. You’d have a net worth of say $200k, but that would be tied up in your apartment/house.

A net worth of $2.2m is pretty much unheard of here. The only people I know with that kind of money are founders who successfully exited their startups.


Sort of tangential to the point that you're trying to make, but if I were in Sweden I'd probably be okay working longer because I could actually travel outside of 1-week segments once a year like I have to do in the US.


In the US you should be at 4 weeks or more of vacation per year by the time you have 20 years in, plus a couple more weeks of paid holiday. No engineer gets one week per year, even their first year two is typical and it builds.

The above isn't universal. Quality of life is one thing companies compete on so the only companies that give you one week are start ups (where it is understood you are taking a risk in hopes of big payoff from your options), and game companies where the dream job gets people accept abuse.


I'm really happy about this with my current company. They now start with 4 weeks, and after 5 years you get 5 weeks.


At present trajectory this is a reasonable outcome, in the case of a major correction saving your money will also mean you benefited from the bubble.

There used to be stories from the .com bubble of people who only knew a little html getting six figures. On being told this around ‘08 everyone would nod and think that it was ridiculous - after all fresh college grad backend engineers could be hired for just 30k at the time on the low end in the US.

Flash forward to today and we’d think a front end engineer or designer with technical knowledge for those rates would be a steal even after adjusting for inflation.

I don’t doubt techs impact, or that the big tech should be the most valuable companies in the world. But I would be surprised if software engineer became the highest paid profession on a permanent basis, which with current salary progressions is a given without a correction.


Ooof, you realize how few people are in that position salary wise right?


The context of the subthread was not being able to do it in EU/Sweden, where $320k/year incomes are less common.


6% historically has been easy. Going forward it wont be as easy, think 3-4% is more likely.

Plus sounds like you dont have kids, they are very expensive in both money and time. Have you seen how much childcare is?


My friends who spent their 20s at FAANG would disagree with you.


In the EU?


I feel bad for people who aren't saving and investing a decent chunk of their income as a dev.

I think you can be a productive dev well into advanced age, but I think once you get to 40-ish the career becomes more like treading water until you retire.

And if you're the kind of person who doesn't like meetings and wants to go back to being an IC, you might not have that option anymore because you can't take a paycut.


It's a tricky thing to think about. I'm very near to 30, after 10 years or so kind of in a software career, but will be entering my 30s with no money saved or invested. Not because I'm a poor spender, quite the contrary, but because I've lost jobs and burnt out, leaving me in the absolutely comical interviewing gauntlet for over a year, multiple times. During this time, I've just drained my savings completely supporting myself. The way things look, unless I find a way to keep a job of any kind, I'll just continue this rollercoaster of making about $30k, going to zero, and restarting. Someone who's been in a low to middle income non-tech job for the last decade—with the same spending habits—will have made more money in total by this point, and have more to show for it. The other likelihood is I'll just find a way to embrace this flux and ride it as well as I can.


I feel bad for people who believe that age beats talent.


Age doesn't beat talent but experience can. Not only that, but you can be experienced and still have all the talent you had when you were young.

There is a big tendency for young, talented devs to assume they are the smartest person and/or the best coder in the room because up until now they've always been (even in college), but at some point in their progression that stops being true. I'll even go so far as to suggest that if you are still the best coder in the room you should probably go out and find a better room.


There is a correlation between experience and talent. That's my point. Everyone crying about being unemployable as an engineer over 40 is fooling themselves. 90% of the software dev jobs out there are not at FAANG companies, and at the end of the day, clients and corporations care about getting shit done. The guy with the 20 year track record beats the fresh graduate the vast majority of the time.


FAANG companies hire old people too. I’m nearly 50 and have 30 years experience in the industry and feel quite well valued at my large cloud factory. The opportunities for learning never stop and my decades of stepping in shit in various ways is seen as a thick callused hide of wisdom. :D


please do an AMA, your career advice would be super helpful


Haha I can’t tell if this is sarcasm but I definitely don’t think I’m AMA-worthy.


GP did not say this.


I didn't reply to GP, did I?


My GP.


It's literally in the second line.


I'm also just gathering money at this point, doing simple stuff at work with no stress.

Highly recommended for a comfortable and enjoyable life unless your ego needs to compete with others to feel worthy.


The big tech companies (ie. FANG) all have huge demand for principal+ engineers and know how to scope and support them properly. The size means they have lots of them which reduces the snowflake nature of the role and makes career development, salary support, etc… more standardized. Since they are large, there can be some variance, but overall they are a good option if you are interested. I don’t know where in EU you are, but most of FANG has roles in EU and some even do remote as well.

Smaller companies tend to want principal engineers in theory, but as you are finding they can often struggle with how to utilize them properly. Often you see them playing a Chief Architect role or something similar which is more hybrid with PM than pure tech. So getting PM skills could help set you up for this direction as well.

Finally, you have said you did management for a bit before, so you should know if this is an interesting path or not. This is a very different role, so I would recommend you do this only if you have the passion and desire to do this full time. Most principal engineers I know have done management for a bit and gained a lot of skills related to it, but ultimately wasn’t what they wanted to do.


The problem at the big (especially FAANG) companies is that to be effective you need to really buy in to the company's tech stack and development ethos. People who were promoted to those roles naturally do; you probably don't. In fact, if you have a lot of experience elsewhere you're likely to have opinions that conflict with the company zeitgeist, and that leads to conflict with its champions. Similarly, effective principal/staff/+ work requires a lot of strong connections to people in many teams, which again tends to favor internal promotions. This is not competition for its own sake. It means that when you're compared to your home-grown peers every review cycle it will be difficult for you to keep up let alone stand out (even for a while after the typical one-year grace period which isn't long enough at this level). This is discouraging, and in some cases can leave you in a permanent bind w.r.t. team trust or possibility of an internal transfer. Many thrive despite all this, but many also end up seeing it as lost time and opportunity. Quite a few end up going back to where they were, while others opt for a smaller company.

P.S. I'd argue that, for all their advantages within the company, those internal promotions are usually over promotions. People's attachment to that tech stack and development ethos, and lack of experience with any other, means there's an even sharper drop in their value going elsewhere than for outsiders coming in.


you need to really buy in to the company's tech stack and development ethos.

You need to be of the mindset that you're hired to help the company. The company has a certain tech stack and development ethos, so you're hired to help them with that. Just because you know there are better ways to do it, your job is still to help them do it their way.

It can be possible to get them to change development ethos, but this is a big deal and uses a lot of political capital. If you can really convince most people that it's better, you'll be seen as a senior tech leader for sure. But if you're optimizing for the best performance reviews -- in other words, the incentives the company has set for you -- then it's usually better just to work within the system.

"To be a leader, you need to have followers." So leadership isn't having the best product, e.g. the way Google is a leader in search. It's more like class elections in high school, it's a popularity contest. Your job is to figure out what people are complaining about or advocating for, and do those. Most likely, everybody is used to the development ethos and just thinks it's the only or obvious way to do things. So nobody is really complaining about it.


> your job is still to help them do it their way

Mostly I agree with everything you say, especially about needing followers before you can lead, but I think this part deserves more discussion. At staff level (if not slightly before), "help the company" and "do it their [historical] way" are often not the same thing. As I said in another sub-thread, at that level you're hired to bring knowledge and skills and perspective that the org doesn't already have (or have enough of). Unlike lower levels, pulling in some direction is part of the job in this case. I think EMs at all levels understand this and often support it quite well. The problem I've seen is other high-level engineers who never knew anything but the current way and believe that it's generally the only way (except of course for the one part they personally understand and want to change). This sometimes leads to hiring people and then thwarting their efforts to do what they were hired for.

> uses a lot of political capital > ... > optimizing for the best performance reviews

That's the problem. These two should be aligned. You should reward what you want to see more of, and I think people using their best professional judgment qualifies. Relying on the continual presence of people who will sacrifice their own career/financial progress to make needed change (as I mentioned in another sub-thread) is not an effective or ethical strategy. I won't even say whether I believe I'm in that category myself, but I certainly saw other people who got tired of lying down across barbed wire so other people could run past them.


To put a more positive spin on what you are saying, very senior ICs carry the company’s technical culture. They have influence in shaping it, but they aren’t hired or promoted to buck it. If you want that kind of influence you need to climb the EM ladder up towards VP Engineering or equivalent. However, in that case you don’t get to spend 30%, or any, time programming. On the third hand you can go to a start up and wear a ton of hats, but you probably won’t get high cash comp.

Life is always about trade offs.


Agreed. There's a lot of opportunity there if people are willing to adapt to local norms, even if that means setting aside past (often hard-won) lessons. Some can. Some can't. Most don't really know if they can or not until they try. That's all fine, but I do take issue with this.

> you need to climb the EM ladder

No. Many of these companies take pride in being "engineer first" but that's a false claim if engineers are discouraged from challenging the local orthodoxy too much and only high-level execs may do so. It's too easy for territoriality and NIH to set in, or for real progress to be replaced with mere churn. Didn't we learn these lessons with older tech giants like IBM or AT&T or DEC? They had the same pattern of people replacing one internal system with an almost identical one, because reaping credit and promotions that way was easier than fighting for true change. They had the same pattern of people who had learned those habits too well becoming DEs or fellows and using the same "guardians of the culture" excuse to enforce conformity for its own sake. And look where it got them.

Obviously those who wish to challenge the status quo need to balance that with productive work within the existing paradigm, and strong claims require strong evidence (which a VPE is unlikely to have BTW), but that's exactly why there should not be additional barriers. I was not the first or only person at Facebook to observe that the whole thing would come crashing down if not for an ever-changing cast of engineers determined to do the right thing despite the effect they knew it would have on their PSCs. In a true engineer-first culture challenges to the status quo would be encouraged and engaged, but in my experience that wasn't always the case. Corporate ossification wasn't only a problem for prior generations.


EMs are engineers even if you don’t respect them because they don’t write code anymore. This is different than old school tech companies where managers were businessmen and engineers were thought of similarly to assembly line workers.

The Dilbert dream of no hierarchy (vice a hierarchy made up of engineers) has never worked beyond small companies.

A truly flat org is communism of corporate cultures—-great on paper, a disaster in practice. The dysfunction at these places isn’t because they haven’t flat org’ed hard enough or because of evil, devious middle management subverting the purity of the system—-it’s because the idea is bad in the first place.


Let's not turn this into an exercise in moving goalposts and constructing strawmen, OK? I never expressed any disrespect of EMs, nor did I propose a flat organizational structure. You specifically mentioned going up to Vice President of Engineering level, which is quite different than a line EM, and I responded to that. Your absurd invocation of communism aside, that's way over on the old-fashioned authoritarian/hierarchical end of the organizational spectrum.


That’s where some decisions should be made. For example, creating a new programming language. The answer is almost always “no, that’s a horrible idea” the determination otherwise should be made by the person ultimately responsible for all engineer execution.


> That’s where some decisions should be made.

Some, yes. Look at those goalposts go! Staff engineers are hired to bring skills and knowledge and perspective not already present. All I'm saying is that they should be able to exercise those assets, and all too often that is discouraged. I'm beginning to wonder if your accusation about disrespecting EMs is just projection of your own disrespect for higher-level ICs.


From my original reply: “They have influence in shaping it, but they aren’t hired or promoted to buck it.”

I’m not sure we disagree that much, maybe over where to draw the line, or maybe over how we talk about roughly the same outcomes. I’m content to leave the discussion here. Cheers.


If a flat org is communism, what is a top-down org? A dictatorship or authoritarianism?


A top-down org where employees don't have the power to vote out management is exactly that - an authoritarian structure. That's why is called privately owned.


I don’t say it is communism rather it’s like communism in that both look good on paper and are disastrous in practice.


> start up and wear a ton of hats, but you probably won’t get high cash comp.

I'm not sure start-ups are any freer on the dogma, so you'll still run into this unless you find a start-up that matches your own. Worse still -- start-ups have serious pressures that make debating dogma look like not carrying the load.


If you are in early enough the decisions haven’t been made yet, so by definition they can’t be set in stone. You could have a technical co-founder that wants to decide everything without discussion but in that case you probably don’t want to be there for many reasons.


> Similarly, effective principal/staff/+ work requires a lot of strong connections to people in many teams, which again tends to favor internal promotions.

This might be a smaller factor for doing effective work itself, the number of new faces at all levels at big big companies might offset this. And generally, ppl working under this principal/staff+ engineer usually follow along.

But promotions would require connections to many ppl in many teams.


Other big non-FANG companies also need Staff/Principal Engineers. You can find them in AI consulting companies, banks, insurance, and pretty much everywhere when you know what to look for. This includes most European cities if you have a EU passport.


I'm mid-40's, and at every medium-to-large company I have worked at, each promotion == more meetings, more bureaucracy, and less coding. Developing software is where the fun is, so for me the best route has been working at very small startups.

Essentially no meetings and I design and build stuff all day every day and it's great.


I'm also mid forties and am in a similar boat and mindset. I also just want to build things. I have found whenever I talk with a company about possibly working there, they are considering me for hands off architecture/leadership roles which I could do but don't prefer. My solution so far has been freelancing, which has been working well. I can also see myself heading towards startups for similar reasons.


This. I joined a senior-only contracting firm. I'm leaving a big client to go to a startup client. My choice. All I do is build things. FTEs eat all the shit and suffer the meetings. I do not.


Also an old fart. I am doing my best to remain a developer. Spending my work days in meetings and managing people sounds horrible to me.


This is the path I've chosen. I don't want to control other people, just myself and my code. Sure I don't make as much as a manager but I'm a simple man with simple needs. I mostly consult and rarely have any issue with finding new work after the old contract is up.


Is your startup engineering led? My experience of a non-engineering-led startup is that there are more meetings than in a big company.


> Is your startup engineering led?

Yep.

> My experience of a non-engineering-led startup is that there are more meetings than in a big company.

Ditto. I'm not 100% sure, but I think it may have something to do with the fact that meetings are often the anxiety outlet for people who don't directly produce value. (Oof, that sounds harsh. And yet...)


In our case the problem was the opposite. There were enough people that coordination was needed, but the CEO didn't want any managers, so ICs need to track things and attend meetings while trying to get stuff done


Yes this is one way bu the salary gap is too huge and most startups when they start growing start hitting same problems. There may be handful with top class leaders who are better but from my limited experience they have been very rare or may be my network is too small.


> but the salary gap is too huge

Well... if the money is a means to an end, and if that end is highest quality of life, there's a good (but obviously personal and highly subjective) argument that optimizing around salary doesn't necessarily translate into max quality of life (though it sure helps to some degree).

But yes, the gap itself can be quite large but it deserves some context too: IME the large companies do start to pay absurdly well as you get higher up the chain, but startups still pay >=5x the US median income, so it's not like you're choosing an impoverished life or anything.

And if you can't get a startup to pay as much as you'd like but you do believe in the company, then use it to your advantage and negotiate for a much larger slice of the equity pie and/or start your own company.

Just food for thought of course.


If salary is important to you as you get more senior, then you need to play the mainstream game. Which mostly means going into management, architecture, consulting, etc. For those of us who don't really want to go down that route, I think sacrificing salary is a common concession you need to make.


For me, getting better at managing my personal finances made a huge difference. It is way more feasible to do things you like while sacrificing (some) salary if you have managed to build up a nest egg. It doesn't even have to be a lot of financial skills, even just the concept of "wealth is cumulative money in minus cumulative money out, so if you spend as much as you earn you'll never get richer" is very useful to internalize.


The best thing you can do is work out the concept of "enough" and "satisfaction with what you have."

I've watched far, far too many well paid tech workers over the years just go down the road of "Oh, my paycheck is larger, so I can afford this [insert luxury item here]." Cars and houses are the big road to ruin.

You get a taste for $1.5M houses, and $150k+ cars, well... you're going to be working the rest of your life. Figure out early on that a cheaper house (exact value depends on the area) and a $20k car get you around just as well for a lot less money, and you can go far.

An awful lot of industries exist by trying to convince you that enough isn't enough. You deserve better. You have to buy the new one every year... because! Etc.

And it's nonsense, but it's both very profitable to them and a great way to drain out your money without ever realizing where it goes.

Get a grip on all that stuff early, and it helps a ton. I've made tech worker money for many years of my life, and have a 9 year old car, a 24 year old truck, and a range of esoteric and cantankerous motorcycles, the newest of which is around 8. They all do their jobs just fine - we just did a long road trip (2500 miles) in the car (Chevy Volt) with zero issues.

I mean, sure, I could get loans for $100k class cars, but... why? What do they do that my current stuff won't? Well, phantom brake, apparently...


The quality of life difference Autopilot makes is worth $100k+ (though you don't need to spend that much anymore with the Y/3). Your dig at the end about phantom braking is kinda interesting, but I think you are underestimating how much of a different Autopilot truly makes.


Regardless of how much better (or not) Autopilot is than manual driving, this comment is a very good example of the point GP was trying to make. If you get a taste for 100k cars because you convinced yourself you can no longer live without Autopilot, you will now need to find that much more income to pay for all the cars. That is money that could also have been spent "sacrificing salary" so you could have more interesting work, take time for a sabbatical or retire earlier.


Exactly!

I know people who have far more money sitting in their driveways (or garage, though having a garage clear enough for cars is a weird rarity anymore) than our entire property, including house, is worth. They claim it's worth it, and I'm not going to argue, but I could quite literally retire on the value of their house and car fleet. When I met most of them a decade or so ago, they were in the similar boat as me, vehicle/salary/etc-wise. They just inflated their lifestyles as their incomes rose, I fought that (and married someone who is far better than me at asking "... but why?" questions about anything nonsensical I suggest). I'm not retired, but that's halfway because I enjoy my work and halfway because I have plenty of things I can do that involve wads of cash at various points (the next one is buying a backhoe for a couple years of work on a greenhouse - yes, it makes sense to buy an old one, run it for a few years, and sell it, because they hold value very well at the age I'm looking for - it's a couple year rental for the cost of maintenance and maybe a set of tires).

My point is simply that if you can avoid those traps, you really don't have to worry about "How do I be a tech worker in my 50s and 60s," because you've either retired, or are near enough to retirement that you don't have to earn $500k/yr to support your lifestyle. It's a trap. There is no income so large you can't spend more than it.


I just drove 2500 miles over a week and a half with nothing fancier than cruise control in terms of automation - though I will admit, it's the fancy cruise control where I can tick the set speed up or down with a lever, instead of having to rely on the old coast/accel/set controls (I've got one of those too, and it's a bit more hassle than it's worth in a lot of conditions). Most of those miles were on the sort of two lane state highways that apparently are exceedingly prone to phantom braking events on current gen Tesla hardware, and I had... ah, yes, zero of them. Same goes for weird failures to hold lane, or anything else. I was in the loop, and didn't have to monitor automation that was going to be fine 99.9% of the time and try to kill me the rest. Going through Salt Lake during the edge of rush hour, "randomly standing on the brakes with no warning" would have meant someone was in the back seat with my kids after having totaled the car. I'm sorry, "random braking events" are simply not OK on anything resembling a regular basis, and at least some people, in some conditions that resemble what I drive, are reporting them very regularly.

But to your main point, I honestly don't know what a difference Autopilot makes. I've dorked around with an older version for half an hour, and it drove like an autistic student driver. "This is the center of my lane and I will be in the center of it, because this is the center of my lane." "What about the trailer over there, not really parked entirely off the road?" "This is the center of my lane..." etc. It was quite frankly terrifying to see, because it had no awareness of anything resembling the environment around it except the lane lines. I have no doubt it would have clipped the trailer (parked... oh, a foot into the lane, because the shoulder wasn't wide enough for the rest of it) had I not taken over, and at that point, I may as well drive it myself. As I've suggested to various people over the years, let me know when Autopilot can handle a sprayer coming down a two lane highway, and reasonably figure out what to do about a cow in the road, and I'll pay attention. Right now, it seems alarmingly unable to reliably figure out that the road is clear with anything resembling a useful level of accuracy.

However, the point remains: I've chosen not to spend the money on that, which means I don't have to worry about spending money on it down the road. The Hedonic treadmill is very much a thing, and so by deliberately not adjusting my standards higher, I can live on less money going forward. I pity the people I know who have huge salaries for a while and buy $200k luxury cars, because I've seen, in a somewhat close friend, exactly what happens when those salaries aren't a thing anymore for one reason or another. The end result is prolonged pain and bankruptcy, because after you've driven a 700hp German luxury saloon, going back to something cheaper and slower (and more affordable) is really hard. I've enjoyed driving those briefly, but I've never owned one, so that my car is a bit of a gutless wonder cresting mountain passes at 8k ft, well... so it is. I can hold highway speed, I just can't run in massive excess of it. Oh well. Stupid-cheap to run for everything else, low maintenance, no complaints.

I could come up with justifications for spending all sorts of money, if I really wanted to - and my point is that the ability and willingness to not do that is a very useful skill. Humans are great post-hoc justification machines. Always have been, always will be. And knowing that, working around it, etc, reduces an awful lot of stress in life.

You claim a car that will more or less stay in a lane is worth $100k. Well, OK... I spent not an awful lot more than that on a house and have been slowly upgrading the property over the years as we have money. Though I might have to drop a chunk of change into some appliances here soon, the service life of modern appliances seems to be about 5 years before major surgery, if you can get the parts.

I lived for a while in Seattle, and heard people go on and on about how amazing Autopilot was. I just rode an ebike in the rain, and spent the savings on good rain gear. One cost $100k. One cost... oh, I think that was a $1500 build, it was a nice commuter build. I think I got the better deal.


50+ principal engineer here. My perspective is US-centric, but I've worked closely with engineers on teams & orgs globally, both in the past as well as my current role. Not FAANG+ but close/adjacent; large, cloud-focused tech.

It's true that IC roles are less common at this level but they are definitely out there, especially in big tech. In the US anyway, it's basically a 2-tier system: $700K+ total annual comp or sub-$200. I didn't discover the former even existed outside the Bay area until the last few years, but boy am I glad I did. If you love what you do, in the right organization you'll have autonomy, creative freedom and potentially influence org-wide. And I'm not gonna lie, the money is great. (Side note to my US-based friends: at the high end, Salary.com, GlassDoor, etc is absurdly low). To the OP: if you're feeling constrained by your existing environment, consider looking around. The last 2 companies I interviewed asked virtually all design/architecture & leadership questions, no "leet code". There are definitely lots of opportunities from FB, Google, Apple & Amazon for PE roles in Europe so consider looking around. But that all assumes you fundamentally enjoy what you do (not talking structurally, actual system & technical leadership — the building & shipping part). I work hard at times, but honestly these days I could do most of my job in a couple of hours per workday. I wish you the best.


The comp targets are not normally 700k+, it just has happened in the last several years because stocks have appreciated so much. A total comp target of 400-500 is much more common, base should be well over 200k/yr, though.


I'm much earlier in my career (30s) and just starting to hit the staff level in my midsize tech company.

Do you have any advice for positioning a career to those first tier of jobs over the next ten to twenty years?


Mine is certainly not the normal path, and there were several significant projects which only peripherally advanced my career, so ymmv (greatly). But I guess my best advice is to find a niche. There are endless numbers of "Java Architect 2"s or whatever in the labor market, but far fewer highly skilled engineers who understand deep business domains. Find your niche. You don't have to be a manager to develop close relationships with customers/users and understand their pain points. Become seen as invaluable (or at least really hard to replace) by your peers and senior management. And, of course, most engineers are underpaid. In case you've not read it, Patrick's essay is required reading for comp and career development. https://www.kalzumeus.com/2012/01/23/salary-negotiation/ Good luck!



That makes sense. Thank you for your advice.


Will there be a “just hit 50, what’s next?” installment to follow?

I too, just want to build things—too many legos as a child (and adult), I guess. I work at a smaller company where the software side is pretty small (5-ish), so I enjoy a huge amount of autonomy.

Having interviewed around a little, I find a lot of places that have a hole, and they’re just looking for a peg to fill it.

I already filled the hole at my current company, and wpuld be leaving a much larger holder if I were to leave.

My problem is that I’m somewhat anxious financially; a number of people depend on me for the salary and benefits I bring home. So while many people tell me I would be a strong consultant type, the insecurity frightens me. I’m good at at inventiveness, initiative, entrepreneurial behavior _when_ it’s under the umbrella of someone else’s money and I feel secure.

I’ve graduated to tech lead, semi manager, three times, and never really liked that. I just end up frustrated with those that I’m responsible for. I work better in a “we’re all dribbling the same ball” context.


I think you could benefit from moving to a larger group for a few years. Keep all the connections from your current team and you'll all find each other again one day.

While I dont move around nearly as much as some in the industry, I do find value in moving every 3-5 years. Not really for the salary but more for the different perspectives it offers. You'll learn so much and look back at your small software team one day with fond memories and chuckle about how big the world outside that team is and how the values from a small team are hard to find. Make it something you seek out and appreciate, not just something you do every day.


IC duties beyond senior are pretty arbitrary at most companies, you might be worrying about it too much honestly. Principal seems to be a terminal position for people who have 1) been consistently productive 2) been at the company a million years. These people were typically already doing more “strategic” architectural implementation/design work anyway.

Last year I went from Staff to Senior taking another job. I make 30k more and do essentially the same thing. If you want more money just optimize for that and stop caring about title imo


Agreed. Also if you’re operating at a high level at a company you should be defining your own role to some extent.


I just turned 60 and I am still working as a software engineer. I live in the Netherlands. In the past decade, I have been working 24 hours per week on average. The past two years I worked on an application that is used only within the company, which is a mechatronics oriented company. I am closely working together with process and application engineers and over the past two years, I have developed quite a lot of domain knowledge. Some of my younger colleagues definitely are better at some software engineering tasks then I. Although I have no management responsibilities, I do coach some of the younger software engineers in an informal manner. I have saved enough to quit working and I noticed that my requirements for work have changed. The working environment is now the most important aspect. Some seven years ago, I suffered a mild burn-out due to toxic working conditions. Since then, I twice changed jobs. I am not getting a top salary, but it is enough to live a quiet and happy life.


>> I want to work hard, and see meaningful progression: in salary, in impact, in respect

Here's the deal, you're 40, you write code for money, and you're asking what's next.

What's next is that your brain is going to be slowly deteriorating, so yeah there's going to be some choices.

Like do a job that doesn't involve writing money for code, do a job that involves being a people person. One of those. I couldn't do that. I don't "get" people, maybe you do. Good luck with that.

Another choice would be to go back in time and invest money when you're in your early 20's and none of this is an issue. Time machines are great. I'm a time machine. I came back here to tell you kids to invest their money in index funds so that half a century from now, everything is going to be OK. It's going to be beautiful.

People hate time machines.


>What's next is that your brain is going to be slowly deteriorating

No, it isn't. Your eyesight is going to drop, you'll need reading glasses. When you hit 50 or so, your vitreous humor will detach from your retina (if you're nearsighted like me), so you'll deal with floaters forever. So, bigger screens, with less text in a given area than you now enjoy.

Your physical health will slowly go, but that shouldn't stop you from programming for a very long time. Your ability to switch tasks and handle interruptions, will drop... flow takes time to achieve. Email is asynchronous for a damned good reason, answer it once you're done programming.

Mostly, you'll get grumpy when poked, but the computing resources should keep getting better for another decade or so before leveling off, so there's that.


my humor detached long ago.


Speak for yourself buddy. I am 50+ and sharper than ever. Having a lot of deep experience makes it easy for experienced developers to do in a day what it takes younger unexperienced developers months to do. It’s especially fun when young self-important arrogant developers ignore advise from experienced people and end up in a cluster f** hell hole of their own choosing. While being too stubborn to admit defeat and ask for help. The “I told you so” feeling is most enjoyable :)


>> Speak for yourself buddy

OK I will speak for myself buddy.

My mind is going. I can feel it. I'm afraid.


Same.

It's frightening. It's like Rainbow's End, just without everything after the first chapter.

I can cope. I have years of experience to help me. I can cheat, recycle ideas and insights I had in the past (and was paying attention enough to write them down). I know where to look when I need something, so I'm still getting that thing working faster than many others, but this collapses when I need to do something completely new. Fortunately, there's actually very little "new" being done in software industry.

But still. My memory is full of holes. My short-term memory doesn't work nearly at all, unless I'm extremely focused. But staying focused became draining. Not tiring, like you would be after a good workout. Draining. The difference is very simple: 20 years ago after many hours of focused work I was looking forward to the same thing tomorrow. Now, on the next day I'm doing what I can to participate in lots of meetings. No, I'm not going to be saying anything, I'm just there. I don't even listen, I just... try to rest. I have to. I need a break before getting back into the zone.

There are two things which make me incredibly insecure, which I realized well into my thirties: a) I never was particularly smart or talented, just faked it with lots of enthusiasm and ungodly amount of hours worked. And b) I won't be able to fake it much longer. Like the OP, I'm not sure what's next. Contrary to him, though, I'm really not sure if I want to hear the answer.


I'm in my late 40s. There was a time not too long ago where I felt the same as you. My mother died from early-onset Alzheimer's, so that spectre was not helping my anxiety about it.

Long story short, it turned out to be sleep apnea and some electrolyte issues. I now feel as sharp as ever. If you haven't seen a doctor about it, don't be afraid to. There's nothing wrong with getting it looked in to.


That sounds really scary.


> What's next is that your brain is going to be slowly deteriorating, so yeah there's going to be some choices.

You wound me. I'm about to turn 40, and I'm finding my brain is sharp but my body is shit. I have to deal with gout and daily pain. Fuck me. Can I have your time machine, so I can exercise more and eat less?


The issue with being an EM is that it's a totally different job than being an engineer. There's overlap as you get to staff+ but there's also a lot of things that don't overlap. It's also, when done properly, a fully non-technical role. In general trying to still be technical will make you a bad EM that is hated by the team. Directly you will have very little short term impact except occasionally preventing disasters. The impact will be through your team and you'll be spending most of your time preventing future issues for the team. So it's very medium term and indirect impact if done well. Your team may respect you but they probably won't as much as you think they should given the effort you're putting in. The rest of the company may respect you but will still try to use you as a punching bag every so often. In the end you're the shit umbrella for the team. In my experience as an EM it's almost expected that you have the self-confidence to not need much external validation.


> First, the definion for the most of those positions looks Senior Engineers with a few more years of experience: so you are limited to the scope of a single team scope, report to an Engineering manager, just be a worker at a feature conveyor, just be faster, mentor young workers, maybe get some devops skill.

In my experience, this isn't what I've seen staff engineers doing. The expectations you laid out at the top are much more in line with what I've seen staff engineers doing.

The staff engineer's I've known are basically the technical version of a VP or a director. They're often not focused on individual features, but rather new products or large scale architectural changes. The mentoring they do is often mentoring strong developers into future leaders at the company.

The staff engineers at my current company are currently focused on how to integrate multiple products where each product has three to four teams of engineers working on it. At a previous company, I can remember them being focused on whether we stay with on-prem hosting or move to the cloud.

I'm not sure where you're interviewing, but to me it sounds like they may not be big enough to need what I would consider a staff engineer, but they just have seniors that they wanted to promote.


44 here. I have actively started avoiding architect/product owner roles . Instead I'm consentrated on knowing the product (how it's used by the customers and admins), the tech stack, the code base and the devops pipeline as good as I can by doing a whole lot of feature building and bugfixing. Result is that the work is more rewarding than ever. Architect and PO come to me to discuss features. Admins come to me with weird bugs. I get to code a lot and think a lot. I hope I get to do this til I retire.


The harsh reality of staff/principal engineering positions is the number of opportunities. There are a handful of companies that are big enough to have roles beyond senior engineers. In those big corporations, there are a few roles available and they are rarely open. Therefore, moving from one company to another is just so damn hard. There are more senior manager/director level roles than a principal engineering role where you oversee multiple teams or a department. If you want to make it to management, your best bet might be your own company or a startup. Happy to hear about your findings.


I see quite a lot of recruiting for staff/senior-staff/pricipal roles, both within FAANG and without. It’s a bit harder to know what this actually means outside of FAANG, but my (very first) impression is that plenty of midsize companies have roughly similar positions to the better known FAANG staff+ roles.


Our US based startup has engineering in India (20 engineers) and the biggest challenge is finding engineering leadership.

It is hard to hire in the bay area, especially leaders who have experience shipping high quality products (systems), so we built the team in India.

Many young companies like us struggle since a lot of the talent (definitely in the bay area) is locked up in the Faangs where poor fiscal/monetary policy in the US has inflated stock part of the compensation so much, that it makes no sense to leave.

So it is hard find principal engineers to do great work because they choose to go to large companies and get poor work for money.

The bar is high for us though, we’d look for engineers with specialized skills (compiler, database internals) and leadership on complex products. The middle is the dead zone (engineers with N years of experience wiring apps)

Not sure about the European market, but maybe you can try to go to a smaller company?


Post COVID there's basically no reason to hire only in the Bay Area unless you work on hardware. Also, in my experience the issue with hiring managers is that they better know what to look out for in terms of bad upper management. The vast majority of startups have bad upper management in terms of actual management and company leadership skills. I've got less than 0 desire to work for a 25 year CEO who thinks they're the next Steve Jobs.


Can we leave it at poor management? I don’t think the “reverse ageist” jab was constructive.


It's not ageism, it's amount of experience. Age simply provides a cap on how much experience you could possibly have. Or do you believe that managers and leaders gain nothing from practicing their craft longer and in a wider variety of situations?


> Age simply provides a cap on how much experience you could possibly have.

Not really. It depends on the opportunities and luck to meet the right people at the right time. Plus, people internalize experiences with different speeds. So, while in general you're right, you need to account for outliers that lived a particularly lucky life.

Though to be fair, people who got mountains of experience that way despite being young do not, in general, see themselves as next Jobs.


Ya sound bitter.


Are you sure you’re not just projecting your own feelings onto me?


Nope.


What makes you think the work is worse in fang vs some average startup? I find the opposite to be true in general case - lots of small companies out there don’t care about actual tech.

> Many young companies like us struggle since a lot of the talent (definitely in the bay area) is locked up in the Faangs where poor fiscal/monetary policy in the US has inflated stock part of the compensation so much, that it makes no sense to leave.

This is just patently not true. Netflix is just one examples and there are many more. You just want top shelf talent at bottom shelf prices. If young companies struggle to hire the reason is they underpay cash or equity and just refuse to accept that simple fact.


I find this alot. I'm 40 -- say -- and I've been applying for engineering positions and get alot of "you'd be great for engineering manager and or senior x,y and z -- would you do that instead?". The general trend I see at the moment seems to be that companies have staff, but lack experienced leadership that can deliver products. I have a couple of patents and have delivered some products and this seems to make the difference.


I'm almost 40 as well, and I've reached "senior principal engineer" within FANG.

Ignoring titles, the problem with high level engineering roles (beyond their difficulty) is finding problems that meaningfully grow you technically as you can reach a practitioner within the field. These roles are rare because most businesses don't actually need nor benefit from them.

The other challenge is that the title inflation really messes with people. For example, a key aspect of higher level engineering is not just technical but understanding organizational shit as well. For example, it's now just about execution but planning and thinking about execution in context of 50 to 1000 people.

Take the Amazon curve: SDE I - 0 SDE II - 1 (an intern) SDE III - 5 (a team) SDE IV/Principal - 25 (a big team) Senior Principal - 125 (an org) Distinguished Engineer - the company

Using the people scale and how much you impact an organization lets you know where you are within the FANG universe (and the FANG generally are in alignment with titles and pay-bands). This represents another challenge is that being a high level engineer requires a tremendous amount of trust from management to influence everything under their empire.

What I recommend is scoping the places where the frontier is being pushed which align with what you want to work on. Second, test the waters if they have a technical hierarchy which can support you. Third, put the problem first rather than titles/comp and be willing to build trust within the organization. Influencing over 5 people requires tremendous trust.

The unfortunate aspect is that the duality of building trust can make it exceptionally rare to achieve that level. It's not a trivial level because it requires both the technical AND people skills. The only way I've seen to short-circuit it is to be absolutely a beast on the technical front, and this can be done via an open source project of exceptional merit OR building a company.


I think after you are 35 you don't want to see progression in salary but in life quality.

Of course unless you were terribly underpaid or you spent all the money on whatever...

I am going to be 35 this year and I was working on FIRE - while I cannot really drop the job for the rest of my life. I think I have enough, like flat with no mortgage in quite OK place so I don't have to spend most of my salary on renting. Now I am looking into cutting my hours, because with my current rate working 4 days I still could save money.

I will probably stick with current company as long as possible because I hate interviews and then if I will have to I will take whatever job will be there if things go south.

But that is me I like low fuss life, keep it small and steady. Happy that I can get some beers over the weekend and play with some raspberry PI. No need to get a sports car at all :)


I think after you are 35 you don't want to see progression in salary but in life quality.

As someone in that age bracket, but not working in the big US tech bubble we often discuss on HN, I don't entirely agree. I have other commitments now that I didn't have in my 20s, things that can cost a lot more money, yet which have improved my quality of life greatly and are of immense value to me.

For a 35+ year old developer here in the UK, even a good one, if they're still working most as a hands-on employee they will probably have spent the majority of their career earning a salary that is above average by UK standards but less in TC than a new grad with zero experience would get at a FAANG in a US tech centre from day one. Almost no-one with that kind of role has been earning FU money here, and we're still doing better than most of the world outside the US. For a long time, if you wanted more you either went freelance or started your own "real" business.

Today that situation is changing, slowly. Upward pressure from the crazy amounts of money in the industry both in the US and increasingly in other places as well, combined with demand for decent developers outstripping supply, means salaries that were almost unthinkable even five years ago are starting to become viable and a whole scale of technical roles above "senior" is starting to appear at larger companies. We're still nowhere near US levels, but someone recently asked me whether I'd consider taking on what we might call a senior staff or principal level role at a UK-based tech company where I'd been consulting, and the kind of salary they were asking about was at least 3x where the salary ceiling was for most UK developers just a few years ago (which many of those developers would have hit well before the 10 year mark).

So while the argument above might work in parts of the industry in the US it's not necessarily the case in other parts of the world, where new options have been opening up for highly experienced developers in recent years that could break through a long-standing ceiling and make a huge difference financially.


> salaries that were almost unthinkable even five years ago are starting to become viable and a whole scale of technical roles above "senior" is starting to appear at larger companies

Could you elaborate more on the roles you've seen? I'm a developer with 12 years experience and have had "Senior" on my CV for a better part of a decade, as I don't really want to go into management.

I'm currently looking for something new and it seems that the top roles for something like a "Senior <insert tech stack> Developer/Engineer" are paying around £100k (+ comp) in London, which hasn't really changed much over the past decade after adjusting for inflation. The take home pay as a contractor is still quite a bit more though, so that's probably the route I'll go.


Anything close to £100k for a hands-on employee position was almost unheard of in the UK a decade ago, even adjusting for inflation. You might have found that much working in a particularly well paid field, which mostly meant finance in those days, for a big firm in London. For most of the industry the salary probably capped out at around £60k in today's money or maybe a bit more in London, but you could hit that ceiling and get a senior title in maybe five years if you were OK at your job. If you were lucky you might also have landed a nice bonus from a profit-sharing scheme or some stock options that came good.

A formal technical career path stretching well beyond senior level, six-digit developer salaries and the kind of additional compensation in bonuses and stock that we see today are all much more recent shifts in the market. We seem to be tracking a few years behind similar developments in the US as the big money and demand for more capable developers find their way over here.

You can definitely still make more going independent than most will as an employee if you have the ability and inclination but the market has been seriously distorted by the IR35 changes recently (or more accurately, by many clients who don't understand those changes and reacted negatively at the same time) so beware of that if you are thinking of a big career shift.

Everyone I know in the UK who made Serious Money(TM) by developing software made it from an exit when they were a founder or early employee.


I suggest OP isn't talking about 'FU' money, but about realising that (at about 35!) they would rather have better life quality then more money.

Unlike the USA, we don't have massive heath care or social security / private retirement costs to save for and worry about.

So, aged 39 in the EU, I'd rather work for less and live on the coast, rather than 'bust my balls' working for the man, just to buy a fancy new car/house/phone (or need to save in case we get cancer and a massive USA style medical bill).


I understand that point. However at least in the UK there are many things that could make a big difference to current or future quality of life -- including several you mentioned that are definitely still relevant here -- that someone would find a lot easier to achieve if they were earning more than most of our age 35+ software developers will have made for most of their careers.

In other words, the ability to increase how much you are making at work and how much you can improve your quality of life are still going to be significantly correlated for plenty of age 35+ devs here. An increase of say 20% or 50% in TC could make a big difference to things like whether you can afford to live in a nice area, take your family on a nice holiday, pay for private healthcare or education if you have a reason to, or retire early. I suspect that kind of marginal difference in income is much less relevant to those things, except possibly for healthcare, for a typical age 35+ dev working for a FAANG in a US tech hub, whose TC might have been so high for so long that the idea of not being able to afford any of those things might not even occur to them.


I am near the 40 mark, and have never managed anybody by my own choice. Have mentored several. I have no interest in a managerial track, nor in being paid to do things that are not related to code, data quality, or other high value business needs. I have designed some very important systems and processes but shy away from calling myself an "architect". I have been the chief tech liaison with multiple partners, my bosses relying on me to not only code, but also set expectations and meet partners' business goals while protecting our own interests. I love hearing hearing about "new" frameworks and concepts from the young 'uns, and will use them if the team's vote is to adopt them (sometimes despite my opinion), even though half of them at least turn out to be short lived. It's all good. Sometimes I am pleasantly wrong and learn new ways of doing things.

My point is, I worry less about my "career goals" and spend my time learning about my employers and how to produce high value for them, whatever form that takes. I have never worried about or feared for my job.


This attitude works only if your team is not toxic and others in your team are not taking credit for the work.

In my company, if I try to do a lot of work it will backfire. I will out that my work is being celebrated by some no-talent PM and promoted by my sneaky manager without my knowledge. They then bring in all the "high priority" issues from "the top" to me to fix.

I learned that those people don't understand how software is built so I'm just coasting and doing the absolute minimum. Less credit stealing and less high priority feature requests from the top.

I still get Exceeded Expectations rating every year. Because I pretend my work is so difficult and takes so much time...


I get it. There are definitely bad companies to work for. But there's a difference between working at a company where things are fundamentally just for value producers even though there are some bad actors who can't be removed, and a company that is ultimately spiraling downward because there's no capable leadership at the top to keep people focused on what really matters to the business.

I'm not saying to subject yourself to torture: just recognize every day how you can actually deliver value for other people and the bottom line, and do it. Even if you're not getting credit, suggest to a higher up that you might not be able to do X effectively anymore because Z is in your way, and see how fast things change. It is a big difference if "X" is "deliver the feature we promised the 500K client" or "get the nightly report automated on time" than if it's "rebalance the cluster" or "streamline the CI pipeline".


The only meetings I usually call are to discuss cool things I've added to the code base and I make damn sure management is in on the invite. Leave a paper trail, never be shy about letting people know what you've done.


Put “Project X by msoad” in the header. ;-)


My situation is similar, except I'm mid 40s and more on the infrastructure side. I'm on a 6 month break from work, and have zero worries about finding my next job. I don't care about titles. I have no particular career goal. I just want to do interesting work and get good pay and benefits.


I think low expectations is the best outlook. After 35 you're less desirable, sure you have experience but its not with the things employers are looking for. Eg right now the hot skills are tech that's only been around for 5 years, so you dont have any advantage over a 30 year old. Its worth doing some management jobs but they generally suck, my view is to keep as IC and just be happy with getting paid less than you used to make. If you are less fussy on money there are more choices out there. If you want more money get a side hustle.

Yes people will tell you can be pricipal dev or whatever but the pyramid narrows quickly, its only for people who are really good tech and people wise. That might be you but most devs assume they'll get there when they wont.


You do know that experience with a particular technology is only a tiny part of the equation here, right? A veteran with 20 years in the industry has seen a LOT more stuff than someone with 10 years in the industry, irrespective of the tech stack. To call the two equivalent is very short sighted, especially at the Staff/Principal level where that person is ostensibly responsible for making high impact decisions.


Yes I've been doing this for 30 years. I also know all the interviews I've done lately nobody has cared about what I did 20 years ago.


I'm in my 40s and haven't experienced that - perhaps you're not looking in the right places


Perhaps I did suggest principal level isn't worth it. Most of my friends have taken the first 10-20 years off the resume - or have dramatically shrunk it.


Sure, but a younger hiring manager probably doesn’t appreciate that. Business owners (at any age) never appreciated quality.


It's still possible to learn new tech at that age. I'm in that age bracket and I'm using React and GraphQL and AWS and Terraform and Docker along with the young consultants. Didn't take that long to pick it up enough to be useful either. I probably won't be the resident expert anytime soon (nor am I quite so driven to become an expert in that tech quickly, like I might have done when I was younger), but I'm still building websites with them.

My prior experience with other tech stacks helped me pick things up more easily too, because I know what subjects I should be googling to get the information I need, and a lot of it is basically the same concept, but with different syntax.


Yep. Good answer. Get an easy job. Maybe at a non tech company like Walmart or whatever. Work 9-5. Figure out how to maximize your salary within the corporate structure.Do a side hustle if you want. I am 56 and I have been doing this for 15 years. I don’t miss the 80 hour weeks.


Thanks for posting this question. I’m interested to see what responses you get here.

I’m a little younger than you (35), but can see a similar situation nearing for me soon. I’ve gone as high as I can at my current company as an individual contributor. I also was a team lead for a year with four direct reports. I love coding and building things, but I’m really starting to think I need to start making the transition into management or technical strategic leadership before I’m viewed as being too old to be an engineer. I have good social skills, enjoy public speaking, and get along with a wide range of personalities, so this transition wouldn’t be too uncomfortable for me. I can always code or do side projects on my own time.


Isn’t a team lead a management position?


At my employer it was all the responsibility of a manager while still also expecting to serve as a technical lead. I was responsible for 1:1’s, reviews, career development etc while also responsible for technical deliverables of my team.


It varies wildly by company. Team lead can mean anything from an architect with a smaller scope to a hands-off junior manager.


It's in the IC path. The teams being led will have some number of people-managers attached to them.


I'm 39 and will be turning 40 next year. I live in Singapore (no, it's not in China and it's no where near China). I was faced with this dilemma early 2021. I was working in a large Wall Street bank and it felt like I was just a pawn in the grander scheme of things. The titles there were over-inflated. Every year, some senior guy will get replaced and there will be a re-organization of the division. That translates into people getting laid off or projects being canned. My project, which I worked on for 3 years got canned over a POC by some new guy. The POC didn't even scale to the kind of workload our platform was handling.

I switched to a cybersecurity startup in February 2021. I was Engineering Manager. I thought I could call the shots for all engineering decisions and hiring of software engineers. I was completely off! Not only did I inherit 2 sub-par engineers with poor work ethics, the CTO did not have a clue on what he was doing. It's a long story which I can elaborate in my blog; but I left in July 2021.

What I concluded after this experience, in terms of salary, impact and respect....all this doesn't really matter. I think the most important thing is you got to love working for your boss. The boss is the most crucial factor to consider. A good boss will be able to provide you the 3 things you mentioned. Titles don't matter either. Just make sure you aren't underpaid for someone with your experience level, then all's good.

One more thing in my list of must haves: the company you join must have people that you consider way smarter and experienced than you are. This sort of environment allows me to learn and upskill myself.


A pattern I've seen a lot of is people joining a young startup as the founding engineer, and then move to an engineering director role once the company gets a good round of funding. Eventually the startup will push them out, where they'll either turn a side project into a business, or make a lateral move as an engineering director somewhere bigger.

I chose to keep being a software writer, and lean into mentoring. I'm 50, and don't have trouble with respect or salary. I don't know European employment law, but over in the states it's common for higher performing devs to shop their skills around every couple of years to find a better salary.


I just described that very arc to my partner as one possible new direction to take my career. I have 30 years full stack experience with embedded systems, and I am at a point where I want to look for founding engineer positions. If my team grew bigger than I could manage myself (while still being able to keep my hands in the code), I would happily step down to an engineering director role. In the improbable event that it was wildly successful, I would want leave before things scaled too far… only to repeat the cycle again somewhere else.


Why do they push the founding engineer out?


I don't think it's planned, it's just how things tend to turn out. At least for the three startups I've worked with.

If you're really good at cranking out code before your fledgling company runs out of money, that doesn't necessarily mean you're good at people management or leading. At a certain size, your company is going to need those skills more, and won't want to keep someone around at a C-level salary who's just slinging code.

The founding eng directors I've met all separated for different reasons. One took a buyout after the company was purchased, another had a side business that became profitable and helped find his own replacement, and the last one had his role downgraded when the company hired a CTO, and just got another job.


often its because the founder has a very different picture of why the company was founded and where it should be headed than the new vc-installed management.

its very much 'we love your passion' until its 'turn it down, we're trying to make money here'


In our company there are, informally, two ways to operate at the staff level and above:

- Be an expert in a single domain, eventually up to the point where you are pushing the state of the art of that domain forward with conference presentations etc.

- Be someone who takes a broader perspective on efforts and ensures that sound technical choices are being made and organizational/ technical roadblocks to getting those technical choices implemented are resolved.

Either way, your role is as a force-multiplier, and you are having a broad impact on the org. Cross-team leadership is perhaps more assumed with the second role than the first. But it is rare I think to come into an engagement having built up the networks you need to operate at that level, so a year spent as a senior engineer and building up those networks might not be so bad if the fit is right.

Hope that helps!


You are right, I am focusing on the second option, and to be able to do it, a company should have an appropriate setup.


I believe the challenge you’re seeing has to do with the fact that those jobs are rare and even more rarely offered to outsiders. Principals that report higher in the org are usually people who have been at the company a long time and know as much about how the company likes to do things as they do the tech stack involved. You can probably easily get a job like that, but it would require a less glamorous role on entry and working your way into it by proving your value.

The hardest part I’ve found being over 40 is mustering the will to prove value. The older I get, the more time I have to spend rebuilding reputation whenever I enter a new company.

I think the best advice I can give is find a company you won’t mind being at in 5-8 years so you can really learn how things are done there and can affect change.


> The older I get, the more time I have to spend rebuilding reputation whenever I enter a new company.

This is very dependent on organizational structure. Some companies re-org so often that you’re still “proving your value” several years into your job, whereas other companies will recognize a first class developer on week one just by virtue of their work.

If you want to be at/near the top though, and really have an outsized impact, it’s best to start off there. You could be the CTO of a tiny company with big potential.


>> I want to work hard, and see meaningful progression: in salary, in impact, in respect.

You seem to have the mindset that you can receive some form of personal fulfillment from your career and that your employer is there to provide that to you in return for services rendered.

In the perverted corporate world in which most companies operate, it is in their best interest to keep you dissatisfied for as long as you expect that fulfillment or happiness can be achieved by working for them.

If you want salary, impact, and respect then you should probably continue on the management track but you'll have to accept that the impact and respect components are a fabrication.


I sleep a lot better at night when in a development role than I do as a manager role. Maybe its because I enjoy technical dreams, but I dont enjoy how to deal with troublesome personnel dreams.

So if you love creating stay technical, if you like dealing with management issues take that route.


I recently got off the web dev hamster wheel and applied for a position doing embedded development in C in an established company after 25 or so years of startup and consultant madness.

I look forward to writing code and solving interesting long term problems again.


This! I am beginning to think more every day that C/C++ is about the only stable, rewarding and fun career in tech devoid of petty politics, full of high quality colleagues and tons of fun problems to solve. Ideally want to be an entrepreneur but C/C++ dev is not a bad fallback option.


Congratulations.

Did you learned C for the new role or had experience working in embedded ?

Did you had to grind leet code for interviews ?


No experience with embedded since Uni, but plenty of lower level C/++ for side projects with code on Github.

These interviews were thankfully of the more constructive kind, I didn't do a single test.


A very good friend of mine who was a semi famous video game designer in Hollywood for many years, said as soon as you hit 40, go work for the government. He works for the government, because of the stability, the benefits, all the things he was finding that after 35 years in the industry, he was just too old.

Over many conversations he conveyed to me that the technology industry is a young person‘s industry. Once you hit 40, you’ve got to find a way to progress to owner, senior management, or do something else.


It's going to be interesting to see how this plays out over the next few years. As the tech sector has grown there has been a big slug of people entering the industry. They are rapidly approaching this threshold.


When I was at university, I was quite jealous of my CS/IT/EE friends, because they had the math abilities to do cool things and get that degree. As I hit 44 soon, I think about those friends and where they are in their careers. It's starting to get close to when they may be forced out, or marginalized somehow, due to age.


I’m 50 in Silicon Valley and going through dozens of interviews right now. I decided to quit during COVID and now am trying to renter the workforce. I have 24 years experience and worked at companies you’ve all heard of and I honestly have great experience. I’m still a coder and code in my spare time because I enjoy it. I still maintain friendships with people I worked with over 20 years ago, we recently had a reunion lunch and it was nice to reminisce over the dot com days.

I’m so far 0/10 on interviews. The bar is so high now and the expectations of perfection in a 45-60 min interview are so ludicrous that I can’t find a job yet. I’m LeetCoding about 3-4 hours a day, focusing on medium and hard questions. I went to sleep last night at 1am after struggling to understand a hard-level LC question that took me about 2 hours to work through.

I know the drill, I’m not shirking away from studying. I’ve conducted hundreds of interviews myself. I’m old enough to have been through every single interview style that coders have had to endure since the Microsoft interviews of the 90s. But the sheer breadth of knowledge you need to know, plus the expectations of making perfect decisions in a limited amount of time is utterly ludicrous. It’s like people have forgotten that you can’t design Twitter in 45 mins or think about every single possibility. or that some of these coding questions that are being asked are PhD level problems, so if you’ve never seen it before, it’s going to be pretty hard to solve. Or that people can make honest mistakes and get on the wrong track for 10 mins out of a 4 hour interview, and then you get rejected. Or people also seem to forget that the interviewers themselves are so inexperienced at interviewing that they confuse their candidates with poor instructions, or they expect the candidates to guess what they themselves think the right answers are.

The most frustrating part is when you’re given a relatively “easy” question but you go down the wrong path, figure out your mistake, and then correct it and solve the coding question in the allotted time , and then be told that I “didn’t perform as strongly as they hoped”.

If I were told “study X,Y and Z. We will test you at LC hard only on this.” I could bang it out of the park. But I literally have to know every single topic in CS and every level. LC literally has thousands of questions. My brain can’t remember all of these solutions. I’ve been studying for 2 months solid and finished only 200 LC questions because some questions take me all night to understand and I’m exhausted.

The biggest insult is that a company I worked at before needs me to go through a full interview loop even though I have great performance reviews only a few years prior and my code is still running there. Not that I would return, because I left that place for a reason, but the idea that an interview is a better judge of my abilities than the years of performance reviews is completely mind blowing to me.

Everyone knows that interviewing is broken but it’s not broken. It’s mentally ill. It’s crazy. Interviews don’t test “how good of a performer will this candidate be?” It’s “how well will this person do on these random questions that we don’t know if it actually correlates to work performance.”

I was on an interview loop for my company where someone had a GitHub. When we suggested that we could check out their GitHub to see their coding, someone objected saying that we don’t know if that person actually wrote the code. The confidence people have that on-site interviews produce the best example of how smart people is a reflection of how insane things are.

Expectations are far too wide and as a candidate you need to know literally everything otherwise you won’t “perform strongly”. But it’s really just random chance. Coding interviews should be longer and less random. Give time for the person to mess up and get back on the right track. Isn’t that what you want in a co-worker? Systems design questions should be a long conversation about building systems, not just “what points did the candidate mention that I was expecting them to.”

Coding interviews are more of a hazing than indicator of future performance. And as more people study, the bar gets higher and higher until it will reach absurd levels. I have staff or senior staff level experience but I’m applying for E5 level positions because I would rather get into a company and work my way up than try to come in at a level where the expectations are mentally ill.


My pops and I were talking about this. We have a theory that the real reason these leetcodes are done is to allow large organization to discriminate in whatever way they want without opening themselves to discriminations lawsuits. I don't actualy believe this is the "conscious" reason, but I think this may be one of the reasons that leetcode style interviews are popular.

I can get everyone but the least skilled interviewer to pass if I provide enough assistance in the interview. Similarly, I can fail anyone but the strongest algorithmic candidates by being unhelpful in the interview. The interview allows enough "smoke screen" that I can basically end up passing/failing in a manner that is pretty detached from their "objective" algorithmic skill.

Just a theory.


Your theory has been seen before in other contexts - https://arxiv.org/abs/1110.1556

The Mathematics Department of Moscow State University, the most prestigious mathematics school in Russia, was [around 1975] actively trying to keep Jewish students (and other “undesirables”) from enrolling in the department.

One of the methods they used for doing this was to give the unwanted students a different set of problems on their oral exam. I was told that these problems were carefully designed to have elementary solutions (so that the Department could avoid scandals) that were nearly impossible to find. Any student who failed to answer could easily be rejected, so this system was an effective method of controlling admissions.


It's much more simple than that. It's meant to prevent job mobility. Eng salaries are already absurdly high. Ever noticed how almost all the big tech companies do more or less the same ritual? It's entirely design to prevent seniors from moving around. They're too expensive already. It is almost collusion. Before the big tech companies used to have a secret handshake agreement not to poach each others candidates. They were caught and ordered to stop and forced to pay fines. This was around 2013/2014. Since then LC questions have become absurd. The process is designed to favor younger candidates who will accept less money and work harder for the company.


I hear you on the ludicrous breadth of knowledge that is expected. I recently went through the interview loops of several large tech companies. This time around I decided to study leetcode only a little bit and to lean more into my experience during the interviews and it worked out better for me. Here's the biggest key to interviewing at senior+ level, I think. In the past, I think my tendency had been to assume that the interviewer was looking for one right answer and to try and meet them where they were. This time around, I would openly say that it depends on which context you're talking about. If someone asked me to design Twitter, for example, I could do it as a CRUD app with a web front-end, a microservice that's essentially an adapter to a SQL DB of some kind, pretty easy. So I would just say that. "If you are just starting out, this could easily represented this way and it could support you into thousands of users..." Then I would leave it on them to ask more questions about how to scale it up. I'd mention that you could carry the DB farther by using read replicas if you accept that not everything is in real time. Then we'd start to eventually talk about potential solutions for getting more realtime data like Firebase, but we'd talk about where in the stack is that really necessary or appropriate and at what scale. I found pretty good success this way, rather than starting with the most complex solution, instead starting with, basically, the simplest, and easiest to get going initially.


This is pretty much true, but if you're doing a coding test, don't just provide a naive solution full stop -- if you can _also_ provide more scaleable solution(s) or at least a discussion of how things could be made more scaleable in the readme, you'll do better


The only place where I really met high expectation is in finance. The amount of ten-seconds-for-the-answer-or-we-stop-the-interview questions was enormous.

Last 5 places I interviewed, 2 didn't ask LC at all, and I still failed at 4.

Also, for LC, you should work on it for 15-30 minutes and then look at the solution. It's the most efficient way. If you don't even understand the task, just don't do it. Similarly, sites like codeforces allow you to group tasks by algorithm and to sort them by number of people that solved them (and you can look at the solutions). This also simplifies the knowledge acquisition.

As for being a principal/staff engineer. This is all new to me and I have no idea how much these individuals code or what exactly they do (although I'm currently starting a principal engineer role in a company of around 300 engineers). So I assume either I'm silly or the title inflation is rampant. Although, the interview required operating systems, networking, algorithms, hardware, people skills, low/high level programming language knowledge that I guess I have. The questions were: "How does a UI library work?", "Describe this networking protocol?", "How many syscalls are triggered by npm install?", and whatever other question that they ask you to go as deeply as possible as you can.


I was in the exact same boat for several years. After repeated rejections, I took a break from interviewing for a couple years. I already had a job so I could afford to do that. I realized that I was applying for the wrong type of jobs. Instead of hands on IC roles, I targeted engineering manager roles since I have quite a bit of experience managing small teams. I recently landed a job with a FANG as an engg. manager. Even though there is a coding component the main focus is on systems design and team leadership, also I think there is less age bias for EM roles.


Similar age and circumstance but not in the USA.

The saddest part for me is the companies that just throw you a take-home exercise without even bothering to phone you first. You apply to a certain position and then, say a week later -or sometimes more-, they simply send you an email with some programming task to develop.

Frequently they are not small tasks but full projects which require multiple days of work. Just a few days ago: delivering a full web application to manage "map layers", with a DB, a back-end, and a "user-friendly front-end with a nice design"; testing included and all put into Docker containers, and a working demo somewhere published automatically from the repository.

And I mean, it's not just the assumption that you will spend however long it takes you on this for free, but that you will do it without even having had a simple conversation with them before.

----

Anyway, what I really wanted to say was: Good luck in your search. Stay sane.


This does have the effect though of filtering out candidates who were lukewarm on the position to begin with (eg they were just throwing applications around en masse) because now, yes, there is that investment to be made in proceeding with the application. And the coding test tends to become the focus of the rest of the interview process, assuming the company goes forward with it. And good companies will give fairly comprehensive feedback on your submission, so there's that.


>Expectations are far too wide and as a candidate you need to know literally everything otherwise you won’t “perform strongly”. But it’s really just random chance. Coding interviews should be longer and less random. Give time for the person to mess up and get back on the right track. Isn’t that what you want in a co-worker? Systems design questions should be a long conversation about building systems, not just “what points did the candidate mention that I was expecting them to.”

One reason for this is that large tech company have horrible diversity metrics and are trying to avoid getting sued for discrimination (bot just by candidates but also by the government). If every candidate is judged on the same robotic criteria then that makes a discrimination claim harder. A second reason is to avid managers building fiefdoms or employees having much more loyalty to their manager than the company.

Startups have a wider range of interviews but they also pay much less. Although you could get lucky with an late-stage startup that hasn't fully solidified it's interview processes yet.


Refuse these kind of on-the-spot tests and save everyone a lot of time.


I’m over 40 and in the US. I also just did a job search. I left a midsize company as a Lead Dev and interviewed for staff and principal roles in order to get back to more technical work. Here, in the US at least, I found a couple roles that were at that senior-plus level and don’t involve a lot of meetings. I took a staff role at a much much larger company and it seems great so far. Keep your eyes out and maybe you will find a few of these roles around.


I became a teacher in software engineering when I was 46. In our country there have been and still are lots of vacancies for technical teachers. I find it very fullfilling to work with young persons (students) and it is easy to keep up to date with new software eng. techniques because you are in an environment with som many technical persons (colleagues, students, workfield)


Was it a massive pay cut?


I suspect that depends a lot on location. A friend moved to Europe and software dev salaries there haven't undergone the massive rise we see in the US over the last 30 years.


I can't speak for the original commenter, but my dad is a software engineering dean with decades of experience. Yes, it's a massive pay cut.


Most certainly. But all the stress was also cut. There is very little stress in academia. Most of it is caused by the administration.


> There is very little stress in academia.

Are you sure about that? It seems to me the smaller the community and fewer the resources, the more 'intimate' the competition. Stories of feuds over parking spaces abound.


Only big companies will have the resources and need to hire someone who makes architectures and rarely gets their hands dirty. It sounds like you want to be an architect that primarily designs big systems from the ground up. There just isn't a lot of need for this - the design is the beginning, and after the system is running it's about keeping it running and improving it. Plus a lot of these roles are internal hires from talent the CTO knows already, as there are so few of these positions and they need to be trusted.

However this sounds like something FAANG companies have positions for. I just think they will be very limited and very hard to get.


This is really not true. Every software-focused startup that's ~30 people and growing need someone to guide the way for the less experienced engineers. Systems design is a part of every software engineer's career, but experience there can be pretty limited. (Most people try to simplify the field down to 1-person projects, because they started programming with 1-person projects. That very quickly fails to scale, and needing to make 15 1-person projects work together is a common demand.) So you need to learn it "on the job", and you need someone around to help. That's exactly the position that the OP is looking for, and looking around at job listings, it is quite in demand.


> you are limited to the scope of a single team scope, report to an Engineering manager, just be a worker at a feature conveyor </snip>

I am in your age demographic. My current title is simply ‘Engineer’ without modifiers, but in the business hierarchy I am on the same line as VPs, so I interact with them as peers; and they are. The Directors, Managers, etc. that report up to my peers do not take orders from me, but I can override their decisions on concrete technical matters.

What I’ve found is that in a non-startup (ie corporate) environment your row in the org chart determines your level of agency, not the title as it appears in your HR file.


For all my engineering experience, apart from CTO and Freelancer, I also have listed 'Engineer'. I've been a senior engineer for some years now and still refuse to align with whatever each company chooses to name me.

I worked in a body-shop as a junior, but they sold me as a senior to the client, so I got lucky early on to realize this is just smoke and mirrors. I haven't really had any problems with it and when people ask during interviews, I usually tell them it's up to them to gauge my seniority, I have no idea.


I asked a related question recently on Reddit which got many interesting comments and insights:

https://www.reddit.com/r/cscareerquestions/comments/o6d481/h...


I think if you want to have high impact, agency, and autonomy as an IC late in your career you should work on your math skills with an eye towards a research scientist / core algorithm designer position. The other option is to be the founding engineer at a startup, but that's probably only good in your 40s if you want a divorce


Having reached 40 and living through the pandemic, my priorities have changed from trying to climb the greasy ladder to ensuring I'm doing work I enjoy, and having a good work/life balance. I have people far younger than me who have been promoted above me, but seem to constantly annoyed by the type of work they have to do. Constant meetings being one of them.

I know I'm underpaid for my experience and skills, but I try and be a leader in my field, and try a train as much as possible. As others have said here, the extra time I have at home gives me the energy to work on other projects (hobby, etc).


Given role titles, it sounds like you are at Google and interviewing at Microsoft. In my experience, Microsoft is more aggressive at pushing you into management. Google seems to have more opportunity and culture of people working in a purely technical capacity to at least L7. At Microsoft, it felt much more like 65 was the glass ceiling. On the flip side, it also felt like managers at Microsoft were more involved in the technical decisions.

This was my experience anyway. Others may have seen things differently.


Who you know is more important than what you know.

For your first 15 years you can be a body, moving up the ladder doing what they want and getting better people will hire you because engineers are in demand. But after 10 years you start running into diminishing returns and by 20 you really can't grow that way. Note that this is about the time you hit 40, but that isn't about age.

At 40 you can hang on, your raises should (but won't!) Track inflation ,but no more. Many do this because they are happy, or don't want the next step.

Your other option is to be better in other ways. There are many answers. You can be the one who mentors all the junior engineers. You can join the relevant ISO committee and write the standards your company will implement. You can be the expert in something hard that your company does (I'm the goto guy for our start all the threads in sequence without deadlocks scheme) you can be the person who goes to all university events telling people how awesome your company is. You can be the person who introduces new technology (be careful, I know a company that spent billions on something that resulted in better quality but things that took a week in C took 2 months: the champions of that are gone)

There are hundreds of others. You need to figure out what will get you recognition. Be careful, I know of companies that didn't have a problem because some unrecognized senior person did the work, they let him go for not being productive in things that mattered, a year latter there was a whole department doing what he was doing. You need to ensure someone is tooting your horn.


Out of interest, how are you searching for roles?

I ask because we have (what I believe to be) a very interesting engineering problem to solve but a lot of the recruiters out there will plug the hedge fund and fintech jobs because those guys are willing to pay absolute top of market and therefore pay more in commission to the recruiter.

I wouldn’t get caught up thinking about titles because they mean different things to different people. There’s really interesting work out there for someone of your experience and increasingly more interesting startups in the Uk. You just gotta look a bit harder for it.

We are searching for a ‘principal software’ engineer to join our team. I think we have a different engineering setup to many startups because it’s very multi-disciplinary in nature: plant science, ml/optimisation, software engineering, sensor/embedded tech. So our idea of a principal swe is someone who spends some of their time as an ic and some of their time helping others to upskill in software engineering - this could be junior swes or senior plant scientists. I know that for other companies ‘principal engineer’ could be a product owner role or it could be a chief architect role or it could be more of a floating mentor.


There are lots of options apart from the standard salaried career. At the age of 39 I'd had enough for working for other people and started my own bootstrapped 1-man company, selling software products online. I am still at it 16 years later.


I was thinking about it as well. May I ask how you figured out what products to build? Did you stick to the same business domain, learned about their problems, and then built a product?


>May I ask how you figured out what products to build?

I built products that I wanted. That probably isn't a commercially optimal approach.

Probably better commercially to pick a market, embed yourself in that market and learn what they want. You might end up building something you are less interested in though.

>Did you stick to the same business domain, learned about their problems, and then built a product?

I have 3 products now. In each case I released something bare-bones that I thought was useful then iterated like crazy on user feedback. I didn't know that much about each domain when I started (but I do now!).

If you are interested I've written quite a bit about my experiences at: https://www.successfulsoftware.net


What kind of software do you sell?


Desktop software for Windows and Mac.


> My expectations for the roles like Staff / Principal Engineer are that while staying hands-on, say for 30%, I will primarily use more my skills in architecture, engineering, and communications to focus on large, important pieces of functionality, technical decisions with big impact, etc.

> Now I think to plan switching to a EM track or to Technical Product management. Thank you!

I think you should refine a bit on what you are really looking for. Roles with 30% coding and a TPM role are extremely different. Is the most important thing to you large scope? Deep technical work? Or a high compensation? All of them are available, but potentially at different companies and not all at once. At Amazon a principal engineering role usually comes with the huge scope you described - but many engineers on that level will not be 30% hands on coding due to other responsibilities taking up time. I heard its a bit different at the other big companies, where the scope might be more on the team level as you described. For startups there is likely nothing in common.

If you like technical work and think you add a lot of value there - you might want to stay on this path (whether its the wide or deep one). The management path will be very different.

One thing you might want to consider for the principal IC path is that it will require significant investments to stay on top of this role: Technology is constantly changing - we have new programming languages, new tools (containers), new environments (cloud), new paradigms (devops), etc. In the most senior roles you will always be expected to be on top of those things and know more about them than the average senior engineer who you can guide. So I think you definitely should bring in a far amount of curiuosity to learn new things at a very deep level to keep staying successful.


I’m about the same age + experience as you are. I’ve learned that what I like best is the nuts and bolts of programming. My favorite jobs were low-bureaucracy business where I have a ton of control and few meetings. I’m currently on a team of 2.5 developers with one meeting per week. It’s great.

My advice is to think about what you’ve enjoyed most in the last twenty years, and optimize around that.


I'm noticing a theme in all these comments: we all hate meetings and they make the job suck.

And I agree, meetings are often ridiculous and suck a lot more time out of your day than the 30 minutes that you actually meet.


I am 43 now and employed in the central IT department of a big German car manufacturer. I can completely relate to the OP in terms of roles and responsibilities, but I would like to offer a different perspective on the meaning of your job: It does not matter whether you write code or not. As an engineer in IT, there are numerous ways to create value for a company, be it in software development, operations, IT-related purchasing, project management, agile leadership (SCRUM master) etc. Your core asset is your technical expertise - if you combine it with any business function, you have a very coveted skill set and probably a rewarding career. I myself changed between different roles (lead developer, maintenance manager, architect, build manager...) and different business domains (quality, customer service, manufacturing).

My core take-away is: create value and more around laterally in the company. You will gain valuable knowledge and you will be respected.


I started going to psychoanalysis and the analyst asked me: so why do you work in programming? I had to contemplate that for a long while. Answers that I came with were not at all what I thought. I had to really go back in memory to early days of my tech onboarding (teenage IRC years). I think it's a good exercise to go through. I think OP is one of the better examples of why it's a good idea. Because here is somebody hitting 40 and the life decision they are making is not whether to stay on the same path, also not contemplating what other things they could possibly do with the rest of their life (which statistically-speaking is probably another 40 years of fully conscious adult living) but to "see meaningful progression: in salary, in impact, in respect". So why are you in software?


someone asked me that in an interview context and I mumbled something about problem solving. but that question stuck with me and mulled it for quite a while.

for me its about agency, and creativity. i dont just want to solve your problem, i want to build you a beautiful palace using solely force of will that completely obviates your problem.

at least now i understand a little better why I can't function in devops land.


Well if you don't want a boss, you need to switch to entrepreneurship, maybe start a solo sass ... I don't see a way around it. Edit : need a cofounder? :)


A few comments. There are only so many senior roles so as you are promoted there are more folks fighting for fewer seats, and this is why a lot of people move into management type roles as they get older. I also feel that SW development is a younger person's brief nowadays as the prevalence of python means it's more about googling and less about SW engineering. It reduces the need for senior people but these younger folks will get older too.

There are a number of companies where there are older folks in senior SW roles if you look for them. I find that it's harder to work with younger folks as they are less likely to have families so have this mentality to work longer and then go out on the town. Not interested.

Two euros.


Look into sales engineering or solution architect roles.

They are great late stage careers and typically involve a lot of architecture and consulting type work.


Sorry to hijack the thread, I am wondering for those of you FAANG/Unicorn engineers. What is next to you after this?

Context, I am also a FAANG engineer earning FAANG salary but still faced with the reality that in order to increase salary (more so due to inflation) I just have to Leetcode and re-interview every year to renegotiate.

Until what point do you stop Leetcoding/re-interview every year? I think at some point I will hit a salary plateau, what to do after this? For an average (majority) of FAANG engineers, what are their salary plateaus? I probably need to just aim for that and then stop Leetcoding/re-interviewing after that.


Do you mean you re-interview and then stay in your current role, getting a raise from the competing offers? Or do you mean switching employers?

In any case, most FAANG have fairly fixed salary ranges for each level. Now's a time of big salary increases, as you note, so there's more flexibility, but you should expect this strategy to fairly rapidly hit the maximum for your level unless you get promoted.

So, if it's all about money, two strategies:

1. Switch employers, get a big initial stock grant + bonus. There tends to be more flexibility on the initial grant than on salary itself.

2. Get promoted.


Forgot to reply, sorry.

Yeah I am thinking of re-interview and getting a raise from competing offers. Do you think this is a bad idea or will leave a bad taste from my manager or HR?

So you are saying at some point there will be a time where this strategy doesn't work as well anymore? I am a bit relieved lol, I thought I am gonna Leetcode until I retire.


Yes, there will be a time when this strategy does not work as well. Typically, big companies have salary bands per level which are set by HR (based on market analysis). While managers have some discretion on top (and may have more when it comes to RSUs), that discretion is somewhat limited--especially for those just starting out in their careers. Hence my comment that eventually it's just better to get promoted.

Does it leave a bad taste in your manager's mouth? I don't know. That depends on your manager. ;)

On the one hand, there's absolutely nothing wrong with demanding a fair price for your labor. You only have one life, and you're choosing to give a big chunk of it to your employer! And if you're underpaid, competing offers are great evidence to rectify that!

On the other hand, don't make a threat you can't back up. If you told me your plan was to get competing offers that you actually find attractive and then take them if your present employer can't match them, I'd say that's a great plan.

If you like your job and your team and don't want to switch, however, then I think presenting competing offers on a yearly frequency presents two potential challenges:

1. Your manager at some point may say, "Can't help you." They're not gonna fire you, but they may realize you're bluffing, so you won't be able to use this tactic in the future!

2. It way detract from talking about other, ultimately more important facets of workplace satisfaction, like working on projects you like, working with teams you like, etc.


Correct me if I am wrong, but how do you negotiate a raise without a competing offer? Seems like a losing battle from the start


Nothing stops you from going to your manager (or, during your probably-annual comp discussion) and saying, "Based on {a conversation with my coworker, Levels.fyi, a competing offer}, I believe I'm being underpaid."

Obviously this discussion has varying credibility depending on how serious you are about switching jobs, so a competing offer helps--but it also helps to know your manager's range of options.

My general advice is to try to understand the range of options first. For example, you can ask your manager, "Can you tell me where I stand in the comp range for my level?" That will let you know how much base salary growth you can likely expect or negotiate for without a promo. Similarly, "If I have a competing offer, do you have leeway to make a retention RSU grant?" would be good to know.

The key point is a) this isn't your manager's money, so they shouldn't be too personally invested in it, but b) they also don't have a huge amount of discretion and there's a lot of formula behind it, so understanding how the formula relates to you is a good start.


Develop leadership skills if you want the the role you describe below. That can’t be granted in a promotion and doesn’t happen automatically with age

> My expectations for the roles like Staff / Principal Engineer are that while staying hands-on, say for 30%, I will primarily use more my skills in architecture, engineering, and communications to focus on large, important pieces of functionality, technical decisions with big impact, etc. I expect that I would report to a Director or VP level manager, so that I could be exposed to a big picture, collaborate with and learn from a professional who operated on strategic level


I'm close to a 35+ yo engineer and have been with my current employer for over six years, mostly based in Europe. There are multiple ICs, myself included, in positions like the ones you seem to be looking for, and we are hiring. I know you're asking for advice and not for leads, but maybe the data point that I consider these reasonable goals is advice enough and perhaps you'd like to chat about the company behind it. Reach out at tobias@cockroachlabs.com if you're interested.


Good point! I suggest the topic starter to apply at the companies that build products for us techies to use. I live in Germany and we have many more remote options nowadays - New Relic, Elastic, Snowflake, Aiven, etc. It will be fun and you can master some specialisation that can make you more valuable and be a meaningful progression.


Friend, it's time for you to find a business partner and become a founder.


I turned 42 recently and I went through a similar situation. Good job, well paid and still interesting enough, but becoming more and more boring every month.

At some point I felt that I had just two options on my table: - Stay in the company as technical director to continue growing but with limited expansion possibilities. Write less code and make more boring meetings basically. - Continue doing more coding as senior developer and be happier with my life without all the meetings, but that would mean even more limited growth possibilities.

So like in most things in life, in the end I found out that there are not just 2 options, but thousands. In my case the best solution I found was keep working with my daily job to have the stability that makes me feel "safe" when I go to sleep, and at the same time spend most of my free time in doing what I like the most: coding on some project that is 100% mine and where I have total control over.

I tried this approach a few times with some SaaS projects and even if they didn't became unicorns and some generated barely 30-50k$/year, they were totally worth the effort in creating them, because on top of the money, the most valuable thing you get in return is to learn how to create a project from start to finish, with all the non-technical components like marketing included.

Over time I found out that you'll need to be lucky enough to find someone good enough like you on the design and marketing side of it as well, but if you finally find the right team, then it will become 100x better than working on any company. Both financially and in terms of happiness.

Of course it's not a recipe that will work for everyone because you really need to be passionate about something to spend most of your free time on it, and you will risk of getting burned out, but from my experience is definitely worth the effort!

And the most important part of this, is that you will have the ability to jump into any technology you want!

In my case I felt like the web2.0 was getting pretty boring and repetitive for me after doing all the SaaS projects, but now I'm about to launch a web3 project that I built within 5-6 months without any prior knowledge of smart contract in any way. You can't find a job that will give you the opportunity to make such drastic changes in your career and will allow you that level of freedom.

You just need to make it for yourself!


I'm 41 and still working a software engineer. When I was younger I wanted to get a job in SV but could never pass those interviews - now I no longer care and work remotely from rural Alaska :) I may step away from being a FTE and go full time consulting/contracting eventually, as being involved in company politics and chasing promotions is something that no longer interests me. After spending nine years as an Army officer I have no burning desire to be in charge of anyone.

My ideal working environment is a small team of very experienced/talented engineers working on greenfield projects. I've had that a few times in my career, though not currently.

My mother is well into her 60s and still working as a software engineer (also mostly remote now). She declined promotions that would have taken her out of coding over the years - so we're at about the same level of seniority now. I imagine she'll keep working as long as she's able - she seems to enjoy the work more than I do.


It seems like a senior (E7+) position at Facebook fits what you are looking for. Let me know if you want to chat about it. vjeux@fb.com


Given the interview experience at that company described in a sibling comment - why should we bother?

Facebook was by the far the worst, and I interviewed 2x for 2 different roles. YMMV but 2 Leetcode q's read off by bored, mid-level employees. Not a single question about anything else. Maybe that's a fine process for college grads but for someone with decades of experience? As a former hiring manager I honestly found it comical


Out of curiosity, are you working from Europe or US?


I’m personally working from the US but a sizable part of my org (Client performance and reliability) and my previous org (React Native / React) are in Europe. As a French person, the European side of fb is dear to my heart!


I'm 39 going on 40. Was hired into my dream job this year that set me up for life.

I also just turned in my notice last week. 12+ hrs are the norm, I have to "tattle" on other VP's who want to promote their own agenda.. burned out and not present with my family.

Will happily take a pay cut and work a "9-5" with late nights at my choice.


> Was hired into my dream job this year that set me up for life

How can you know the job set you up for life less than 12 months after being hired?


This is my fear. Hard to know how the “dream job” will pan out. Certainly simpler and somewhat safer to stick with known arrangement (so long as it is still available)

Temping to see what else is out there tho. Hard to pull the trigger without a boomerang option


I decided early on to stay on the technical track. I had mentors who sampled the management waters and explained the pros and cons. For me, a long-term technical track was the better choice.

If you stay technical, work on 'building the brand' and team-building skills. You can't be the 'super tech' worth the huge paycheck-- nobody is that good. Period. It's the team builders that get big things done.

So write some Call for Papers submissions, work on giving great technical presentations, and look for any way to add value to your projects. (Many of these will involve gathering and rendering metrics. Look for valuable metrics nobody is reporting!)

Good Luck. As you grow out of the 'IC' role, you will have to find new ways to get job satisfaction. They are out there-- just different than 'working code' all the time.


I am in similar position. I recently turned 40 and I’m a Development Manager but the role is moving me away from all the technical stuff I really like. I work in a classical industry position so no interesting FAANG Stuff only boring (but important) business software to keep up and running with my team.

The problem is that i originally did a PhD in Computer Science (Machine Learning / NLP) in 2010 and had papers at SIGKDD, ECML etc. So this business software thing is terrible boring for me but in Germany it was reallly hard to find interesting - well paying positions - at that time in this field.

And now i have no idea what to do next, because i fear that all my experience as a “Development Manager“ will not be accounted for if I apply somewhere in a more deep technical role like FAANG.


I'm 39 and in the USA. I've had similar experience to yours.

I'm considering targeting the C suite given my social, communication, and strategy skills. I would be a little sad to give up coding, but since I do plenty of coding in my free time, I don't think it would matter much.


What is a C suite?


Specifically referring to the chief executives of a medium-to-large corporation. Their responsibilities vary depending on the organization, but usually, they're tasked with improving the profitability and efficiency of any given group.


Most likely referring to management. People that tend to have Chief somewhere in their position title.


It is the "chief" type roles in a company - CEO, CTO, CFO, COO, CMO, etc.


I'm 40 too and this is why I left the software engineering field and went into medicine. Just started interning in fact ("co-schappen", which in the Netherlands takes about 3 years, after which you can call yourself doctor but don't have a specialism yet). I'm loving both the experience of learning an entirely new field with its own quirks and ways of looking at the world, as well as the technical challenges.

I realise it isn't for everyone, but there's no shame in acknowledging that software engineering is sadly structured to be a field for mostly young people, and moving on to greener pastures. I mean, I can still enjoy programming, just as a hobby instead (which is what it started out as anyway).


I'm 40, went through the job search cycle this spring and can share my experience.

First: I've been working in tech for ~20 yrs. First 6-7 as an IC, then 8 as a dev manager, then 5 as a senior IC (I'd grown weary of middle management and wanted to have fun coding again) before beginning the latest job search.

Of FAANG I interviewed with 3 - Amazon, Netflix, Facebook.

Amazon's process was the least worst IMHO. Programming questions seemed less gotcha, less Leetcodey, altho major negative demerits for forcing candidates to memorize Jeff Bezos' "leadership principles" and demanding they share canned anecdotes from their career how they demonstrated them. The biggest problem however was the hiring manager was the very last interview and he ended up being an aggro jerk with little or no visible social skills, the kind of horror story you read about on HN. Shouldn't he have been the first? No offer and I would have rejected one anyway, especially because their comp sits behind a 4-year vesting cliff.

Netflix was odd: I applied for a senior full stack role only for the hiring manager to tell me mid-interview the job was actually a front end role, dashboarding Netflix's internal tools. Why misrepresent it then? They ended up ghosting me, but no more front end for me, ty.

Facebook was by the far the worst, and I interviewed 2x for 2 different roles. YMMV but 2 Leetcode q's read off by bored, mid-level employees. Not a single question about anything else. Maybe that's a fine process for college grads but for someone with decades of experience? As a former hiring manager I honestly found it comical.

I interviewed with 6 other companies before landing at my current gig as a Principal Engineer for a global media company. None of them made me offers but I wasn't too passionate about pursuing them. Often I didn't believe in the business model (e.g. "AI to solve customer support!", "ML for more accurate real-estate appraisals!") but maybe I just sucked too? Idk.

When I interviewed for my current role my hiring manager seemed really smart and had 10+ yrs of experience beyond mine. He also gave no coding tests (!!) and instead just had me speak to a lot of other senior people.

I'm six months into the role and so far, so good. No job is ever perfect but I'm happy I made the switch, and I feel like it's a good pathway into an executive role at a startup or some other company.

My general advice would be to keep at it, be patient. In some ways it's just a numbers game. Or maybe more like dating, where you can go on 500 bad dates but number 501 could be the one. Don't take an offer just for the money if you don't get a good vibe from the people. Also a huge salary becomes less and less important the older you get, find something that makes you happy.

Good luck.


As an experienced report you can help your junior eng manager grow. When you’re being hired at staff eng level — a role partly defined as being a model employee — this should be made explicit as an expectation by your skip-level and/or CTO.

You should be the best possible direct report, one that helps your eng manager learn in the best possible way and which sets an example to the more junior ICs in your team and org. You’ll probably begin at the very beginning, by letting them close the most senior hire of their career to date, as a hiring manager.

The flip side: this is largely useless in a big org. The flip flip side is that it is invaluable in a high growth environment.


I am 42 and blessed with 2 separate careers in unrelated industries. A famous person that went through a similar experience is Admiral Grace Hopper.

I am a technology principal in my part time job and it’s very rewarding when I’m not playing senior manager or director.

My primary career is largely dead. I am a JavaScript developer and I have no interest in tripping over beginner things and framework nonsense. I would rather program and focus on building better products in a world where most JavaScript developers are focused on tools and how to write code.

I spend a lot of my time thinking about open source and decentralization.


As a hacker you probably know that decimal is an arbitrary radix and even if there was a canonical radix, it would not make sense to start worrying about your job when the number ends in a "0".


> I want to work hard, and see meaningful progression: in salary, in impact, in respect.

yes go for EM-> senior EM -> director.

Coding has no minimal respect, very limited impact and deadend salary progression.


> Coding has no minimal respect, very limited impact and deadend salary progression.

Let me know where you’ve worked so I can avoid these places. I’ve worked for plenty of orgs where tech and those in tech add massive value and impact and therefore are held in high regard.


I was making, on average, 600k a year at Google, 5 years ago. I hear it's a lot better these days.

The "deadend salary progression" allowed me to retire at 40.


sure if you are top tier talent, you can do earn top tier dollar. For vast majority of people who are stuck at "senior software engineer" level at an insurance company its a dead end job. Most ppl don't work at FAANGs at huge rsu comp, most ppl in industry dont get paid in rsus.

> The "deadend salary progression" allowed me to retire at 40.

Again, i made a general statement. Surely you don't think this reflects a general case?


Any smart, sufficiently motivated engineer can get hired at one of these (which are a lot more than just FAANG) companies and make top dollar.

Realistically, the vast majority of "senior engineers" stuck at random company are not really senior engineers skill-wise. Which is why they stay there year after year.


> vast majority of "senior engineers" stuck at random company are not really senior engineers skill-wise.

Thats besides the point. Ins't it?

Going into management is a better option for these 'vast majority' of people.


> I will primarily use more my skills in architecture, engineering, and communications to focus on large, important pieces of functionality, technical decisions with big impact, etc.

You are at the level where the choice is either become a technical expert, or become a leader. If you want to become a leader, you'll need to put the same effort into your people skills you've put into your technical skills. You'll also need to increase your visibility to non-technical leaders.


Software engineers in China always want to be a manager not a coder. They even think they fail if they don't be a manager when they are 35+. Cause China is full of employees, if they only code, hrs will assume they don't have many profits. So there is a saying in China "Software engineers retire at 35." But the retirement is not decided by engineers themselves, rather the fucking cruel companies


Same in India (I work for an Indian company in the UK), but that's not true of everyone, just the majority, Software wasn't always a highly paid job in the west with many opportunities and so it used to be that the people getting into it loved coding and technology. This is now very much the case and it's seen as the place to be ESPECIALLY in India.

I have worked with some great Indian technologists, but there are so many IT workers there, with different aspirations, they can be hard to spot.


Congratulations, you have completed the game. Now you are asking for easter eggs, hidden maps and how to unlock the next difficulty level.

My advice as someone in a similar life phase is to play something different. I understand you want money but all that chatter about roles, levels,... It bores me to death, which by the way is not that far. Pick something you actually like because most probably you are not going to get much further.


This profession doesn't scale. You are at a peak and then you'll have diminishing returns. Only way to progress is to start your own business.


It sounds like you'd be happy in a role as a "Technical Lead", "Architect", "Cloud Architect", "Application Architect" or "Solution Architect".

These are commonly used job titles for very similar roles, where you're leaning much more towards architecture and design, but some degree of hands on is still a must.


I'm a 'Principal Software Engineer' - to the extent that inter-org comparisons work, this is what a lot of places call 'Staff'. I'm in my late 30s and I work in the UK for the BBC. I'm embedded in a product team.

I think lack of definition, or the perspective that an advertised role is just senior+ software engineer, is probably fairly normal. Unsurprisingly employers do a bad job of describing something that ideally ought to be flexible and self-directed. Our ads would probably look a bit like this too, but the jobs themselves are varied. The question should be whether you can actually do what you see fit, in role. You will need to explore each specific opportunity to try and fathom this.

I think you could do with some of that flexibility yourself though. You have quite a specific ask (who you would report to etc) and I don't think all of it is material to enjoyment. Given that your other options are doing something that is specifically *not* what you describe, like line management or product, I think you should ask yourself what you're willing to compromise on here in order to be happy.

I know you're talking about your ideals but it also seems to me to be a rigid (and may I say somewhat cynical) idea of what value you might bring or be able to bring. Try thinking about it as more responsive to a problem space with an element of self-development. I feel like at present, if you talked about it on these terms with an employer, you're presenting them with a set of assertions and constraints - 'I want to do architecture whether you like it or not, I will not do mentoring'. My role has presented me with new aspects which I didn't know I liked, and it's helped me develop as a leader and particularly an empathetic leader.

My job is mostly about figuring out how I can provide the most value right now, and then doing that, and it's constantly morphing. When I started, I decided the best use of my time was firefighting and putting a neglected house in order with some big technical rework pieces. Now we have a junior-heavy team and until we have a critical mass of seniority, it's mostly skilling them up. There's lots of strategy and a little architecture too but there's only so many hours in the day.

I like my job a great deal. I keep doing this line of work because I like engineering, problem solving by whatever means, improving the engineering culture, and helping people. You could have this too if that's what you want - don't let your own barriers and conditions prevent it.

Can't help you with compensation though - I definitely don't make a huge amount of money. Doesn't really bother me.


Why not contracting/consulting? Or starting your own startup/project? You can focus on the tech and role you want, have minimal meetings, avoid office politics, work the way you want, and define your own path. I understand salaried positions have distinct pros though.


Contracting dials engineering work all the way up on some things but all the way down on others. You’re basically a hired gun. If you consider building software a creative pursuit you want to be connected to personally, and working on teams to be at least partially about teamwork and camaraderie, you lose most of these kinds of dynamics being a full time contractor. It was a surprising moment for me when I did this for the first time when on launch day my boss gave me zero credit for the work and showered public praise on my employee peers. Of course, I was paid well, but part of the cost of being paid so well is being seen, by nearly everyone, more as an expensive machine that writes code than a team mate.


> If you consider building software a creative pursuit you want to be connected to personally

You mean you think this isn't possible while contracting?

> my boss gave me zero credit for the work

> being seen, by nearly everyone, more as an expensive machine that writes code than a team mate.

It really depends where you work and who your client/boss is I think, the same as if you're an employee. I've had contracts where they want you to be part of the team and others where you're kept outside too.


That’s helpful to understand. I’ve done a few contract jobs and they all had the characteristic of the feeling outlined in my post.


You should try asking before you start about what your relationship will be with the team and mention what would make you more happy. I'm sure most people you'd want to work with will be empathic about it and your ability to negotiate here is really different to working in a company.

Were you working in a big team of mostly developers all working on the same code?

In combination with the personalities of the people you're working with, there's lots of different scenarios like being in your own isolated project so you don't need to talk to the dev team, or you're working directly with the founder, or you're the only developer on a team of graphic designers, or you're working with an agency that wants to hide you from the real client etc. I've been in lots of different scenarios where I've celebrated at launch with the client/team, made friends on the way and felt good that I've contributed something meaningful.


I’m in a similar boat albeit different age and life trajectory.

I think the easiest thing to do (if money isn’t #1 priority) is joining a startup. Gives you the most breadth and ability to impact and learn.


Creating your own consultancy is one way out of this. Hiring few junior devs and mentor them to become good at what they do is pretty rewarding both in revenue and your social impact.


Came here to say this.

You have the skills to consult. Pick an area that:

   * you feel is likely to grow
   * you like
   * you are good at
   * you feel is underserved
and start writing and speaking about that (even at a local meetup). After a month or two, reach out to former colleagues who might have the problem you want to solve and ask if they know anyone who does.

Hiring junior devs will give you the opportunity to mentor but may force you to wear your sales and/or PM hat more than you'd like. You can start down this path by subcontracting and see how it feels.


Try a consultancy. I work at one and there’s huge demand for senior engineers with workload that’s just what you’re after, as long as you have cloud experience. Pay is good too.


Can you please suggest few good consultancies?


Side question: How do you think your age of 40 plays into this? Is it about ageism? 40 is not... old?

And 18 years experience is a lot. Something wrong with the companies you interview for?


(Throwaway because this is pretty out there and not something I'd like associated with my professional identity)

What does a welder, carpenter, or plumber do when they've hit 35 and mostly mastered their field? Answer: come to terms with the fact that their mastery is not very much in demand, they will never make more (inflation-adjusted) than they do now, and either plan for retirement or find a new job (usually management or small business owner) where their hard-won skills are mostly wasted. It's not that there aren't super-hard welding jobs that only a master welder can do; it's that master welders outnumber those jobs by 1-2 orders of magnitude. Almost all of the welding can be accomplished by almost all of the welders; once you're good enough to do it, that's it, you're topped out.

But software is totally different from the trades, right? I don't think so. We imagine ourselves to be more like doctors and lawyers because we make six figures and have conferences and work sitting down. But I think that's an illusion; we're a trade, and the only reason 45-yo devs make more than 35-yo devs is because our field has been growing in size continually for its entire existence. 45-yo devs demand, and get, higher salaries and titles because the industry would rather pay them extra than make do without them. But, like welding, almost all of the software we need can be written by almost all of the developers. (If you think this is wrong, get your head out of FAANG/AI/ML land and think about the legions of programmers working at govt agencies and non-sw corporations. How many mortgage application portals have we as an industry produced so far? 10,000? 100,000? And yet, we keep remaking them every two years. That's not art and it's not science, that's a trade.)

Point is, software titles work the same as in other fields until you hit III, and from there they veer off in to crazytown where there are no rules, because no other trade needs to pay a 45 year old significantly more than a 35 year old. (And you've probably already noticed that even software tends to lose interest in people once they get past 50. If the size of our field ever stabilizes, that number will only get lower.)

So, there is no real answer to your question. Principle/Staff/Architect means different things at every company because every company is handling the "how do we keep this old-but-still-good programmer around" question differently. Some program a lot, others don't; some are tied to one team, others float; some mentor, some sit in an office and read research all day, some kind of fuck off and do nothing beyond attend meetings and dispensing wisdom. It's all over the map and there's not much you can do except apply for a bunch of high-paying jobs and ask a lot of questions during the interview.


This actually makes a lot of sense, I never thought about programming this way. Even doctors and lawyers have upper limit of what they can make as an individual contributors. Eventually they open their own practice and hire a team to go to next level.

I have a lot of super smart engineer friends who are frustrated that they probably will not make much more money than what they make now, inflation adjusted. A lot of them are trading or getting into real estate. I will share this analogy with them, perhaps they should be teaming up and starting their own consulting firms.


41?


What about stop being an employee and either be an individual contractor/consultant or start your own consultancy business?


Focus on understanding the financial aspects of the business you’re in, not just the ground under your feet.


Great question and discussion. I am 40+ and I feel like I am going in wrong direction. But I think it is getting a bit clearer on what I should do next.

Right now, I work for a failing old school tech giant. I am have comfortable position with very good wok life balance. It seems you can easily not do a thing at work. No one wants change. Most of the company is made up of middle managers and non-productive compliance approvers. Seems like a great place to work for unmotivated. I have my moments where I want to accept company’s culture and move into middle management. Just coast as much as I can. But then I get frustrated and feel like I did nothing all day and feel like parasite on society.

So I apply for other jobs, sometimes at other large tech companies but talking with their developers it seems they are not much different from my current company. Then I apply at startups but I got family and I will not work more then 40 hours a week. Then I apply at FAANG or FAANG wannabe companies and I can never pass Leetcode. Also I did spend a few hours studying for Leetcode but I have family, I am not going to take time away from them to study something useless.

And yes my family, I love them but things are not exactly how I imagined they would be. I would love to live near beach and have more outdoors life. My goals were live modestly, retire early, read more, watch less TV/web. But my wife don’t want to make any big moves. She wants to live in suburbia, have a big house, vacations instead of live on the beach, etc.

When I turned 40, I seriously started to think how I can have more fulfilling life. It was either have more fulfilling personal life or more fulfilling work. I cannot change my family, so only option is to change work. So I am on quest to find more fulfilling work. Not more money but higher paycheck would be nice. I would retire once we have 3M in 401K.

For work, I enjoy working on interesting programming challenges but not so much that you find in typical large corps. Also programming is fun when working on my projects but not so much when working on other’s projects.

So after reading so many comments here, I think I want to transition to freelancing and consulting. Yes that means constantly interviewing and looking for next project. But I might be able to work on more interesting projects, control what I work on, avoid office politics, and take 3 months vacation whenever I want. Also it seems this may pay pretty well especially if I niche down.

The other thing is programming while enjoyable is still not as much as fun as my hobbies or when I had some. After thinking more about what I can do with my kids, I am looking into photography as a second income source. Photography is a hard field to make money in. But it is funner and it maybe more fulfilling than programming. I am building my photography portfolio (Instagram) and hopefully one day actually charge people for it.

I think combination of portrait photography and programming gigs should cover middle class lifestyle in suburbia, and give me more fulfilling life.

Again I don’t know if it is a good plan or even if I will be able to quit my job.


All ego aside, I probably AM one of those "Principal Engineers who are really more Senior++". I reached my plateau somewhere between 35 and 40, and now that I'm in my mid-40's it looks like more of the same between here and retirement.

However, most of these "ageism" or "life is over after 35" things are absurdly doom and gloom. So I'd like to offer a different perspective that may be helpful to younger folks.

Hitting a plateau in your mid-40's is not... that... bad! First and foremost, I have two children in middle of their formative years, and that's where my focus primarily lies today. Maintaining a healthy marriage with my spouse, and avoiding the mistakes of my dysfunctional boomer parents. On evenings where my son has hockey practice and my daughter has dance, and so me and my wife have to work together to get them both to their respective things, I am simply NOT going to bail and make my wife have to choose between them because something came up, or I'm having to work the same hours as the VP's and C-levels in order to fit in. I have finally achieved that mythical "work-life balance", and I enjoy it.

Secondly, even if you lack the clout to DECLARE what a company's tech stack is going to be, you can still find yourself learning new tech stacks every few years. I spent the first 15-20 years of my career in Java shops, and felt like I had no agency in the matter. That's just what I happened to stumble into as an entry-level dev out of college, and from there no one would hire me for anything else. But awhile back I was playing with .NET Core, and thought, "I'd like to work with this". So I just went and found a job doing C#. It was easy to find, and I was making slightly more money as a C# newbie than I was as a Java veteran. This past year I decided that I wanted more exposure to data science and machine learning. So now I'm in a Python shop for the first time in my career, and I'm charged with giving direction and mentorship to younger developers who quite frankly are much more knowledgeable about Python. All of these things are exciting, and keep me fresh and on my toes and engaged with the field.

In a lot of discussion threads, where people bemoan that they've reached their 40's and "can't find a job anymore", I have to assume the issue is that they keep looking for substantial promotions or raises over their previous jobs, and are simply in denial about having reached a plateau (or if they haven't been willing to continuously learn new tech, may be in decline). Yes, most companies are NOT being realistic when they talk about having "parallel career tracks for managers and IC's". Rarely does the title "Principal Engineer" REALLY put you on-par with a Director or VP. It is what it is. Management will always be what people "advance" into, and individual contributor roles will always be for those "who did not advance". At some point in your career, you will likely have to make your peace with that, because there simply aren't enough TRUE "Principal" jobs (as described in the original post) for more than 1 out of 10 of us to reach.

But I really don't think that "Senior++" is such a bad fate. I'm in the top 5% of U.S. household incomes, I have wonderful work-life balance, and I enjoy my work and feel like I am continuously growing. At some point, you need to take... the... win, and stop trying to convince yourself or let unrealistic social media convince you that you're a loser.


I'm in my mid-30s. And your advice is really what I've come to realize. When I took my last promotion into engineering management, I had ambitions to become the next CTO in this company. But having been in the job for a couple of years, I have come to realize that the CTO role in this specific company would take me into more of the things I enjoy less in my current role.

At the same time, my current role has a neat balance of technical and softer aspects. So why chase the "career" if I'm already in a good place. Focusing on my family and out of work priorities just makes so much more sense.

It's probably the first time, I've rejected a path to a promotion.


What kind of company expects a Senior Engineer to have 20+ years expeerience?? you must work for some corporation or large company.

In startups and tech-focused companies seniority comes with skills, not years on the job.


> my borders and carrier are defined by Engineer Managers, who are usually less experienced in engineering and leadership topics than I am.

Why is reporting to someone less experienced than you undesirable?


The power inversion doesn't work out. They wield the power but you wield the knowledge and experience. It’s a constant battle trying to get them to take you seriously. You might as well just do it yourself. Instead, report to a VP or director. They may not listen all the time but that’s their domain. And because you report that way, the other managers are more likely to listen because you are on the same tier. Plus you get a hard separation so the inexperienced managers don’t boss you around and you can work on work on what you need to. Some dorectors like having an engineer or 5 in the pocket. It doesn’t always work this way but that’s my general impression.


When senior engineers adopt this attitude, they are implicitly supporting aegism. Younger engineering managers are forced into a position where they have to pass on resumes of older engineers. Damned if they do, damned if they don't!


Only if the young manager is planning on resisting all the advice shared by the more experienced engineer.


No. That is not how I read this thread. My understanding is that the _possibility_ of the young manager rejecting advice is enough for older engineers to not consider positions reporting to those managers.


I don’t think I said possibility. And experience isn’t always correlated with age. I’ve seen older managers that just entered the industry after doing a python bootcamp, for instance. I wouldn't have any problem with a younger manager if they knew their craft, personally. Unfortunately too often I’ve seen companies pull in “managers” from unrelated fields and/or with little to no technical experience. Manager I/II equaling staff or senior engineer on the totem pole is what I’m calling out.


> I’ve seen older managers that just entered the industry after doing a python bootcamp, for instance.

> ...

> Unfortunately too often I’ve seen companies pull in “managers” from unrelated fields and/or with little to no technical experience.

I haven't seen either of these, so my comment was based on that. In my experience, first-line EMs are always senior engineers who choose to take the manager career track. In such firms, and only in such firms, I don't find anything wrong in Manager Is being equal to senior/staff engineers.

What I am calling out, if you can call it that, is that senior engineers refusing to report to anyone less than C-suite or VPs is doing the profession a disservice. People manager don't grow on trees - they have to grown and trained within the cohort of people practicing the profession. We need to collectively train these junior managers to be able to work with more senior engineers.

Senior engineers who don't want to take on people management duties will have to accept that there is a likelihood that they will eventually report to someone less experienced in some facets of the profession.

Insisting that the company find a people manager who is deemed worthwhile for you to report to is spreading the stereotype that senior engineers are difficult to manage, resulting in ageism in hiring.


Sure but we're talking about staff/principle engineer, not senior. Assuming there is a meaningful difference (which is not always the case) then it's a bit odd for principle engineer to report to senior engineer/manager-in-training, no?


I used the word "senior" to mean engineers who are more experienced - sorry, that was not clear.

> it's a bit odd for principle engineer to report to senior engineer/manager-in-training, no?

No. This is where, I think, we disagree.

In most startups, people report to a founder who is CEO-in-training. There are so many examples of these, that I assume that reasonable people don't find that odd. If that is the case, why should it be odd that a senior engineer reports to someone relatively early in their management role (but not new to technology profession)?


Are you interested in Meta / Facebook / WhatsApp? We have exactly the roles you are looking for.


Are you from a HR consultancy? (Your previous comments suggest that you're from Syapse)


I've also been frustrated by the inconsistency in the roles/expectation for a Staff+ engineer. At a previous employer, as I advanced up the ladder, management repeatedly changed and strongly committed to an org structure and processes which made it extremely difficult for an IC to have impact beyond a single team. By the end, I was a principal, but reported to a line manager, had zero access to the planning/prioritization/roadmapping beyond my immediate team, and was effectively just the sr engineer to whom they handed messy or complex projects. Le sigh.

I've come to the belief that in a broad range of circumstances, high level ICs aren't especially critical. There's quite a lot an engineering org can do with sharp senior engineers working on relatively autonomous teams overseen by a couple tiers of managers who may have little understanding of the technical domain. Adding some ICs who e.g. report to a VP and jump back and forth between areas can be seen to complicate processes, planning etc. We want technical impact above the level of a single team, which often means cross-cutting concerns or improvements which pass through several systems. But in many cases, even without a technical IC who has a technical view of the larger picture, narrowly-scoped teams can still come to a decent if sometimes convoluted local optima.

My conclusion is if you like building stuff, but you get bored of building the same stuff, and you don't want to people-manage, there are basically three options:

- pursue a staff+ role at a large organization which can't afford not to have those engineers contributing at a higher level. If not FAANG, now there is a tier of slightly smaller public or late-stage private companies who can't avoid having high-level technical experts -- but competition is pretty fierce

- some form of consulting which allows one to move between technical projects

- keep changing fields to do sr level engineering in an unfamiliar area

- retire early, and putter on open source

This year I moved from a principal role to a staff role which lets me explore some areas of technical interest which weren't used at my previous company. If staff doesn't let me have sufficiently broad impact, at least I get to explore a new technical area. And perhaps it will be my last job.

_But_, an option which I haven't really seen, but which I must exist out there somewhere, and would love to hear about is if there are some niche companies that actually appropriately value engineers with many years of experience. If one believes that these experiences let us anticipate upcoming issues, design better solutions, pick up new tools and frameworks faster etc, and requires less from people managers, then shouldn't there be room for a company which disproportionately hires very experienced engineers, compensates them appropriately, and produces better/faster/lighter solutions?


im 35 and come from china,working at tencent company.now i have a three room house,and 3 years old child。 im saving almost $100K every year.plan to retire in 45.good luck to me!


If you wan't impact and creativity go into crypto.


I turned 40 recently and have gone the route of very flexible employment (~16 hrs per week remote) at Sr software engineer salary. This gives me the freedom to do basically anything I want for more than half the day with very low stress. For the past decade nobody at my several places of employment has had reason to know how few hours I work because I’m always the top performer.

I’m intending now to build software outside of the day job until I’m bootstrapped into doing that full time. I feel this is a setup which absorbs risk while giving both future opportunity and a high quality of life in the meanwhile.

I’m tempted at times to go for some super high paid position which I’m very qualified for, but it always comes back to a preference for near total freedom to live my life.


This reminds me of a slide I saw at some talk. It was presented as a totem pole, and your goal is to move up on the pole. It was called the "TKVP Totem Pole", from bottom to top:

Vision

Product

Knowledge

Time

What do you get paid for on this stack? IF you are selling your time by the hour (and billing honestly) you are at the bottom of the pole -- T.

The next step up is to be paid more for your knowledge (wisdom, expertise) than for your time.

P is for product: at this point, we are talking about a startup, rather than a role at a company. At the base of things, most viable startups grow out of the experience of spending time and applying knowledge to customer's problems. When you find yourself (say as a consultant, or even job-hopping every 1.5 years) solving the same puzzles again and again, you might start to think about automating, consolidating, productizing these patterns and selling them to customers as a product or service. Even an IC at a FAANG can do this by, for example, convincing their manager to open-source useful utilities. Guess what -- now you can re-use that code at your next job!

At the top of the totem pole is Vision. That is where (as a startup founder) you sell the vision of what your product/service could become, if you had some rocket fuel in the form of capital and networking support.

Of course this climb is not for everyone to take solo. As a talented IC, you may decide that instead of the safety of a FAANG job, you might consider throwing your chips in with a startup that has ascended this ladder to somewhere between P and V. Just make sure you get an equity package that fairly compensates you for the career risk you are taking.


That's an interesting perspective but I suspect it fits reality better if the P and V levels are in moonshot startup territory. If you have the skills and knowledge to be successful at those levels, your product/vision is something good, but you're operating in a smaller market without huge amounts of investment funding, you might still make more money and sometimes exert more influence being at level K but working with clients who are already established in larger markets and in need of wiser and more knowledgeable input to grow further. Think of a rapid growth scale-up where most of the technical staff are relatively inexperienced or a multinational spinning up a new division that wants to build a solid foundation for its next big thing. The right technical advice and strategic leadership can be worth a fortune in that kind of environment.


I read this comment a few days ago, and it really stuck with me. I'm so curious where this comes from - would you happen to remember the talk, or where I could read about this concept?


tbh, I made it up. Thought it would sound more authoritative if credited to an anonymous source.

Someday I may try to publish something about the idea. Feel free to spread it around.


Ha! For what it's worth, as an internet stranger, I would have been just as likely to read if you simply said "I have this theory" and laid out the same thing. Either way, thanks for sharing, and let me know if you publish anything about this!


I was going to write a top-level comment, but yours hit the nail on the head. For me, the biggest change after hitting 40 is that I can establish boundaries now.

I'm currently at 30 hours per week, 3 days in office and 1-2 at home. We hear a lot about F-U money, but not an F-U approach to making it happen. I feel that reclaiming 1 day per week for our personal development projects in one of the first pillars of F-U money. I'm only working now so that eventually I won't have to work for money, so that I can begin the real work of building an automated solarpunk future.

I spent most of my 20s and 30s practically killing myself for projects, either at work or independently. When I hit 40, my health crashed and I went through the worst burnout of my life for the year of 2019, before COVID-19 in 2020. It felt like the part of my brain that handles problem solving and decision making died. So I lost almost all executive function and could barely get out of bed. I had to relearn how to make todo lists and strategize, and rebuild my resilience.

Turns out that I had developed food sensitivities to the staples I had been eating, specifically Mexican food (my favorite) and dairy. When the immune system becomes sensitized to certain foods, it disrupts serotonin, which can lead to depression. Diets high in legumes and nightshades, without supplementation (B vitamins, minerals, fiber, probiotics, yogurt, etc), are higher risk because of how the anti-nutrients in them bind to the vitamins and minerals we need. I think this is where the stigma around vegetarianism and veganism comes from, but I digress.

Anyway, I discovered ADHD and autism TikTok and went through a healing and growth process the last 2-3 years, like a lot of you I imagine. Which mostly involves shadow work and addressing the low hanging fruit like diet, meditation, inner monologue, etc.

Now I see the healing and growth that the world needs to do, which it has not done, because powerful forces work tirelessly to prevent it and maintain the status quo.

My point with all of this is, there can be anxiety with breaking the 40 barrier. I think it's helpful to flip the mindset from "I'm anxious about this" to "I'm excited about this". The body and mind can't tell the difference, because they are strongly rooted in this reality. But our higher selves can observe and nurture, transmuting negative energy into positive energy over time.

I've found that after 40, I have much deeper wells of assistive energy and empathy. I've come to understand that we're all one. So now I see zero-sum games and people scrambling for a piece of the pie, which is mostly a waste of time and even kind of embarrassing to witness in these times. Better to think more broadly. Not so much "how will I make it through this", but more "what can I do to help" and start there.


> Diets high in legumes and nightshades, without supplementation (B vitamins, minerals, fiber, probiotics, yogurt, etc), are higher risk because of how the anti-nutrients in them bind to the vitamins and minerals we need.

Half doubting, half curious: do you have more information on this?


I had once an iron deficiency, so I looked into how to improve my iron intake. Soaking legumes in water overnight reduces the amount of phytic acid and therefore increases the availability of minerals. This article gives a good overview: https://www.healthline.com/nutrition/how-to-reduce-antinutri...


Going through the same stuff (31 now), I felt a lot of comfort in reading your post. Thank you.


solar punk is a new term for me, I should have intuited it but yeah. Good stuff.


How do you get away with working so little? You don't have meetings? Or people pinging you during the day?


1) Finish your work 2) get a job that doesn’t require tons of meetings 3) use slack on your phone

If you meet these requirements you can cut out all the bullshit from your day and just focus on the meaty part that you actually get paid for.


Be careful about doing personal work in those extra hours though. Personally I wouldn't risk it.

As an alternative, I know some companies will let you voluntarily cut down your hours in exchange for a pay cut. With tech salaries being what they are, you could make a comfortable living while only working half-time in many cases. And that way you don't have to worry about what legally counts as "on company time".


There is some risk there, although California has pretty favorable laws to protect you. I wouldn’t work on any project which is even tangentially related to the day job or touch any company resources while working on side projects. I’d also never sacrifice my performance at the W-2 for side work. They get absolute priority.

Work in good faith and read up on your rights, but yea even with all that you could unwittingly get yourself in some form of trouble. I’ve weighed the risks and feel comfortable but YMMV.


Varies widely by state; in Texas I had to fight and turn down offers to even get a contract that would give me full rights to the stuff outside of work-hours. So I'm not going to toe that line.


In your shoes I’d be working remotely for a California company from Texas because the labor laws from California will apply to you. It’s not a choice for me, but I’d love that.


Do you have a reference for this? Not that i don't believe you, but I recently moved away from California to my home state and I would love to know if this applies to my situation.


enforcing even a basic non-compete in Texas is roughly impossible unless you steal existing clients or IP.


As a remote worker they have zero way of knowing what I’m doing when I’m not working.

Doesn’t even matter anyway, I’m no longer at an age where I fantasize about making big money from building pointless side projects. It’s kind of juvenile to think these sort of half-serious side hustles will ever be anything more than a waste of time in the long run. I’m content with drawing a big six-figure tech salary with as little effort as possible and funneling cash into my growing portfolio of investments, which is what will actually make me richer without going through the bullshit of starting a company and providing customer support. Reading up on companies and analyzing which ones will be the best investments is actually something I enjoy doing.


I'd like to hear more about people who have officially cut down their hours for pay cut at what sorts of companies, and how they negotiated it!


I work Mon-Wed at 60% pay. I built some key infrastructure for the organization I work for, which gives me some leverage. I basically just told them this is how I want things from now on and that was ok. I’m not at MAANG level compensation though (more like European public sector).


Extremely strict time management and focus. If I go upstairs to put in a load of laundry, that’s a 5 minute time slot I put back into my work time slots. The vast majority of people are very inefficient with time management, spend tons of time bike shedding, etc.


I usually have a minimum of 15-20 hours a week JUST with meetings. And I can't just tell people I refuse to go to these. And then I also have my own tasks to do.

I really have no clue how many people I see claim working 15 hrs total a week when that's already the absolute bare minimum for me.


I'm at Staff level and work about this much. Pay is great too! I'm just so freaking bored. Bootstrapping something on my own sounds good actually, maybe I should try that.


Are you saying your employer is not aware you work 16 hours a week?


I've done this for most of my career. Put in between 5-35 hours a week depending on what came up and still achieved "top performer". I also like the time and freedom. I think it would be hard to do this at a FAANG.


They typically don’t know what I eat for breakfast either, because it hasn’t ever been relevant to the job.


Totally off topic -- but why does HN render the text of these "HN Questions" with such a light font? It looks like they've been downvoted 10 times, or something. It makes it hard to read, and I can't understand the reason for it.


Hmm, I had assumed that they were all getting downvoted!


submissions can't be downvoted.


Good to know. Unfortunately, since comment upvotes and downvotes are restricted features until you reach a certain level, but one's comments will probably be up/downvoted before getting there, a logical, if wrong, conclusion is that there IS a submission downvote feature, but one just can't see it yet.


I'd like to know this too. My brain constantly registers it as (incorrectly) being as a result of having been downvoted.


AFAIK: To discourage use of them, since HN wants the focus to be on link submissions.


If they are discouraged, why do they have their own entry in the header[1]? I always thought the light text was just to separate them visually from the comments.

[1] https://news.ycombinator.com/ask


Right -- what a good observation. @dang -- any opinion?


"@dang" doesn't seem to work. You're best off email hn@ycombinator.com to get their attention


There seems to be a few other undocumented features like these in HN. Or maybe they are documented somewhere and I dunno :)


I'm not sure this is correct. The Ask HN posts that get voted up are usually high quality.


Text-only posts are down-weighted by whatever ranking algorithm HN uses, so only the high-quality ones will rise to the top (usually).


Great response, thanks! I like the HN questions -- but I understand maybe that's not their thing. :)


The variety of Ask HN is a positive feature this community has over a pure aggregator, IMO.


I think its because the user is newly created (i.e., green username).


[flagged]


This is the least useful answer I can imagine anyone giving to the original question.


50




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

Search: