What you do at AMD changes everything
At AMD, we push the boundaries of what is possible. We believe in changing the world for the better by driving innovation in high-performance computing, graphics, and visualization technologies building blocks for gaming, immersive platforms, and the data center.
Developing great technology takes more than talent : it takes amazing people who understand collaboration, respect, and who will go the extra mile to achieve unthinkable results.
It takes people who have the passion and desire to disrupt the status quo, push boundaries, deliver innovation, and change the world.
If you have this type of passion, we invite you to take a look at the opportunities available to come join our team.
Title Diagnostics Development Engineer
The candidate must demonstrate flexibility, strong motivation and a proven record of meeting aggressive deadlines as well as the ability to work as part of a team.
The individual must have proven abilities to solve critical software problems and will be working with innovative managers and engineers to engineering the cutting-edge AMD silicon debug software.
This role will include development, debug, and optimization of software of debugging / testing AMD silicon / platform to support simulation, emulation and bring-up phases.
Software deliverables will be built into an internal / external engineering software solution. Therefore, code quality, robustness, extendibility and performance are critical.
You will also be responsible for code reviews, creating unit tests, authoring detailed documentation related to your work, and working with on-site, North America, and Shanghai teams to deliver the software solution on schedule.
You will participate in all phases of the software development that include system requirement analysis and coordinating feature design and developments with other departments.
Education and Experience
BS or MS in Computer Science, Computer Engineering or Electrical Engineering required.
Bachelor degree with 5+ years or Master with 3+ years of commercial software development experience required.
Strong USB protocol knowledge is required
Firmware or device driver experience preferred.
Experience developing per and post silicon diagnostics, verification tests, or / and manufacturing tests required.
Expert in C / C++ code development.
Experience doing per-silicon tests on Palladium, FPGA, or other pre-silicon environment preferred.
Hands on experience with Windows and Linux OS internals, device manager
Understanding of PC hardware, SoC, Chipsets, Graphics cards, BIOS & VBIOS.
Strong analysis and problem-solving skills required.
Proven interpersonal skill, technical leadership and teamwork required.
Solid knowledge of the software development lifecycle required.
Must be fluent in both written and spoken English.
Experienced project planning and prior leadership responsibilities preferred.
Experience working with off-shore teams preferred.
The x86 micro-architecture and / or ARMv8 knowledge and peripherals preferred.
Experience using JTAG testing and / or run-time debugging tools / software, e.g. HDT, DS-5, ITP, OpenOCD, GDB, et al, will be preferred.
Experience with Test Automation skills (Perl, Shell, C#, Python, Ruby etc..) is preferable
Communicate with design team and users to understand and define the hardware debugging software requirements.
Investigate project roadmaps and product technical documentation to understand software impact. Translate these requirements / impacts into executable task plans.
Write development documentation and contribute content to end user documentation.
Architect and design the hardware debugging / testing software.
Software development, unit and integration test, debugging, post release support and software configuration management.
Own one or a few of functionality / feature development of debugging / testing software. Responsible for design and management of software development activities for the project and assignments with minimal mentoring or guidance.
Accountable on time delivery of deliverables.
LI - DD1