Job Description
CPU Embedded Software Engineer The ideal candidate will be responsible for developing and maintaining the embedded software stack for CPU/MCU subsystem. This role requires a deep understanding of CPU architecture, low-level system software development, and MCU peripherals. - Design, develop, and optimize the software stack for MCUs, including initialization code, drivers, and peripheral libraries. - Collaborate with hardware engineers to ensure proper integration of the software and MCU hardware. - Debug and troubleshoot stability, performance, power issues and provide timely resolutions. - Work closely with firmware developers to support application development on the MCU platform.
Main Requirements and Qualifications
-
- Master's degree in Computer Engineering, Electrical Engineering, or a related field.
-
- Proven experience in CPU system software engineering with a focus on MCU software development.
-
- In-depth knowledge of CPU architecture, low-level system software development, and MCU peripherals.
-
- Proficiency in C/C++ programming and familiarity with embedded system development.
-
- Strong analytical and problem-solving skills.
-
-
Preferred Qualifications:
-
- Experience with popular MCU families such as ARM Cortex-A, Cortex-M, or RISC-V architecture.
-
- Experience with low power management frameworks and tools in embedded system environments.
-
- Familiarity with RTOS (Real-Time Operating Systems) and device driver development.
-
- Experience with debugging tools and techniques for MCU development.
-
- Knowledge of debugging/performance analysis tools and techniques for embedded systems.
-
- Excellent communication and collaboration abilities.