Director of Custom CPU Firmware Development – Software Engineering
Company | Qualcomm |
---|---|
Location | Santa Clara, CA, USA |
Salary | $226900 – $340300 |
Type | Full-Time |
Degrees | Bachelor’s, Master’s, PhD |
Experience Level | Senior, Expert or higher |
Requirements
- Bachelor’s degree in Engineering, Information Systems, Computer Science, or related field and 8+ years of Software Engineering or related work experience.
- OR Master’s degree in Engineering, Information Systems, Computer Science, or related field and 7+ years of Software Engineering or related work experience.
- OR PhD in Engineering, Information Systems, Computer Science, or related field and 6+ years of Software Engineering or related work experience.
- 4+ years of work experience with Programming Language such as C, C++, Java, Python, etc.
Responsibilities
- Lead the firmware development team in designing, implementing, and optimizing CPU firmware encompassing customer requirements, internal performance and power targets, architecture innovations and internal use cases
- Develop and maintain firmware for power management, ensuring efficient energy usage and thermal management.
- Develop and maintain firmware for system manageability features and RAS through robust design and testing practices.
- Implement and enforce solid software development methodologies, including Agile practices, code reviews, and continuous integration.
- Collaborate with hardware and software teams to ensure seamless integration and performance.
- Drive innovation and continuous improvement in firmware development processes and technologies.
- Actively drive the full firmware lifecycle, including planning and milestones for CPU firmware
- Partner with internal teams, marketing, end-customers, OEMs, and suppliers to create firmware and software roadmaps and detailed requirement documentation.
- Provide high-level technical leadership, guidance, and oversight across all CPU firmware development (system architecture, specification compliance, innovation, collaboration, documentation, etc.).
- Lead collaboration with industry partners on emerging technologies, including areas of modern operating system constructs, RAS, system manageability, energy efficiency, and system disaggregation.
- Prepare and present clear and comprehensive technical documentation and reports tailored to the needs of stakeholders, including engineering teams, senior management, customers, and suppliers.
- Mentor and develop team members, fostering a culture of excellence and collaboration.
- Manage project timelines, budgets, and resources effectively
Preferred Qualifications
- Master’s degree in Computer Science/Engineering, Electrical Engineering or a related field.
- 15+ years of experience in delivery of power-performance firmware for silicon products
- Strong expertise in modern operating systems, ARM64 architectures, hypervisors, software security, software development methodologies & power/performance management, RAS and manageability
- Deep proficiency in algorithms for modern power management, including dynamic voltage and frequency scaling, autonomous power management, OS kernels, OS management of CPU resources, RAS, System Manageability, DDR, PCIe, Ethernet, SerDes, and communication protocols such as I2C, SPI, and MDIO.
- Practical experience with in-lab debugging tools, prototype bring-up, new silicon debug
- Strong team leadership skills, technical skills and excellent written and verbal communication.
- 20+ years of experience in software development & design for consumer and datacenter environments.
- In-depth knowledge and experience in CPU architectures, maximizing performance per watt, OS power management interfaces, system manageability, reliability, availability, and serviceability (RAS) in datacenter products
- Excellent leadership and team management skills
- Proven track record in leading and delivering product development at major OEMs or CMs.
- Proven success in delivering solutions for new silicon in the compute domain
- Proven knowledge of Linux, Windows, RTOS, Python, and C/C++.