This is an interesting thread, but my advice is to never take comments on the internet as any sort of representative sample. It is unlikely someone happy with their job would comment on a thread about quitting, because it makes for a boring addition to the thread.
I sometimes wonder what my work life would be like if I switched back to mechanical engineering, but I'm very happy working purely in software. Engineering requires a ton of capital and fairly large teams to do cool things. With software, a single person or a small team on a shoestring budget can build pretty neat things. I also work 100% remote, which I'm not sure would be possible with a mech eng job.
I do wish I spent more time in the machine shop at school though. Many of my neighbors in my HOA are either "real engineers" or retired blue collar workers, and they can fix things much better than I can. I can help reset their router though! :)
Programming can be great, fun, challenging and profitable, but it can also be tedious, boring, demoralizing and hours can be miserable. It all depends on the company and the project you're working on.
I agree with most of the haters in this thread yet I wouldn't trade it for another kind of job :-)
> I just find aerospace boring, unimaginative, stressful and low paying,
Could you expand on that a bit? To an outsider aerospace sounds much cooler than making web widgets with questionable purpose...
Today, that is almost completely gone. Now it's Business has been forced to design a system for you that doesn't make a whole lot of sense and a bunch of stuff wasn't considered. If you push back, you'll get dragged into endless meetings where you try to explain things to people who have zero training on what you are explaining. You'll get pushback because their egos will get involved and eventually overruled on most of it. After that, you will get a week to work on a sliver on it, then next week you'll work on a different sliver but often whatever business decides, not what makes sense. You'll also get a bunch of processes to weigh you down because they hired a bunch of goobers cheap that keep breaking stuff. When this doesn't work, it will be your fault.
As with any "mental" job, I find I work best when I balance it with a "physical" job on the evenings / weekends, such as renovating my house or basically doing anything with my hands. When physical jobs were my paycheque, all I wanted to do were mental things in the down time, now its flipped. Neither is necessarily better or worse, though I do enjoy the flexibility that software allows / requires.
This means that you should clarify better what do you want in a software job. Besides working from home, what do you want? Relax workflow? Adrenaline rushes from doing fixes in live/production systems? Do you know work on technical or business features? Does the tech matter (new/legacy) for you? Do you enjoy mastering a tech or just make software work? How much payment is worth a worse job?
My suggestion is that you write down what's your ideal software job and review it several times. Then it's a "simple" tasks of reaching for it and keep your expectations in check.
Once you train your ears and learn scales suddenly you start to hear music in terms of theory.
Do this long enough to become “senior” and suddenly a whole class of music is boring - like glue-code.
You need to find outlets for your experience and not just maintain open source projects - which are highly valuable but a huge pain in the ass.
No, it's not. But finding an interesting project to work on can be difficult.
You can somewhat get around that if you work mostly on back-end stuff. For the front-end, things might change once wasm becomes more viable.