Embedded Software Engineer Roadmap¶
Table of Contents¶
1. Master C Programming language¶
- Learn C & master IT!
- Pointers & adresses
- Multithreading
- Data Structures
- Sorting & Filtering
- LIFO/FIFO
- Embedded protobuf
-
SW Optimization : peformance, power efficiency, cpu loads...
-
More advanced programming languages
- C++/Python (later)
- Rust/embedded rust
- Machine learning
- Tiny ML
2. Project Mindset¶
- Working on Enjoyable project
- Challenge them
3. Key skills to Master¶
After the C/C++, learn Embedded Software Programming
-
What Skills to Focus on?
-
Super loop/ while (1)/real time main loop
- GPIOS
- DAC/DAC
- INTERRUPTS
-
HW Communication protocols
- SPI/QSPI
- I2C
- UART/USART
- BLUETOOTH
- USB
- ETHERNET
- DMA : Direct Memory Access
-
MEMORY Management
- How Flashs : Reads/Writes data
- ROM
- RAM + NVRoll/NVFix
-
Real Time Operating Systems (RTOS)
- Multithreadings
- semaphore
- threads
-
Other Important skills
-
How to Read Documentation
- Different Types of Embedded Software Engineers
- Keep Practicing and Learning
- IMPORTANT Soft Skills (good communication ...)