Principal Software Engineer - Performance

Microsoft Corp

Mountain View, CA

JOB DETAILS
SALARY
$139,900–$274,800 Per Year
SKILLS
Algorithms, Application Programming Interface (API), Artificial Intelligence (AI), Background Investigation, Benchmarking, C Programming Language, C++ Programming Language, CPU (Central Processing Unit), CUDA (Compute Unified Device Architecture), Capital Expenditure (CAPEX), Cellular Telephone, Cloud Computing, Computer Architecture, Computer Science, Debugging Skills, Desktop PC, Engineering, Entrepreneurship, GPU (Graphics Processing Unit), Hardware Architecture, Hardware Debugging, Integrated Circuits (ICs), Internet of Things, Java, JavaScript, Kernel Programming, Machine Tool, Microsoft Bing Search Engine, Microsoft C# (C Sharp), Microsoft Product Family, Microsoft SQL Server, Microsoft Windows Azure, Microsoft Windows Operating System, Microsoft Windows System Internals/Programming, Neural Networks, Performance Analysis, Performance Management, Performance Modeling, Performance Tuning/Optimization, Problem Solving Skills, Process Improvement, Python Programming/Scripting Language, Software Design, Software Development, Software Engineering, Software Porting, Team Player, Vehicle Fleets, Web Browsers
LOCATION
Mountain View, CA
POSTED
30+ days ago

OverviewThe 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.ResponsibilitiesAs 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 LLMsMeasure, benchmark performance on Nvidia/AMD GPU's and first party Microsoft siliconOptimize 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 goalsEnable 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 siliconDesign, implement, and test functions or components for our AI/DNN/LLM frameworks and toolsSpeeding up/reducing complexity of key components/pipelines to improve performance and/or efficiency of our systemsCommunicate and collaborate with our partners both internal and externalEmbody Microsoft's Culture and ValuesQualificationsRequired 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 PythonOR 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 PythonOR 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. Software Engineering IC5 - The typical base pay range for this role across the U.S. is USD $139,900 - $274,800 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 - $304,200 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 $163,000 - $296,400 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 - $331,200 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-payThis 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 the Company

M

Microsoft Corp

DO WHAT YOU LOVE
Make your mark on the world’s most used technologies. Develop the next hit mobile application. Pioneer a startup that could be the next big thing. At Microsoft, you choose your path.

Headquartered in Redmond, Washington, Microsoft is a top innovator in both the consumer and enterprise technology industry. Just a few of the many things our products do are unleash creativity, connect businesses, and make learning more fun. But our continued success is based on one thing: our employees. We hire amazing, talented people and give them the opportunities—and the tools—to succeed.

WHY MICROSOFT?
As a Microsoft employee, you’re surrounded by a diverse group of the smartest people in your field. This fosters new ideas, better business results, and creates a dynamic work environment. In the office, you’re constantly challenged and supported by your colleagues. Every day holds something new and exciting.

We also offer unparalleled depth and breadth of career opportunities. As an industry leader in multiple fields, working for Microsoft means being able to do whatever you feel passionate about—and being able to make an impact in that field. From day one, we give our employees significant responsibility. This means that you’ll know that you directly contributed to something that has a positive impact on people worldwide. Whether you choose to work in management, dive deep into the newest technology, or explore multiple professions, you’ll find everything you need at Microsoft to drive your career—and to make a difference.

WE GET IT – YOU’RE MORE THAN YOUR JOB
Everyone works differently and is motivated by different things. We also understand that there’s more to you than your job. That’s why we offer competitive pay and a wide assortment of benefits-- to help you make the most of life at work and away from it.

GET THE BALL ROLLING
COMPANY SIZE
10,000 employees or more
INDUSTRY
Computer Software
FOUNDED
1975
WEBSITE
http://www.microsoft.com