AMD

Principal Software Development Engineer

AMD
Apply
3 days ago
Waterloo, CanadaStaff+

Responsibilities

  • Analyze and optimize machine learning model performance on AMD GPUs using the ROCm stack.
  • Optimize software across PyTorch, vLLM, llama.cpp, ROCm libraries, and GPU kernels using Python and C++.
  • Apply profiling and benchmarking to identify and prioritize performance improvements.
  • Collaborate with AMD architecture specialists on future products and participate in ASIC and hardware bring-ups.
  • Design and develop new AMD technologies, debug existing issues, and research more efficient solutions.
  • Contribute to upstream open-source projects and build relationships with internal teams, partners, and open-source communities.
  • Share AI-assisted workflows and evaluate AI-generated code and analysis for correctness and performance.

Requirements

  • Bachelor’s or master’s degree in Computer Science, Computer Engineering, Electrical Engineering, or equivalent.
  • Strong programming background in C/C++ and Python.
  • Experience with ML frameworks and inference engines such as PyTorch, vLLM, or llama.cpp.
  • GPU programming and performance optimization experience with HIP, CUDA, or Triton is preferred.
  • Experience with modern concurrent programming and threading APIs.
  • Experience with Linux development.
  • Experience using debuggers, source code control systems such as GitHub, and profilers.
  • Strong communication, problem-solving, collaboration, and interpersonal leadership skills.
AMD

About AMD

10,000+ employees

AMD designs and sells CPUs, GPUs, and adaptive/embedded computing products for PCs, data centers, gaming, and edge devices. Its portfolio includes Ryzen and EPYC processors, Radeon and Instinct graphics, and adaptive SoCs from its Xilinx acquisition, sold to OEMs, cloud providers, and device makers. Founded in 1969 and headquartered in Santa Clara, it is a public company on NASDAQ and supplies semi-custom chips for major game consoles.

Contact me