Which one do you prefer, embedded vs. application software development? Which one is in more demand? Do you have any tips for a future embedded software engineer?

I will keep it short. On the one hand you have an embedded controller running embedded software, some call it firmware, some embedded software. Lot of terminology which is not consistent. The embedded controller can be programmed with application specific code. Hence application firmware pertains to the code running on the controller. But usually, application software, aside from terminology, probably refers to the other side of the connection. The system with an embedded controller is connected (wireless or wired) to another side. Let’s assume a USB device which has an embedded controller and the host side could be a desktop PC. On the PC you will need hardware specific software, drivers for the lower layers (example physical layer). The useful data is extracted by the driver and handed over to a program, an application. It is a bit of a short simplified answer and my terminology probably is not equal to yours. But I tried to depict the places and types of code. Hope it helped.


Hardware and software advisor for tech startups. ASIC, FPGA, RPi, Arduino, AI, robots, drones, blockchain, Machine learning, vision processing, IoT and 3D printers are my fields of expertise.
Close Menu
%d bloggers like this: