About the role
AI summarisedThe Staff Software Development Engineer will join AMD's diagnostics team to develop and maintain test suites that validate hardware blocks in System-on-Chips. This role involves software development, debugging, emulation, and hardware feature validation across the product lifecycle, with a focus on power management diagnostics. The engineer will collaborate with cross-functional teams to ensure high-quality software and hardware integration.
FablessOnsiteEngineering
Key Responsibilities
- Implement/rewrite code across different framework, C++ versions, or Python versions
- Participate in running code on remote systems at different stage of product lifecycle
- Triage, debug, and root cause SW issues, execute/coordinate testing to ensure high quality software engineering and hardware coverage
- Identify and help resolve ASIC, board, and firmware issues, provide diagnostics support to corresponding engineering teams
- Perform code analysis across products to improve cross leverage
- Join brainstorm sessions to create innovative ideas
Requirements
- Has strong interest in software development, computer hardware and architecture
- Understands low-level coding techniques for manipulating bits in registers and memory blocks
- Has strong desire to learn and apply design patterns across the codebase
- Has excellent written and verbal communication skills
- Has good problem-solving skills
- Is self-disciplined
- Is a team worker
- Proficient in C & C++ object-oriented programming
- Experienced in Python programming
- Experienced in software code testing and debugging
- Experienced in system software development on Linux
- Experienced with systems like git, jama, jira, perforce, qtest etc.
- Experienced in modern C++ like C++20
- Experienced in power, clock, thermal related HW specification and operation
- Experienced in device driver, firmware or embedded SW development
- Experienced in working with large-scale software development projects and understanding of PC architecture
- Experienced in working with remote team within/across time zone and reporting status regularly
- Experienced in communicating with multiple stakeholders frequently during the whole product lifecycle