Senior Embedded Firmware Engineer sought to design and develop device driver software for System-on-Chip (SoC) solutions and contribute to the development of embedded SW, microcode, and kernel drivers.
Key Responsibilities:
- Translate product requirements into SW and HW requirements.
- Collaborate with software architects to design and develop device driver software for SoC solutions.
- Contribute to the design and development of embedded SW, microcode, and kernel drivers for SoC products.
- Develop software for performance analysis and profiling.
- Ensure proper software development, testing, debugging, integration, and documentation.
- Communicate effectively with team members and stakeholders.
- Operate independently in a global software development community.
- Exhibit professional behavior with internal and external business associates.
Requirements:
- BS or MS in Computer Science, Computer or Electronics Engineering, or a related field with 5-9 years of industry experience.
- Experience with developing low-level firmware for Microcontrollers & resource constrained microprocessors.
- Experience in developing bootloaders, specifically secure boot concepts.
- Experience in board bring-up, and comfortable with debugging silicon, hardware, and software using IDE and JTAG/SWD debuggers.
- Good understanding of real-time operating systems concepts and the use of FreeRTOS, Zephyr, and/or Linux as an embedded operating system.
- Proficient in C and/or C++ programming with best engineering and software development practices.
- Good understanding of ARM cores and bus architectures.
- Strong understanding of current Cybersecurity libraries & their use in an embedded context.
- Experience with standard communication interfaces and protocols.
- Excellent written and verbal communication skills.
Nice to Have:
- Experience with CMSIS Packs, Eclipse, KEIL, and Visual Studio/VS Code IDEs.
- Comfortable with reading board schematics.
- Experience with oscilloscopes and logic analysers.
- Experience of porting software cryptographic libraries to MCU / CPU based acceleration / trusted execution environments.
Job requires 10% travel and 1st Shift/Days schedule.