Hacker News new | ask | show | jobs
by xqb64 145 days ago
I'm literally considering a career switch from software engineering to electrical engineering and electronics, and naturally going back to school, because the AI and the way it's used in writing software has sucked out all the meaning in it for me.
6 comments

Absolutely the same boat here as well sadly. As I sit here reviewing another PR with

    // do the thing
    doThing()
dotted everywhere, I am very much over it.
Meaningful or not, that's a lot of work and money for a pay cut, fewer options, and worse job prospects [0].

[0] Most of the new EE Grads I see go into software engineering.

That's me! I found I was treated much better in software, the timelines were much more reasonable and your input was valued. When doing firmware, typically everyone's timelines would slip but the delivery date wouldn't which meant your time with a fully functional device (if you even get one at all) would reduce. Half the time you're developing on a half-broken version of the real device
I mean, it's not like I'm going to forget how to write code any time soon. I'm currently recovering from the n-th tough burnout, and I feel like I need a shift toward something new and meaningful. When it comes to job opportunities, from my perspective, knowing the entire stack (not in the webdev sense, but rather both hardware and software) makes you highly attractive on the market, in both worlds. So, while I genuinely can't predict what I'll end up doing 5 years from now, I do feel like it's time to familiarize myself with the other side of the entire stack.
That's one possible way to look at it. The other, perhaps more positive way to look at it, is that similar to autocomplete, AI-assisted tools have made the boring parts less boring and left more space for the interesting bits. I use them every now and then for chores and such which I would put off otherwise, but there is certainly no shortage of interesting problems that they can't tackle. Now I just have more time to focus on those.
I'll admit that I'd used github copilot while I worked on one of my projects, and I couldn't help it but notice a rather significant cognitive decline whenever I set out to take over and start hammering out the code myself. I just can't allow cognitive declines.
I'm in the same boat, I'm hoping firmware / embedded might be better in this regard due to the inherit constraints. If not then EE is probably the only other option. Anyone else have thoughts on this? I'm craving a more civil engineering approach to rigor rather than the mess of modern software. Perhaps that means software just isn't for me.
I'm definitely wanting to do something with more of a civil engineering approach to rigour. More and more I think software is full of children who don't care and don't know the meaning of responsibility.
Maybe formal methods have a chance of becoming mainstream now [1]?

This would increase the rigor of software engineering and put it on par with civil engineering.

Some niches like real-time embedded systems are already pretty much the same.

[1] https://martin.kleppmann.com/2025/12/08/ai-formal-verificati...

I doubt it, I feel like it might improve shops that already care and are already creating with rigor. I don't think it'll raise the bar for the avg shop. However, perhaps that's just be being cynical. By real time embedded is the same do you mean the same in the sense that they are just as poor in quality?
> [...] the same in the sense that they are just as poor in quality?

I mean some real-time software for critical embedded systems has an incredible level of rigor, making heavy use of static analysis, model checking, and theorem proving.

Noted, perhaps I'll investigate as a possible next career step. Thanks!
I think the last thing this world needs is programmers bringing their particular style of “””engineering””” to important things like bridges. Can’t wait to hear about the 5-9s of uptime on the Golden Gate.
...why do you think this comment is warranted?
Because programmers probably think it'll be a similar field, but it's different. It has correct and incorrect ways of doing things, strongly enforced. You're not inventing new shit, you're reapplying old shit constantly. Old shit that works.

Many think writing software is engineering, but it couldn't be further from the truth.

edit: to clarify, trying to get people to realize the grass isn't always greener, and both sides are better off for it.

How many programmers-turned-X do you have experience with?
Billions
No response, so I assume this brain dead comment is a China bot.
I think you're missing the point of my comment.

Your comment feels unwarranted because other engineering professions have guardrails, because they recognize that people will die if they don't. Your comment is implying that a software engineer can simply apply their existing (lack of) guardrails when that's probably not the case.

No, my comment is implying that if you enjoy the relative freedom of writing software in new and interesting and novel ways, you probably will not enjoy copy-pasting buildings or bridges or whatever again and again and again.

People can easily die due to software, and there are still few (any?) regulations in almost every single industry, plus no way to assign accountability. If a bridge collapses, it's pretty simple to figure out whose fault it is.

Yeah I'm the same, I enjoy thinking of a system of things, doing it, not typing a couple of commands and a bunch of code is generated. It's not the rote process but feeling like I worked for it/doing it. Similar argument is "why buy milk" you can get a cow, milk it yourself, kind of thing. Which I see that, some people don't care what the code looks like, does it work.
Any sufficiently interesting project won't be generated with a couple of commands though: you can still think about systems, about the _right_ way to do something. Then you can document your understanding and hand it to Claude Code to do the fiddly bits which you _could_ do, but they're not as interesting. You're already using a higher level language and leaving implementation details to the compiler: this is another step up.
What about code verbosity and vulnerabilities, I guess make smaller change sets.

Still I do like the process of typing things out, vs being like a checker of check boxes, looks good check, looks good check, kind of deal.

I don't mean typing as in typing a story but feel that I'm actively building it.

What's bad is I'm not 100% into it, I work in this field but I'm also skeptical of it at the same time. I'm not like "hell yeah Agents!" But also I work with them and it's the current hotness for high paying jobs.

Tangent: reality perception is funny, like why hike, you could just watch someone else hike... I think jewelry is worthless (waste of money to buy) but others don't that kind of thing.
Generative AI didn't need to come into existence in order for the proliferation of utterly mind-numbing devops slop that already dominated modern development to suck all the fun out of computers that were originally intended to solve problems for humans.

That's the difference between the original "free software" community and the "open source" one to me, including its modern incarnation on GitHub: the former produces a collaborative effort to develop a UNIX replacement/alternative and a thriving ecosystem around free software desktop environments with apps intended for humans to do their personal computing. The latter gets you Apache Kafka.