I find embedded really rewarding. A 20 year old embedded-C code base generally follows the same design patterns and coding conventions and styles that you'd use today, and don't feel "old" or like they need to be rewritten. A 7 year old JS code base, on the other hand, is largely outdated, and may be written in a nearly extinct framework by the time it is your turn to maintain it. If you get tired of giving up time on the weekends so you can learn a new framework, consider hopping over!
I'm exaggerating a little, but more power to those of you who suffer through it!
Typically the real time space is very conservative on what types of changes are implemented, and that's largely because a lot of rt software exists on safety critical systems that need to be supported for decades.
Ferrous Systems is making some good progress to make certification of Rust happen, through ferrocene[0] and other initiatives, but it will take time.
The only company I know using Rust in a sort-of embedded way is SoloKeys[1], using Rust to write the firmware of a hardware authentication token (similar to a yubikey).
Several automotive companies have been hiring for Rust, though what exactly they’re using it for isn’t as well known publicly yet.
There have been a few aerospace projects. And at least one train project, IIRC?
Its pretty great to be honest, I think I would have a hard time going back to C/++
In that kind of situation, you usually own the whole device. You don't have to worry about being removed from memory because the user wanted to run some hotel's booking app or whatever - the user doesn't have the option of doing that.
You may have some additional hooks that give you some control of whatever custom hardware that comes with the device. You may or may not have to drop down into native code to access those hooks.
You can't develop against a standard phone or tablet. You have to have your hardware to develop against.
So, yeah. It's the same... but it's different.