Embedded Systems & IoT
Program the chips inside everyday devices and connect them to the internet and AI.
Your progress
0/40
Tick items in Skills, Roadmap and Start today. Saved in this browser.
What is Embedded Systems & IoT?
Embedded engineers write software that runs directly on hardware — microcontrollers and processors inside phones, cars, medical devices, smart meters, wearables and factory machines. IoT (Internet of Things) engineers connect those devices to networks and the cloud so they can be monitored and controlled remotely. The field also includes chip design and verification (VLSI). A fast-growing area is edge AI: running machine-learning models directly on small devices for privacy, speed and low power.
Why it's trending now
- Global investment in semiconductors and electronics manufacturing (driven by AI chips, EVs and supply-chain diversification) increases demand for embedded and chip engineers.
- Edge AI lets devices run models locally — cameras, wearables and industrial sensors increasingly need engineers who can deploy ML on constrained hardware.
- BLS reports a 2025 US median of $161,740 for computer hardware engineers, one of the highest-paid engineering occupations, with 9% projected growth (2025–35).
- Bangladesh has a growing chip-design and electronics sector — semiconductor design-services firms in Dhaka and local electronics manufacturers — creating niche but well-paid opportunities, with IC Design Engineers among the higher Paylab salary bands.
Job roles
Common job titles you'll see in listings, and what each one actually does.
Embedded Software Engineer
Writes firmware in C/C++ for microcontrollers: drivers, real-time tasks, power management and communication protocols.
IoT Engineer
Builds connected-device systems: device firmware, wireless connectivity, cloud ingestion and dashboards.
Embedded Linux Engineer
Customises Linux for devices (Yocto, Buildroot), writes kernel drivers and manages updates.
ASIC / FPGA Design & Verification Engineer
Designs and verifies digital chips and FPGA logic using Verilog/SystemVerilog and UVM.
Edge AI Engineer
Optimises and deploys ML models on microcontrollers, NPUs and edge devices.
Firmware Test / Validation Engineer
Builds hardware-in-the-loop tests and validates devices against specifications and standards.
Skills from beginner to advanced
Tick skills as you learn them — your progress is saved in this browser.
1Beginner
Start here2Intermediate
Job-ready core3Advanced
Stand outMost-requested languages & tools
What employers mention most often in current job listings for this field.
Languages
Tools & platforms
C is required in almost every embedded listing; C++ and Python are close behind. Rust is appearing in security-sensitive firmware roles. Chip-design roles focus on SystemVerilog, UVM and EDA tools.
30/60/90-day roadmap
About 1–2 hours a day. Tick goals as you complete them.
Days 1–30
C and microcontrollers
Milestone: A sensor-reading device that logs data reliably using interrupts.
Days 31–60
Protocols, RTOS and connectivity
Milestone: A connected IoT device sending data to a live dashboard.
Days 61–90
Production-grade and edge AI
Milestone: A low-power IoT device with OTA updates and an on-device ML feature.
Free learning resources
All free to start. Some courses offer paid certificates — auditing is free.
- Embedded Systems — Shape the WorldUT Austin (edX) · Book · users.ece.utexas.eduFree e-book
- ESP-IDF Programming GuideEspressif · Docs · docs.espressif.com
- FreeRTOS documentationFreeRTOS · Docs · freertos.org
- Zephyr Project documentationLinux Foundation · Docs · docs.zephyrproject.org
- Interrupt blog (embedded best practices)Memfault · Guide · interrupt.memfault.comFree
- Edge Impulse documentationEdge Impulse · Docs · docs.edgeimpulse.comFree tier
- Arduino documentationArduino · Docs · docs.arduino.cc
- Nand2TetrisNisan & Schocken · Course · nand2tetris.orgFree
- HDLBits Verilog practiceHDLBits · Practice · hdlbits.01xz.netFree
- Bootlin embedded Linux training materialsBootlin · Course · bootlin.comFree slides & labs
Portfolio project ideas
Build these in order. Put each one on GitHub with a clear README and a short demo.
Smart room monitor
easyESP32 device that measures temperature, humidity and air quality and shows it on a small display and phone dashboard.
Bit-banged protocol driver
easyWrite your own I2C or SPI driver for a sensor in plain C and compare it to the hardware peripheral.
Irrigation controller with soil sensors
mediumLow-power LoRa or Wi-Fi nodes measure soil moisture and control a water pump, with alerts and scheduling — useful for small farms.
Smart energy meter with anomaly alerts
mediumMeasure household current/voltage, send data over MQTT, and detect unusual consumption in the cloud.
Edge-AI device with secure OTA
hardA battery-powered device that runs on-device keyword spotting or anomaly detection, supports signed OTA updates and secure boot, with documented power measurements.
10 interview questions
Try answering out loud first, then open the short model answer.
1What does the 'volatile' keyword do in C?
It tells the compiler a variable may change outside the program's control (hardware registers, ISRs), so it must not optimise away reads/writes.
2What is an interrupt and an ISR?
An interrupt is a hardware/software signal that pauses normal execution; the Interrupt Service Routine handles it. ISRs should be short and defer heavy work.
3I2C vs SPI vs UART?
UART is simple asynchronous point-to-point serial. I2C uses two wires and addresses for many devices at moderate speed. SPI uses more wires but is faster and full-duplex.
4What is an RTOS and when do you need one?
A real-time operating system schedules tasks with predictable timing. Use it when you have multiple concurrent tasks with deadlines; simple devices can use a super-loop.
5What is a race condition and how do you prevent it in firmware?
When shared data is accessed concurrently and the result depends on timing. Prevent it with critical sections, disabling interrupts briefly, mutexes or atomic operations.
6Stack vs heap in embedded systems?
The stack holds local variables and call frames; the heap holds dynamic allocations. Many embedded systems avoid heap allocation to prevent fragmentation and unpredictable timing.
7How do you reduce power consumption?
Use sleep modes, lower clock speeds, turn off unused peripherals, use interrupts instead of polling, and batch radio transmissions.
8What is a watchdog timer?
A hardware timer that resets the system if software stops 'kicking' it, recovering from hangs.
9How would you debug a device that randomly resets?
Check reset-cause registers, power supply stability, watchdog, stack overflow, hard-fault handlers and logs; reproduce under controlled conditions.
10What is MQTT?
A lightweight publish–subscribe messaging protocol for IoT. Devices publish to topics on a broker, and subscribers receive messages, with QoS levels for reliability.
Resume bullet templates
Replace the [brackets] with your real numbers. Quantified results stand out to recruiters.
Developed firmware in C for [MCU] handling [N] sensors over I2C/SPI with [X]% reduction in power consumption.
Built an IoT pipeline sending data from [N] devices via MQTT to [cloud platform], with real-time dashboards and alerts.
Implemented secure OTA firmware updates for [N] devices with zero bricked units across [N] releases.
Deployed an on-device ML model on [hardware] achieving [X]% accuracy at [Y] ms inference and [Z] mW.
Reduced field failures by [X]% through hardware-in-the-loop testing and watchdog/fault handling improvements.
Formula: action verb + what you built + tools + measurable result. Only claim numbers you can explain in an interview.
Salary & demand
Ranges vary by company, city, experience and negotiation. Always check the linked sources for the latest figures.
Bangladesh
Tk 14,743 – Tk 51,701
gross per month
Paylab Microcontroller Programmer range (10th–90th percentile, gross monthly). Chip-design roles are higher: IC Design Engineers are listed at BDT 22,595–85,704.
Demand
Moderate and specialised: electronics manufacturers, semiconductor design-services firms, telecom and IoT start-ups hire EEE/CSE graduates with strong C and hardware skills.
Remote (from Bangladesh)
$20,000 – $70,000
per year
Estimate. Hardware work is often on-site, but firmware, IoT cloud, FPGA verification and design-services contracts are frequently done remotely or via offshore design centres.
Demand
Moderate. Firmware and IoT-cloud contracts exist; chip verification is often done at offshore design centres.
Global benchmark
$161,740
US median, Computer Hardware Engineers (BLS, 2025)
Embedded software engineers may be classed as software developers ($134,040 combined median) or electrical engineers ($125,040). Projected growth: +9% (2025–35, much faster than average).
Demand
High. Semiconductor investment, EVs, medical devices and edge AI keep embedded engineers in demand.
How to read these numbers: Bangladesh ranges are Paylab's 10th–90th percentile gross monthly salaries (top product companies often pay more). Remote ranges are CareerPulse estimates informed by Arc's Bangladesh remote-developer data. Global figures are US medians from the Bureau of Labor Statistics (May 2025 data, 2025–35 projections) unless stated otherwise.
Start today checklist
Small, concrete actions you can finish today. Momentum beats perfect plans.