Domain
Embedded & IoT
Skill Profile
Bare metal: startup code, linker scripts, interrupt vectors, bootloader
Roles
2
where this skill appears
Levels
5
structured growth path
Mandatory requirements
8
the other 2 optional
Embedded & IoT
RTOS & Real-Time
3/17/2026
Choose your current level and compare expectations. The items below show what to cover to advance to the next level.
The table shows how skill depth grows from Junior to Principal. Click a row to see details.
| Role | Required | Description |
|---|---|---|
| Embedded Developer | Required | Understands bare-metal development: startup code, linker script, interrupt vector table. Writes simple programs without OS on STM32. |
| Systems Programmer (C/C++) | Understands the fundamentals of Bare Metal Programming. Applies basic practices in daily work. Follows recommendations from the team and documentation. |
| Role | Required | Description |
|---|---|---|
| Embedded Developer | Required | Independently develops bare-metal firmware: PLL configuration, peripheral setup through registers, boot sequence implementation on Cortex-M. |
| Systems Programmer (C/C++) | Independently applies Bare Metal Programming in practice. Understands trade-offs of different approaches. Solves typical tasks independently. |
| Role | Required | Description |
|---|---|---|
| Embedded Developer | Required | Designs bare-metal architecture for production devices. Implements custom scheduler, power management, watchdog recovery, OTA update mechanism. |
| Systems Programmer (C/C++) | Required | Has deep expertise in Bare Metal Programming. Designs solutions for production systems. Optimizes and scales. Mentors the team. |
| Role | Required | Description |
|---|---|---|
| Embedded Developer | Required | Defines bare-metal standards for the product line. Establishes approaches to boot security, hardware abstraction, porting between MCU families. |
| Systems Programmer (C/C++) | Required | Defines Bare Metal Programming strategy at team/product level. Establishes standards and best practices. Conducts reviews. |
| Role | Required | Description |
|---|---|---|
| Embedded Developer | Required | Shapes bare-metal development strategy: boot architecture standards, hardware abstraction layer design, silicon vendor evaluation criteria. Defines bring-up procedures for new MCU platforms. |
| Systems Programmer (C/C++) | Required | Defines Bare Metal Programming strategy at organizational level. Establishes enterprise approaches. Mentors leads and architects. |