Software Engineer
Meta
**Summary:**
Meta is seeking a Software Engineer to join our team. The ideal candidate is someone with experience working on maximizing performance of AI models on GPUs or custom silicon. This role involves applying these skills to solve some of the most crucial and exciting problems that exist on the web. The AI Applications Engineering team is dedicated to maximizing training and inference performance of Generative AI (GenAI) and Recommendation models on Meta's Training and Inference Accelerator (MTIA). We employ innovative optimization and parallelization strategies to maximize training throughput for the next generations of GenAI and recommendation models. Additionally, we work cross-functionally with many partner teams to ensure end-to-end performance of large-scale pre-training and inference, enabling us to deliver the next generation of AI experiences more quickly to our users.
**Required Skills:**
Software Engineer Responsibilities:
1. Work cross-functionally to co-design models to maximize pre-training and inference efficiency
2. Applying and driving state-of-the-art optimization techniques to our latest large-scale AI workloads running on Meta’s fleet of accelerators including functional development and maintenance
3. Profiling, analyzing, debugging, and optimizing large-scale workloads on our next-generation training superclusters
4. Optimization of the underlying processes of the whole vertical stack, from kernels, framework, communication, and firmware to layers and hyperparameters
5. Set direction and goals for the team related to project impact, capacity, and developer efficiency
6. Lead large and complex technical efforts across many engineers and teams from zero to one
**Minimum Qualifications:**
Minimum Qualifications:
7. Bachelor’s degree in computer science or a related STEM field
8. Experience programming AI accelerators (e.g. GPUs, custom silicon etc.) using AI frameworks such as PyTorch or similar
9. Experience developing custom kernels and compiler infrastructure to improve performance using low-level programming models such as CUDA, OpenCL or similar
10. Minimum 6+ years of experience developing and optimizing performance in modern C/C++
11. Must obtain work authorization in the country of employment at the time of hire, and maintain ongoing work authorization during employment
**Preferred Qualifications:**
Preferred Qualifications:
12. Experience with training and validating large-scale AI models, including parallelising models across several accelerators
13. Understanding of multiprocessing, including race conditions and communications between processes
14. Experience of evaluating model performance, e.g., with profilers and tuning hyperparameters
15. Thorough understanding of model and data parallelisms such as FSDP, tensor parallelism, model parallelism, expert parallelism, etc
16. Demonstrated experience of the model life cycle from pre-training and post-training to inference, dataset splits and shuffling, metrics, especially for large language models
17. Experience of developing, optimizing and validating kernels on GPUs or other accelerators
**Industry:** Internet
Confirmar seu email: Enviar Email
Todos os Empregos de Meta