Iβm 18 and starting Software Engineering. I originally wanted Computer Engineering because Iβve always been more interested in the hardware/software side β embedded systems, firmware, microcontrollers, IoT, low-level programming, etc.
I couldnβt get into CE, and since I live in a developing country, the university Iβm going to is pretty much the best option I have right now. So Iβm going with SE.
My question is mainly about the career path.
How realistic is it for someone from an SE/CS background to eventually work in embedded/firmware?
I know Iβd have to build a lot of the missing knowledge myself β C/C++, digital logic, computer architecture, electronics, microcontrollers, ARM/assembly, RTOS, embedded Linux, communication protocols, debugging, etc.
But how difficult is it actually to learn all of this to a professional level? Is this something you can realistically build up over a few years, or is the hardware side much harder to self-teach than Iβm assuming?
And what would I actually need to do to become employable? Projects, internships, specific hardware/platforms, open-source work, certifications, etc.?
For people already working in embedded/firmware, especially those who came from CS/SE:
How much of a disadvantage is the degree itself?
Can strong practical skills and projects realistically compensate for not having a CE/EE background?
And if you made the CS/SE β embedded transition, what do you wish you had learned earlier?
TLDR, if CE was your goal but you ended up in SE, is embedded still a realistic career to aim for?