This job has expired

This job posting is no longer active and is not accepting applications. Explore similar roles below!

Microsoft
Posted 2mo ago

Principal Software Engineer - Performance

Microsoft
Mountain View, California, United States
$143k-$331k/yrHybridFull Time
Responsibilities
  • optimizing performance
  • benchmarking models
  • building tooling
Requirements
  • Bachelor's in CS (or equivalent) with 6+ years engineering experience
  • Coding in C, C++, C#, Java, JavaScript, or Python
  • Experience with GPU/CPU performance analysis
  • DL frameworks, and security screening
Technical tools mentioned
CC++C#JavaJavaScriptPythonPyTorchTensorflowONNX RuntimeCUDAROCmTritonAzure OpenAIOpenAI

Job description

Overview
The Artificial Intelligence Cloud Inference team at Microsoft develops AI software that enables running AI models everywhere, from world’s fastest AI supercomputers, to servers, desktops, mobile phones, IoT devices and internet browsers. We collaborate with our hardware teams and partners, both internal and external, and operate at the intersection of AI algorithmic innovation, purpose-built AI hardware, systems, and software. We are a team of highly capable and motivated people that pride themselves on a collaborative and inclusive culture.
 
We own inference performance of OpenAI and other state of the art LLM models and work directly with OpenAI on the models hosted on the Azure OpenAI service serving some of the largest workloads on the planet with trillions of inferences per day in major Microsoft products, including Office, Windows, Bing, SQL Server, and Dynamics.
 
As a Principal Software Engineer - Performance on the team, you will have the opportunity to work on multiple levels of the AI software stack, including the fundamental abstractions, programming models, runtimes, libraries and APIs to enable large scale training and inferencing of models. You will benchmark OpenAI and other LLM models for performance on GPUs and Microsoft HW, debug and optimize performance at all levels of abstraction including kernel, model, algorithm and system level, monitor performance and drive efficiencies that contribute to achieving Microsoft Azure's capex goals.
 
This is a hands-on technical role requiring software design and development skills. We’re looking for someone who has a demonstrated history of solving technical problems and is motivated to tackle the hardest problems in building a full end-to-end AI stack. An entrepreneurial approach and ability to take initiative and move fast are essential.
 
Microsoft’s mission is to empower every person and every organization on the planet to achieve more. As employees we come together with a growth mindset, innovate to empower others, and collaborate to realize our shared goals. Each day we build on our values of respect, integrity, and accountability to create a culture of inclusion where everyone can thrive at work and beyond.


Responsibilities
As a Principal Software Engineer on the team the common tasks of the job would include, but not be limited to:
  • Identify and drive improvements to end-to-end inference performance of OpenAI and other state of the art LLMs
  • Measure, benchmark performance on Nvidia/AMD GPU's and first party Microsoft silicon
  • Optimize and monitor performance of LLMs and build SW tooling to enable insights into performance opportunities ranging from the model level to the systems and silicon level, help reduce the footprint of the computing fleet and achieve Azure AI capex goals
  • Enable fast time to market of LLMs/models and their deployments at scale by building SW tools that afford velocity in porting models on new Nvidia, AMD GPUs and Maia silicon
  • Design, implement, and test functions or components for our AI/DNN/LLM frameworks and tools
  • Speeding up/reducing complexity of key components/pipelines to improve performance and/or efficiency of our systems
  • Communicate and collaborate with our partners both internal and external
  • Embody Microsoft's Culture and Values


Qualifications
Required Qualifications:
  • Bachelor's Degree in Computer Science or related technical field AND 6+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python OR equivalent experience. 

 

Other Requirements:
  • Ability to meet Microsoft, customer and/or government security screening requirements are required for this role. These requirements include, but are not limited to the following specialized security screenings: Microsoft Cloud Background Check:This position will be required to pass the Microsoft Cloud background check upon hire/transfer and every two years thereafter.

 

Preferred Qualifications:
  • Master's Degree in Computer Science or related technical field AND 12+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python
    • OR Bachelor's Degree in Computer Science or related technical field AND 15+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python
    • OR equivalent experience. 
  • 4+ years’ practical experience working on high performance applications and performance debug and optimization on CPU's/GPU's.
  • Technical background and solid foundation in software engineering principles, computer architecture, GPU architecture, HW neural net acceleration.
  • Experience in end-to-end performance analysis and optimization of state of the art LLMs, HPC applications including proficiency using GPU profiling tools.
  • Experience in DNN/LLM inference and experience in one or more DL frameworks such as PyTorch, Tensorflow, or ONNX Runtime and familiarity with CUDA, ROCm, Triton.

#AIInfra



Software Engineering IC5 - The typical base pay range for this role across the U.S. is USD $142,800.00 - $274,800.00 per year. There is a different range applicable to specific work locations, within the San Francisco Bay area and New York City metropolitan area, and the base pay range for this role in those locations is USD $188,000.00 - $304,200.00 per year.

Certain roles may be eligible for benefits and other compensation. Find additional benefits and pay information here:
https://careers.microsoft.com/us/en/us-corporate-pay

Software Engineering IC6 - The typical base pay range for this role across the U.S. is USD $165,600.00 - $296,400.00 per year. There is a different range applicable to specific work locations, within the San Francisco Bay area and New York City metropolitan area, and the base pay range for this role in those locations is USD $220,800.00 - $331,200.00 per year.

Certain roles may be eligible for benefits and other compensation. Find additional benefits and pay information here:
https://careers.microsoft.com/us/en/us-corporate-pay


This position will be open for a minimum of 5 days, with applications accepted on an ongoing basis until the position is filled.




Microsoft is an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to age, ancestry, citizenship, color, family or medical care leave, gender identity or expression, genetic information, immigration status, marital status, medical condition, national origin, physical or mental disability, political affiliation, protected veteran or military status, race, ethnicity, religion, sex (including pregnancy), sexual orientation, or any other characteristic protected by applicable local laws, regulations and ordinances. If you need assistance with religious accommodations and/or a reasonable accommodation due to a disability during the application process, read more about requesting accommodations.

About Microsoft

Develops software, services, devices, and cloud computing solutions.

Similar jobs

Software Engineer - Performance roles near Mountain View, California
2mo
Save
Mark Applied
Hide
Software Performance Engineer, Vision Products Group
Sunnyvale, California, United States
OnsiteFull Time
Apple
AppleNASDAQ: AAPL: Designs and sells consumer electronics, software, and online services.
Performance engineering for Vision Product Group building core platform for spatial computing; strong engineering and optimization focus (no explicit qualifications listed).
3mo
Save
Mark Applied
Hide
Senior Software Performance Engineer - AV Platform
Santa Clara, California, United States
$224k-$431k/yr OnsiteFull Time
NVIDIA
NVIDIANASDAQ: NVDA: Designs graphics processing units and artificial intelligence hardware.
12+ YOEMS/PhD in CS/EE or equivalent, 12+ years AV software experience, strong C and C++, parallel architecture debugging, system software knowledge, performance analysis and benchmarking, excellent communication.
C, C++, CUDA, ARM NEON, GPGPU, MISRA
9y
Save
Mark Applied
Hide
Software Engineer, Performance
Palo Alto, California, United States
OnsiteFull Time
Suitable Technologies
Suitable Technologies: Manufactures mobile telepresence robots for remote face-to-face interaction.
5+ YOE5+ years in performance-oriented software design for large-scale systems; strong Python/Django; C++ a plus; BS in Computer Science; strong troubleshooting and networking/OS knowledge.
Python, Django, C++, Linux, Wireshark, TcpDump, Networking tools, TCP/IP
2mo
Save
Mark Applied
Hide
Fellow, AI Performance Software Engineer
Santa Clara, California, United States
OnsiteFull Time
AMD
AMDNASDAQ: AMD: Designs and manufactures computer processors and graphics technology.
4+ YOEMinimum 4 years experience; strong in C++ and Python; experience with PyTorch or TensorFlow; experience analyzing and optimizing AI software performance for GPUs; MS or PhD in CS/CE preferred.
C++, Python, PyTorch, TensorFlow, TorchProfiler, ROCm profiler, VTune, Nsight, NCCL, RCCL, OpenMP, MPI, Singularity, Docker, Kubernetes
3mo
Save
Mark Applied
Hide
Senior Software Performance Engineer - AV Platform
Santa Clara, California, United States
$224k-$357k/yr OnsiteFull Time
NVIDIA
NVIDIANASDAQ: NVDA: Designs GPU-accelerated computing and artificial intelligence hardware.
12+ YOE12+ years in autonomous vehicles software; strong C/C++; parallel architecture optimization; performance analysis and benchmarking.
CUDA, C++, GPGPU, ARM NEON, MISRA, Parallel programming
8mo
Save
Mark Applied
Hide
Sr GPU Performance Software Engineer
Sunnyvale or Bellevue
$139k-$204k/yr HybridFull Time
CoreWeave
CoreWeaveNASDAQ: CRWV: Cloud platform providing GPU-accelerated infrastructure for AI workloads.
3+ YOE3–5 years experience; proficient in Go and/or Python; Kubernetes at production scale.
Go, Python, Kubernetes, gRPC, REST, Docker
2mo
Save
Mark Applied
Hide
Sr. Software Engineer, High Performance Computing (Starlink)
Palo Alto or Redmond
$175k-$240k/yr OnsiteFull Time
SpaceX
SpaceX: Designs and launches advanced rockets and satellite internet constellations.
5+ YOEBachelor's in CS/engineering/math/STEM + 5+ years software development (or 7+ years without degree); development experience in Assembly, C, or C++; experience with real-time, distributed systems, and internet services; strong communication and analytical skills.
Assembly, C, C++
2mo
Save
Mark Applied
Hide
Software Engineer, ML Performance Optimization
Foster City, California, United States
$192k-$257k/yr OnsiteFull Time
Zoox
ZooxNASDAQ: AMZN: Developing autonomous robotaxis for urban ride-hailing services.
4+ YOE4+ years total exp; 2+ years in large-scale model training or inference; PyTorch; GPU-accelerated inference; profiling tools; Python or C++.
PyTorch, TensorRT, NVIDIA Nsight, Python, C++
This job has expired