Domain
Embedded & IoT
Skill Profile
This skill defines expectations across roles and levels.
Roles
1
where this skill appears
Levels
5
structured growth path
Mandatory requirements
0
the other 5 optional
Embedded & IoT
Embedded Programming
2/22/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 |
|---|---|---|
| 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 |
|---|---|---|
| Systems Programmer (C/C++) | Independently develops bare-metal systems: PLL initialization, MPU configuration, DMA transfers. Writes bootloaders and firmware for specific platforms with direct register access. |
| Role | Required | Description |
|---|---|---|
| Systems Programmer (C/C++) | Designs complex bare-metal systems with custom scheduler and HAL. Optimizes startup sequence, configures cache coherency, implements bootchain with firmware signature verification. |
| Role | Required | Description |
|---|---|---|
| Systems Programmer (C/C++) | Defines bare-metal development architectural standards for the product line. Establishes strategy for porting between ARM/RISC-V architectures, leads review of critical system components. |
| Role | Required | Description |
|---|---|---|
| Systems Programmer (C/C++) | Shapes enterprise bare-metal platform strategy. Defines approaches to safety-critical bare-metal system certification (IEC 61508), mentors lead architects in low-level software. |