Overview:
We are seeking highly skilled and experienced Embedded Systems Firmware Engineers to join our team. The ideal candidates will have a strong background in low-level software development, firmware engineering, and embedded systems programming. As a member of our team, you will be responsible for designing, developing, and maintaining firmware for embedded systems across a variety of platforms and architectures.
Responsibilities:
- Design, develop, and maintain firmware for embedded systems, including startup code, device drivers, and low-level software components.
-
Work closely with hardware engineers to bring up new embedded hardware platforms and perform board bring-up tasks.
-
Develop and optimize code for performance, memory usage, and power consumption.
-
Debug and troubleshoot issues at the hardware and software level using tools such as JTAG debuggers, logic analyzers, and oscilloscopes.
-
Collaborate with cross-functional teams to integrate firmware with higher-level software applications and systems.
-
Participate in code reviews, design discussions, and architecture meetings to ensure high-quality, robust firmware solutions.
-
Stay up-to-date with the latest industry trends, technologies, and best practices in embedded systems development.
Requirements:
- Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, Computer Science, or related field.
-
8+ years of experience in embedded systems firmware development.
-
Proficiency in C, C++, Python, and assembly language programming.
-
Strong understanding of embedded systems architectures, CPU architectures (e.g., ARM), and IO interfaces (e.g., I2C, SPI, UART).
-
Experience with board bring-up, device driver development, and low-level software development.
-
Familiarity with RTOS (Real-Time Operating Systems) such as FreeRTOS.
-
Experience with version control systems such as Git.
-
Excellent problem-solving skills and ability to debug complex hardware and software issues.
-
Strong communication skills and ability to work effectively in a team environment.