Software Development Engineer
Job Description
WHAT YOU DO AT AMD CHANGES EVERYTHING
At AMD, our mission is to build great products that accelerate next-generation computing experiences—from AI and data centers, to PCs, gaming and embedded systems
Grounded in a culture of innovation and collaboration, we believe real progress comes from bold ideas, human ingenuity and a shared passion to create something extraordinary
When you join AMD, you’ll discover the real differentiator is our culture
We push the limits of innovation to solve the world’s most important challenges—striving for execution excellence, while being direct, humble, collaborative, and inclusive of diverse perspectives
Join us as we shape the future of AI and beyond. Together, we advance your career.
THE ROLE:
We are looking for a dynamic, upbeat software engineer to join our growing team
Your work will focus on building robust, efficient software components that enable high-performance execution of large language models and multimodal models across multi-GPU systems
You’ll collaborate with internal GPU library teams and open-source maintainers to implement features that improve throughput, latency, and scalability
This role emphasizes full-stack development within AI inference systems, with a strong focus on model behavior and framework integration.
THE PERSON:
A motivated early-career software engineer with solid foundational skills in Python and/or C++ in Linux environments
The ideal candidate has hands-on experience or strong academic exposure to deep learning systems, understands LLM and multimodal model architectures, and is eager to write production-quality code that balances functionality, correctness, and performance.
KEY RESPONSIBILITIES:
- Deep Learning & LLM Framework Optimization: Experience with optimizing major DL/LLM frameworks (PyTorch, vLLM, SGLang) for AMD GPUs and contribute improvements upstream.
- Model-Aware Implementation: Build features that interact closely with LLMs and multimodal architectures (e.g., Llama, Qwen-VL, Wan), requiring understanding of attention mechanisms, cross-modal fusion, KV caching, and quantization.
- Performance-Conscious Coding: Write efficient, scalable code while considering memory usage, concurrency, and bottlenecks in multi-GPU environments.
- Profiling: Use profiling tools to evaluate the impact of your changes, identify regressions, and validate performance improvements as part of the development cycle.
- End-to-End Performance Engineering: Perform comprehensive profiling to identify bottlenecks and implement system, memory, and communication optimizations across multi-GPU and multi-node setups.
- Compiler & Pipeline Acceleration: Leverage compiler technologies and graph compilers to enhance the full deep learning and inference pipeline.
- Research & Advanced Techniques: Prototype and integrate emerging optimization methods such as speculative decoding and weight-only quantization into production systems.
- Cross-Team & Open-Source Collaboration: Collaborate with internal GPU library teams and open-source maintainers to align improvements and ensure seamless upstream integration.
- Software Engineering Excellence: Apply robust engineering practices to deliver maintainable, reliable, and production-quality performance optimizations.
MANDATORY EXPERIENCE:
- Software Engineering Skills: Familiarity in Python
Familiarity with C++ or async programming is a plus.
- Understanding of LLM or multimodal model concepts: Knowledge of transformer architectures, attention mechanisms, vision-language alignment, and inference pipelines (e.g., image + text input handling). Have theoretical grounding in Transformer/Attention/MoE/KV Cache, and quantization (FP8/FP4).
- Linux development environment: Comfortable using command-line tools, Git, and standard debugging/profiling utilities.
- End-to-End LLM Performance Engineering: Experience with profiling and diagnosing compute, memory, and communication bottlenecks across multi-GPU and multi-node environments.
- Software Engineering Excellence