Everyone working in the software industry needs to understand the basic principles of financial independence. At some point, you will either burn out or will get pushed out. This is a high-reward high-cost (in terms of mental strain) line of work.
Financial independence is what will enable you to walk away from a toxic situation. I suggest starting here: https://www.bogleheads.org/wiki/Getting_started
I thought about this but its all about balance, money spent in your 20s and 30s is more valuable than in your 40s. That doesn't mean don't save at all just be balanced with a slight tilt towards saving more.
Most of the people doing FIRE are not the types who spend money on expensive stuff. If they were, they’d be doing fat FIRE (uncommon). Most people doing FIRE do not have high standards of living. If they did, it’d run somewhat counter to FIRE. The people who can do fat fire are just lucky and got rich and should be ignored promptly.
There is also the problem that many bought real estate far before it was as fiendishly expensive as it is now, bought stocks and were part of companies during wild bull runs, and act like you can reproduce their success trivially. (You can’t)
Also, I think of spending in your youth as an investment in memories. What is the point of getting all your best trips in at 65 (just before dementia sets in) when you have at best 30 years to enjoy them. If you did the trips when you’re 30, you’d have decades more to enjoy them and could actually go on them. Living for when you’re senile is a scam.
Wow, how about finding something you enjoy / a team you enjoy working with and doing that instead? I mean 40 years is a long time, and what do you do then after? Nothing? Or browse HN all day? Or do a job that you enjoy?
I think you're kind of missing OP's point. No matter how enthusiastic you are at the beginning of your career, that field of things you enjoy and teams you enjoy working with is likely to narrow over time for a couple of reasons.
Everything's more fun when it's new and you're learning fast, but less and less seems new as you gain experience. A lot of "new" things are obviously reincarnations of things you learned long ago. Others just seem obviously stupid according to whatever biases you've accumulated (and we all do). Over time, you have to roam further and further afield to find anything truly new and not stupid. Sometimes that's so far afield that it's beyond anything that would have ever interested you even when young.
As for teams, well, some things are just pretty constant. What job is not going to have tedious planning sessions, testing woes, source-control and deployment drudgery? Only one where you're a prima donna pushing all of that onto other people, or one headed for disaster because you're all incompetent cowboys. If it was all fun and games, they wouldn't pay so much for people to do it, and liking your immediate team only gets you so far.
Neither burnout nor retirement is like a light switch, going instantly from love to hate of the entire profession. It's a gradual weakening of the attractions and strengthening of the discontents, until you reach a tipping point. It might seem sudden or unexpected, but quite often it really isn't. It's something people can plan for, and that many more should.
As for what to do after, why do you assume that not wanting this career any more means not wanting any career (or hobby) at all? Second careers are not uncommon, and often one of the things that's frustrating about "always on" tech work is being pulled away from something else one enjoys. "Software development or nothing" seems like a really bizarre dichotomy.
Thats exactly what I meant! I am in my 50s and I just retired after nearly 30 years in software development, much of it in cutting edge AI. As you say, after a while, you've seen everything and its not quite as interesting the second time around. I still enjoy coding and reading stuff, just not for a living. I get to do whatever I want which is a reward in of itself.
...my role is to be on the bottom of things. What I do takes long hours of studying and uninterruptible concentration. I try to learn certain areas of computer science exhaustively; then I try to digest that knowledge into a form that is accessible to people who don't have time for such study.