Majority of ppl here are after electrical eng.
Cs seems to be easy in compare
Majority of ppl here are after electrical eng.
Cs seems to be easy in compare
In CS, you may have spent thousands or tens of thousands of hours across many years learning and growing, and still being limited in your understanding of the field as a whole. It's daunting to explore other related fields just to find out that they each have similar levels of complexity, filled with professionals who've sunk similar levels of effort, time, and years of their life into their work (who are often equally struck by the complexity of your field.)
Other times it has more to do with the particular brand of, ahem, fertilizer, they use.
Sometimes it really is greener and your side is shit and it's time to make a change.
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.
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/++
Is what?!
it's barely even engineering
Typically softeng roles require a degree in CS or equivalent, and many years of experience on top of that.
Then again, in some other companies "senior engineer" is somebody who did a 3-months bootcamp and 3 years of work. It's very unfortunate.
Ppl who I worked with went into more web like jobs after semico
But later I'd want to work as compiler engineer
Also, the mistake I made when I went to grad school: Semiconductors seemed to be a "new" field compared to the rest of EE. One of my undergrad professors said "They still haven't figured out what a standard textbook should contain."
In reality, from a research standpoint, it's a very mature field. Don't expect low hanging fruit. If you're going to focus on theory, expect it'll take a number of years of dedicated study before you get to the frontier. You'll need to know quantum mechanics and statistical mechanics, and some electromagnetics, just to begin studying semiconductor theory. Then a whole bunch of specialized solid state courses. Then you start studying the specific subtopics (reading key journal papers).
> But later I'd want to work as compiler engineer
Why are you wasting time with semiconductors...?
Because this company does both, so after I get bored with current role and prepare better, then i'll try to switch teams
I didnt and still do not see easier way for me to get into comps (i may be naive), especially that i dont know cpp yet, which seems like must have in compilers world unless you go to e.g msft
At least for the analog domain, Gray et al[1] has been the standard entry-level gateway drug for longer than I care to remember.
Semiconductor theory is more about the transistor and everything below it: Starting from quantum mechanics and statistical mechanics, derive the equations of electron/hole transport in a doped semiconductor, how the material's band structure impacts current flow, etc. The derivation of the transistor equations is often the end point.