You will design, develop, and debug production-quality firmware for fail-safe real-time systems.
Responsibilities
- Analyze, design, and debug firmware for real-time system control.
- Implement power management, boot loaders, and scheduling logic.
- Develop embedded software for engineering demonstrations.
- Diagnose hardware and firmware issues using experimental design.
Required Skills
- 5+ years of software design and programming in C/C++.
- Experience with RTOS, specifically Zephyr or FreeRTOS.
- Deep knowledge of ARM Cortex M0/M3/M4 architectures.
- Understanding of boot mechanisms and interrupt priorities.
- Experience configuring USB, SPI, MIPI CSI/DSI, I2C, UART, and GPIO peripherals.
- Ability to analyze power consumption, clock-level issues, and clock gating.
- Proficiency using oscilloscopes and logic/protocol analyzers for debugging.
- Degree in Computer Science, Electrical Engineering, or equivalent experience.
Preferred Skills
- Experience translating device documentation into software solutions.
- Collaboration across research and engineering disciplines.