Update day: 07-12-2023
Category: Design - Web
Industry: Semiconductor Manufacturing
Position: Mid-Senior level
Job type: Full-time
Job contentWhat 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.
AMD’s Custom Software Engineer Team is tasked with optimizing our Windows, MacOS, and Linux driver stacks to deliver the best in class power and performance on AMD HW. Our focus is primarily on the GPU, and APU side for key industry customers looking for custom features that allows their products to stand out and shine. Our team is looking for an experienced software engineer to develop, maintain, and optimize our drivers on these platforms. Specifically we are looking for engineers with experience in the compute domain, exposed to APIs like OpenCL, Vulkan, CUDA, DX12, Metal, and various ML frameworks.
The successful candidate will utilize their knowledge of compute APIs, OS concepts, and machine learning to help resolve bugs, implement new features, and support the release of new HW platforms. The candidate will also design and develop tools that profile the performance of our GPUs, and subsequently be able to analyze the data to drive improvements. Through analysis, the candidate will help drive performance improvements at the SW driver stack, and at the GPU execution level. The ideal candidate will leverage outstanding cross-component, independent problem-solving skills, and work with other Compute / Compiler / Machine Learning teams at AMD, and our client.
The successful candidate will thrive in a dynamic environment, be a strong team player with demonstrated initiative who is passionate about developing leading-edge products.
- Enhancing and maintaining sophisticated production-level GPU compute and ML drivers.
- Profiling and analysis to identify and resolve performance issues.
- Excellent communications skills to report status and actions on high-visibility investigations to varied audience, from engineering to executive, and to engage with customers.
- Collaborating closely with various engineering teams to implement features and debug issues within the GPU-specific driver.
- Designing, prototyping, and evaluating new performance tools.
- Contributing to all phases of software development life cycle including requirements gathering, scoping, design, implementation, test, bug fixing and documentation.
- Excellent programming skills with demonstrated experience in C/C++.
- Outstanding independent cross-functional problem solving and debugging skills.
- Knowledge of GPU architecture and parallel computing concepts.
- Strong foundational understanding of operating system concepts, memory management, concurrency and multi-threading.
- Strong understanding of Object Oriented design principles.
- Fast learner, adaptable, self-starter who can work both independently and collaborate well within dynamic team environment.
- Experience delivering production quality, maintainable code on schedule, particularly in a larger software organization.
- Experience with complex software systems and architectures.
- Experience in GPU programming, and/or parallel and asynchronous processing using APIs such as OpenCL, CUDA, Metal, HIP, OpenGL, DirectX, D3D, or Vulkan.
- Experience with code optimization using the GPU, performance tooling, capturing HW counters and traces, and analysis/metrics.
- Experience with operating system development, low-level device driver, embedded driver development or similar.
- Experience in machine learning systems, algorithms, frameworks, libraries.
- BASc / BSc (or greater) in Computer Science or Computer Engineering.
Country:Canada Province:Ontario City:Markham
AMD is an inclusive employer dedicated to building a diverse workforce. We encourage applications from all qualified candidates and will accommodate applicants’ needs under the respective provincial human rights codes throughout all stages of the recruitment and selection process. Any applicant who requires accommodation should contact AskHR@amd.com .
AMD does not accept unsolicited resumes from headhunters, recruitment agencies or fee based recruitment services.
Click to apply for free candidate
⏰ 06-01-2024🌏 Vancouver, British Columbia
💸 $55–$58 an hour⏰ 06-01-2024🌏 Brampton, Ontario
⏰ 06-01-2024🌏 Montreal, Québec
⏰ 06-01-2024🌏 North Vancouver, British Columbia
⏰ 06-01-2024🌏 Winnipeg, Manitoba
💸 $17–$20 an hour⏰ 06-01-2024🌏 Markham, Ontario
💸 $102,900–$114,000 a year⏰ 06-01-2024🌏 Kelowna, British Columbia
💸 $19.81 an hour⏰ 06-01-2024🌏 Markham, Ontario
💸 $18 an hour⏰ 06-01-2024🌏 Delta, British Columbia
💸 $19.28–$28.59 an hour⏰ 06-01-2024🌏 Montreal, Québec