Search topics...

All Topics

69 in-depth articles across 12 embedded systems domains, organized from foundational to advanced. Use the sidebar to jump to a category, or search to find a specific topic.

New here? Start with the foundations.

We recommend working through the 33 foundational topics first — they’re tested in nearly every embedded interview.

Start with C Foundations
foundational
intermediate
advanced
Start Here
Core skills tested in every embedded interview

Core C/C++ programming skills and low-level concepts essential for embedded developmentFoundation skills — always tested in interviews

C/C++ Programming & Low-Level Foundations
foundational

Data Types & Memory Layout

C data types, memory sections (.text, .data, .bss, stack, heap), storage duration, fixed-width integers, and memory-aware programming for embedded systems.

c
memory
data-types
stack
+1
Interview Weight: 5/10
C/C++ Programming & Low-Level Foundations
foundational

Pointers, Arrays & Pointer Arithmetic

Pointer fundamentals, pointer arithmetic, array decay, void pointers, and common interview traps — the building blocks of every embedded C program.

c
pointers
arrays
memory
Interview Weight: 5/10
C/C++ Programming & Low-Level Foundations
foundational

volatile and const

Master the volatile and const type qualifiers — what the compiler does differently, hardware register access, ISR-shared variables, const with pointers, volatile const for read-only hardware, and MISRA C implications.

c
volatile
const
hardware
+1
Interview Weight: 5/10
C/C++ Programming & Low-Level Foundations
foundational

C++ Classes & OOP for Embedded

C++ classes in embedded systems — encapsulating hardware registers, constructors/destructors for init/deinit, inheritance for device hierarchies, the cost of virtual functions and vtables in ROM, CRTP as a zero-cost polymorphism alternative, and when to prefer composition over inheritance.

c++
oop
classes
embedded
+1
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
foundational

Structs, Unions & Bitfields

Structure layout and padding, packed structs, unions for type punning and register overlays, bitfields for hardware register mapping, and portability pitfalls — all through the lens of embedded systems interviews.

c
structs
unions
bitfields
+1
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
intermediate

C++ Embedded Constraints & STL

Navigate C++ in resource-constrained embedded systems — disabled exceptions and RTTI, heap-free programming, safe STL subsets, compiler flags, C/C++ interop with extern C, and industry guidelines (MISRA C++, AUTOSAR C++14).

c++
embedded
constraints
stl
+2
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
intermediate

Embedded C Code Patterns

State machines, ring buffers, bit manipulation, error handling, memory-mapped I/O, volatile-safe patterns, and guard clauses -- the embedded C patterns interviewers expect you to write from memory.

c
patterns
state-machines
ring-buffers
+1
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
intermediate

Function Pointers & Callbacks

Function pointer syntax and typedef, callback patterns (event handlers, dispatch tables, state machines), qsort as a classic example, HAL abstraction via function pointers, vtable-style polymorphism in C, and safety considerations for embedded systems.

c
function-pointers
callbacks
dispatch-tables
+1
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
intermediate

Memory Alignment & Endianness

Memory alignment rules, struct padding and reordering, endianness (big vs little), network byte order, byte swapping, and portable serialization for cross-architecture embedded systems.

c
alignment
endianness
memory
+1
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
intermediate

RAII & Smart Pointers

Master RAII (Resource Acquisition Is Initialization) and smart pointers for embedded C++ — deterministic cleanup, lock guards, DMA buffer ownership, unique_ptr with custom deleters, and heap-free RAII patterns.

c++
raii
smart-pointers
resource-management
+1
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
intermediate

Templates & Constexpr

Zero-cost abstractions with C++ templates and constexpr — compile-time register maps, type-safe units, static polymorphism via CRTP, constexpr lookup tables, and managing template bloat on flash-constrained MCUs.

c++
templates
constexpr
metaprogramming
+1
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
intermediate

Inline Functions & Macros

#define macros (object-like, function-like, pitfalls), inline functions (type safety, debugging advantages), preprocessor directives (include guards, #pragma once, #ifdef), MISRA C guidelines, X-macros, and static inline for header-file functions.

c
macros
inline
preprocessor
+1
Interview Weight: 3/10

Compilation pipeline, toolchains, linker scripts, memory layout, and binary inspectionCore toolchain knowledge — frequently tested across embedded roles

CPU fundamentals, MCU cores, boot process, interrupts, and driver designCore embedded skills — essential for all roles

Peripherals

10 topics

Essential peripheral interfaces and communication protocolsCore peripheral knowledge — frequently tested

Peripherals
foundational

GPIO

GPIO (General Purpose Input/Output) fundamentals including pin modes, push-pull vs open-drain, pull-up/pull-down resistors, interrupts, debouncing, and atomic port operations for embedded systems.

peripherals
gpio
interrupts
polling
+1
Interview Weight: 4/10
Peripherals
intermediate

ADC

ADC (Analog-to-Digital Converter) fundamentals including resolution, sampling theory, SNR, oversampling, and DMA integration for embedded systems.

peripherals
adc
analog
sampling
+1
Interview Weight: 4/10
Peripherals
intermediate

CAN

CAN (Controller Area Network) communication including classic vs FD, arbitration, bit timing, and error handling for embedded systems.

peripherals
can
communication
arbitration
+1
Interview Weight: 4/10
Peripherals
intermediate

DMA

DMA (Direct Memory Access) fundamentals including transfer modes, channel configuration, circular buffers, and cache coherency for embedded systems.

peripherals
dma
memory
transfer
+1
Interview Weight: 4/10
Peripherals
intermediate

I2C

Master I2C (Inter-Integrated Circuit) communication including addressing, repeated start, clock stretching, and error recovery for embedded systems.

peripherals
i2c
communication
addressing
+1
Interview Weight: 4/10
Peripherals
intermediate

SPI

Master SPI (Serial Peripheral Interface) communication including modes, CS handling, multi-slave timing, and throughput optimization for embedded systems.

peripherals
spi
communication
modes
+1
Interview Weight: 4/10
Peripherals
intermediate

Timers and PWM

Master timer peripherals and PWM generation including counting modes, prescaler configuration, input capture, output compare, and dead-time insertion for embedded systems.

peripherals
timers
pwm
capture
+1
Interview Weight: 4/10
Peripherals
intermediate

UART

Master UART (Universal Asynchronous Receiver-Transmitter) communication including baud rate configuration, framing, DMA, flow control, and common pitfalls in embedded systems.

peripherals
uart
serial
communication
+2
Interview Weight: 4/10
Peripherals
intermediate

USB

USB (Universal Serial Bus) fundamentals including device architecture, transfer types, enumeration, descriptors, and common device classes for embedded systems.

peripherals
usb
communication
endpoints
+1
Interview Weight: 3/10
Peripherals
intermediate

Watchdog Timer

Watchdog timer fundamentals including IWDG vs WWDG, windowed mode, feeding strategies, and system recovery for reliable embedded systems.

peripherals
watchdog
safety
reliability
+1
Interview Weight: 3/10
Intermediate
Deeper topics for mid-level and senior roles

TCP/IP, sockets, MQTT, HTTP/REST, and TLS for embedded connectivityHigh priority for IoT and connected device roles

Networking & Protocols
intermediate

MQTT

MQTT protocol for IoT: publish/subscribe model, topic hierarchy and wildcards, QoS levels (0/1/2), retained messages, last will and testament, persistent sessions, MQTT 5.0, broker selection, and embedded client considerations.

networking
mqtt
publish-subscribe
qos
+1
Interview Weight: 4/10
Networking & Protocols
intermediate

Sockets API Basics

Sockets API lifecycle for embedded systems: socket/bind/listen/accept/connect/send/recv/close, TCP vs UDP patterns, blocking vs non-blocking I/O, select/poll/epoll multiplexing, socket options, error handling, and lwIP vs Linux sockets.

networking
sockets
tcp
udp
+5
Interview Weight: 4/10
Networking & Protocols
intermediate

TCP/IP Fundamentals

TCP/IP protocol stack for embedded systems: layers, TCP vs UDP, three-way handshake, flow control, congestion control, sockets API, and lightweight stacks (lwIP).

networking
tcp-ip
tcp
udp
+2
Interview Weight: 4/10
Networking & Protocols
intermediate

TLS for Embedded Systems

TLS in embedded systems: TLS 1.2 vs 1.3 handshake, certificate vs PSK authentication, RAM/flash costs on Cortex-M, hardware crypto acceleration, DTLS for UDP protocols, certificate management in the field, and embedded TLS library comparison (mbedTLS, wolfSSL, BearSSL).

networking
tls
security
dtls
+2
Interview Weight: 4/10
Networking & Protocols
intermediate

HTTP REST for IoT

HTTP and REST for embedded/IoT: REST principles, HTTP/1.1 vs HTTP/2, API design for embedded devices, JSON vs CBOR, authentication (API keys, OAuth, JWT), TLS overhead on constrained devices, CoAP for constrained networks, and when REST is appropriate versus lightweight protocols.

networking
http
rest
api
+3
Interview Weight: 3/10

BLE, WiFi, LoRa, cellular IoT, UWB, and mesh networking for embedded systemsEssential for IoT, wearable, and connected device roles

Wireless Technologies
foundational

Wireless Technology Selection Guide

Decision matrix for choosing the right wireless technology for embedded IoT: BLE vs WiFi vs LoRa vs Cellular vs Zigbee/Thread vs UWB compared across range, data rate, power, topology, cost, and use case. Includes a decision flowchart and common multi-radio combinations.

wireless
decision-matrix
iot
comparison
+1
Interview Weight: 4/10
Wireless Technologies
intermediate

BLE Basics

Bluetooth Low Energy fundamentals: BLE vs Classic Bluetooth, GAP advertising and connections, GATT services and characteristics, connection parameters, BLE 5.0 features, security, and power optimization for embedded systems.

wireless
ble
bluetooth-low-energy
gap
+1
Interview Weight: 4/10
Wireless Technologies
intermediate

WiFi for Embedded

WiFi for embedded systems: station vs AP mode, provisioning methods, power management (DTIM, light/deep sleep), WPA2/WPA3 security, embedded WiFi modules, and decision matrix for choosing WiFi vs BLE vs cellular.

wireless
wifi
embedded-wifi
power-management
+1
Interview Weight: 4/10
Wireless Technologies
intermediate

Cellular IoT: NB-IoT & LTE-M

Cellular IoT for embedded systems: NB-IoT vs LTE-M (Cat-M1) comparison, PSM and eDRX power saving, AT command modem control, SIM/eSIM provisioning, cellular module integration, data plan considerations, and 5G RedCap for IoT.

wireless
cellular
nb-iot
lte-m
+3
Interview Weight: 3/10
Wireless Technologies
intermediate

LoRa & LoRaWAN

LoRa and LoRaWAN for embedded IoT: PHY vs protocol stack, spreading factor/bandwidth/coding rate trade-offs, LoRaWAN architecture, device classes (A/B/C), OTAA vs ABP activation, ADR, duty cycle restrictions, and comparison with NB-IoT and Sigfox.

wireless
lora
lorawan
lpwan
+1
Interview Weight: 3/10
Wireless Technologies
intermediate

Mesh Networking: Zigbee, Thread & Matter

Mesh networking for embedded IoT: why mesh matters (self-healing, range extension), Zigbee architecture and ZCL, Thread's IP-native mesh over 802.15.4, Matter as the unifying application layer, and choosing mesh vs star topology.

wireless
mesh
zigbee
thread
+3
Interview Weight: 3/10
Wireless Technologies
intermediate

Ultra-Wideband (UWB)

Ultra-Wideband for embedded systems: short-pulse wideband radio for precise ranging, IEEE 802.15.4z, TWR vs TDoA ranging methods, UWB vs BLE positioning comparison, digital car keys, indoor positioning, and embedded UWB chips.

wireless
uwb
ultra-wideband
ranging
+3
Interview Weight: 3/10
Advanced
Specialized knowledge for senior and lead positions

Linux kernel basics, build systems, and user-space programmingFor Linux-based embedded systems

Embedded Linux Essentials
intermediate

Linux boot process

Understand the embedded Linux boot sequence from power-on through U-Boot, kernel initialization, initramfs, and rootfs mounting to the first userspace process.

embedded-linux
boot
u-boot
kernel
+3
Interview Weight: 4/10
Embedded Linux Essentials
intermediate

Linux build systems

Compare Yocto, Buildroot, and OpenWrt for building embedded Linux images. Understand layers, recipes, cross-compilation toolchains, and image generation.

embedded-linux
yocto
buildroot
openwrt
+3
Interview Weight: 4/10
Embedded Linux Essentials
intermediate

Linux device tree

Understand device tree syntax, node structure, compatible strings, overlays, and how the kernel uses DTB to discover and configure hardware on embedded Linux systems.

embedded-linux
device-tree
dts
dtb
+3
Interview Weight: 4/10
Embedded Linux Essentials
intermediate

Linux drivers and kernel modules

Understand Linux kernel modules, the driver model, character devices, platform drivers, and the probe/remove lifecycle for embedded Linux driver development.

embedded-linux
drivers
kernel-modules
char-device
+3
Interview Weight: 4/10
Embedded Linux Essentials
intermediate

Linux IPC mechanisms

Compare Linux inter-process communication mechanisms — pipes, shared memory, Unix sockets, message queues, signals, and D-Bus — and know when to use each in embedded systems.

embedded-linux
ipc
pipes
shared-memory
+3
Interview Weight: 4/10
Embedded Linux Essentials
intermediate

Linux userspace basics

Understand the embedded Linux userspace environment: root filesystem layout, filesystem types for Flash, init systems, BusyBox, process model, and debugging tools.

embedded-linux
userspace
rootfs
busybox
+3
Interview Weight: 3/10