Engineering - Software Development Engineer
Summary
Develop and verify low-level Linux drivers and test plans for x86 CPU features, collaborating with hardware and firmware teams to debug and improve system performance.
Project description
We are looking for a talented, detail-oriented, and motivated person. Your contributions will impact products that span the global x86 market from server to desktop and laptop designs.
Responsibilities
- Collaborate with design engineers and other verification engineers to understand new CPU features to be verified.
- Build test plan documentation, accounting for interactions with other features, various design sub-units within the CPU, SOC and also hardware, firmware, and software use cases if applicable.
- Estimate time required to write new feature tests and any required changes to the test environment and tools.
- Develop directed and random verification tests.
- Understand the existing test bench setup and look for opportunities to improve it.
- Debug test failures to determine the root cause; work with RTL design engineers to resolve design defects and correct any stimulus or testbench issues.
- Use scripting and internal AI tools to come up with innovative solutions to day-to-day problems and to improve individual as well as team's productivity.
- Develop functional coverage properties as needed.
- Review functional and code coverage metrics – modify or add tests or constrain random tests to meet the coverage requirements.
- Mentor junior engineers as needed.
SKILLS
Must have
- Experience range 5-8y
- Collaborate with internal central engineering teams and develop new features, Integration, Bug fixes and productization of the Linux platform driver stack.
- Deep involvement with Linux internals, including: o GFX/Multimedia/Audio/Network/DMA/MIPI driver development/Porting/Bug fixing. o Memory management, Scheduler, Interrupts, NAPI, and polling mechanisms o PCIe, DMA, and device drivers
- Collaborate with firmware, hardware, validation, and customer teams
- Collaborate with hardware and software teams to resolve Linux OS, Kernel, Driver issues.
- Analyze and debug critical low-level driver, hardware, and OS issues
- Stay updated on industry trends and best practices.
- Excellent Communication and Presentation skills.
Nice to have
• Exposure to leadership or mentorship is an asset. • Familiarity with the use of AI is a plus.