I remember my Apple II days (different platform, similarly constrained environment) where every game had a hard real-time multitasking core under all the code. In the Apple II it was particularly critical, because you didn't have programmable sound generators - you had to programmatically change the voltage of the speaker. If you were really crazy, you could do PWM and expect the electronics of the board would coerce your output square wave into something pleasant.
It never worked well, but it was still super cool.
The only thing I can see that acts as a bulwark is liability, bascially. The FW work I was doing requires a human and a large amount of careful review before acceptance. The "throw slop at the wall" that my current job is okay with won't fly there.
But there's _lots_ of FW jobs in consumer gear that is already filled with god awful slop, so maybe it won't take as long as I think.
For personal stuff? Sure.
But I certainly get why people get burned out on corporate programming. It's either tedious busywork following orders designed by architects whose last time writing code was 30 years ago and they never learned anything ever since, waterfall with glaring issues that the lowest rungs are supposed to magically make go away because upper management doesn't want to reset like they're supposed to, or it's "agile" in its various abominations. There's barely any time, budget or possibility left for actually experimenting a bit or for actually crafting out stuff that works. It's all output, output, output, and being micromanaged by Jira or whatever only adds to the dissatisfaction.
Personally, I left the field for good - I'm heading towards electrical engineering. Good luck coding a robot pulling physical wires.
Electricians might be temporarily safe from AI but EEs are knowledge workers too.
"This is wrong, fix it" + recompile, can happen twenty times in ten minutes, but "we discovered the layout is wrong, fix it" is precluded by the cost and time of a new board spin.
AI + text (code) seems like a good match but (E)CAD seems a lot harder to interface AI with. If I'm wrong, I'd like to share that with the EEs on my team, though.