Required Skills
About the Job
NXP Semiconductors is seeking a Senior Hardware-Software Co-Design Engineer to join our team in Pune, Maharashtra. In this critical role, you will bridge the gap between hardware and software, ensuring world-class solutions for our customers. You will work closely with the hardware team to develop and reuse low-level drivers and applications, acting as a liaison to the central software team.
Your responsibilities include developing high-quality, reusable IP firmware (device drivers) for MCU platforms. You will collaborate with central SW teams to maximize reuse, ensure consistency, and confirm hardware compatibility. Delivering comprehensive IP firmware/driver solutions that span RTL verification, virtual simulation, SoC verification, post-silicon validation, and SDK integration is key.
This position involves partnering with pre-silicon and post-silicon teams to align HAL/SDK development with IP interface requirements and features. You will work closely with HW, SW architects, and SOC designers to initiate firmware development in parallel with hardware development, reviewing hardware register definitions to provide actionable feedback and ensure long-term maintainability. Establishing and maintaining backward-compatible software interfaces as hardware IP evolves is also a core function.
You will support multiple execution environments (simulation, emulation, and silicon) to ensure robust API behavior and champion quality practices like design and code reviews, static analysis, and adherence to coding standards. Producing clear, comprehensive technical documentation, reports, and presentations is essential. You will leverage Git, JIRA, and Confluence for project execution and collaboration, and contribute to optimizing firmware development workflows.
**Qualifications:**
- Bachelor's or Master's degree in Electrical Engineering, Electronics Engineering, or a related field.
- Minimum of 3 years of experience in architecture and/or firmware development for MCUs/MPUs.
- Deep expertise in MCU/MPU SW architecture and low-level firmware development, including RTL bring-up, driver design, and platform-level integration.
- Experience in RTL simulation and emulation; understanding of SOC build processes and working with RTL, HW, and SW verification environments.
- Proficiency with ARM processor subsystems, tools, and debugging methodologies.
- Experience working with embedded RTOS and compilers.
- Competence in low-level software testing and debugging for MCUs and MPUs.
- Proficiency in C/C++/Assembly languages and at least one scripting language.
- Excellent problem-solving, analytical, and debugging skills.
- Strong communication and interpersonal skills, with the ability to collaborate effectively and mentor junior engineers.
- Ability to work in a multi-site, multi-time-zone environment.
- Prior experience in a technical leadership role is highly desirable.
- Experience leveraging AI capabilities to accelerate software development and documentation is a plus.