September 20, 2024
About the job
AMD together we advance_
The Role
AMD is looking for an influential software engineer who is passionate about improving the performance of key applications and benchmarks. You will be a member of a core team of incredibly talented industry specialists and will work with the very latest hardware and software technology.
The Person
The ideal candidate should be passionate about software engineering and possess leadership skills to drive sophisticated issues to resolution. Able to communicate effectively and work optimally with different teams across AMD.
Key Responsibilities
- Work with AMD’s architecture specialists to improve future products.
- The ideal candidate will be responsible for writing high-performance GPU kernels for AMD’s Machine Learning and Deep Learning Library: MIOpen (https://github.com/ROCmSoftwarePlatform/MIOpen) and Composable Kernel: Performance Portable Programming Model for Machine Learning Tensor Operators
- They will be porting and optimizing algorithms for new GPU hardware Perform code reviews, build unit tests, author detailed documentation related to their work, and work with on-site and offshore teams to deliver the software solutions on schedule
- They will play a key role in all phases of the software development including system requirements analysis, coordinating feature design and development across functional and organizational boundaries
- Stay informed of software and hardware trends and innovations, especially pertaining to algorithms and architecture
- Design and develop new groundbreaking AMD technologies
- Participating in new ASIC and hardware bring ups
- Debugging/fix existing issues and research alternative, more efficient ways to accomplish the same work
- Develop technical relationships with peers and partners
Preferred Experience
- Strong programming skills in C/C++; experience with CUDA programming and CUTLASS preferred Experience with LLVM Compiler, and compiler optimization techniques for GPU computing is preferred.
- Experience or knowledge about BLAS operators and GEMM optimization.
- Knowledge of Computer Architect and GPU architect.
- Good teamwork and interpersonal skills required Ability to work independently and within complementary teams
- Demonstrate flexibility, strong motivation, and a proven track record of meeting results-oriented deadlines
- Knowledge with deep neural network machine learning technologies and modern machine learning programming frameworks Experience working with and developing virtualization containers and package managers for code deployment
- Ability to write high quality code with a keen attention to detail
- Experience with modern concurrent programming and threading APIs
- Experience with Windows, Linux and/or Android operating system development
- Experience with software development processes and tools such as debuggers, source code control systems (GitHub) and profilers is a plus
- Effective communication and problem-solving skills
- Motivating leader with good interpersonal skills
Academic Credentials
- Bachelor’s or Master’s degree in Computer Science, Computer Engineering, Electrical Engineering, or equivalent with experience in GPU programming
- PhD in Computer Science and related programs with experience in Parallel Computing and GPU Architect
LOCATION: Calgary, Alberta
Benefits offered are described: AMD benefits at a glance.
AMD does not accept unsolicited resumes from headhunters, recruitment agencies, or fee-based recruitment services. AMD and its subsidiaries are equal opportunity, inclusive employers and will consider all applicants without regard to age, ancestry, color, marital status, medical condition, mental or physical disability, national origin, race, religion, political and/or third-party affiliation, sex, pregnancy, sexual orientation, gender identity, military or veteran status, or any other characteristic protected by law. We encourage applications from all qualified candidates and will accommodate applicants’ needs under the respective laws throughout all stages of the recruitment and selection process.