Microsoft

Principal Software Engineer

Bengaluru, India
PyTorch TensorFlow Azure SQL API C++ Python
Description

The Artificial Intelligence (AI) Frameworks 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 to build the software stacks for AI across Microsoft.  


Our stack enables ML developers to optimize and scale out model training and inference.  We work directly with OpenAI on the models hosted on the Azure OpenAI service. The ONNX Runtime is shipped in major Microsoft products, including Office, Windows, Bing, SQL Server, and Dynamics, serving trillions of inferences daily. 

 

The team operates at the intersection of AI algorithmic innovation, purpose-built AI hardware, systems, and software. We are a cross-disciplinary team of highly capable and motivated people with a collaborative and inclusive culture.  We collaborate with and contribute to the open-source community.   

 

We are looking to hire a Principal Software Engineer- AI Platform to join our team. As a member of this team, you will have the opportunity to work on multiple levels of the AI software stack, including the fundamental abstractions, programming models, compilers, runtimes, libraries and APIs to enable large scale training and inferencing of models. 

   

This is an Individual contributor role: as a senior technical leader it requires setting the technical direction for the projects in the area, and hands on software design and development skills. We’re looking for someone who has a demonstrated history of solving hard 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.

  • Bachelor's Degree in Computer Science or related technical field and 10+ years technical engineering experience with coding in languages including, but not limited to C/C++, 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
  • Cross-team collaboration skills and the desire to collaborate in a team of researchers and developers

#IDCAIPlatformHiring

 

Microsoft is an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to age, ancestry, color, family or medical care leave, gender identity or expression, genetic information, marital status, medical condition, national origin, physical or mental disability, political affiliation, protected veteran status, race, religion, sex (including pregnancy), sexual orientation, or any other characteristic protected by applicable laws, regulations and ordinances. If you need assistance and/or a reasonable accommodation due to a disability during the application or the recruiting process, please send a request via the Accommodation request form.

 

Benefits/perks listed below may vary depending on the nature of your employment with Microsoft and the country where you work.

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 our Culture and Values

There are more than 50,000 engineering jobs:

Subscribe to membership and unlock all jobs

Engineering Jobs

60,000+ jobs from 4,500+ well-funded companies

Updated Daily

New jobs are added every day as companies post them

Refined Search

Use filters like skill, location, etc to narrow results

Become a member

🥳🥳🥳 452 happy customers and counting...

Overall, over 80% of customers chose to renew their subscriptions after the initial sign-up.

To try it out

For active job seekers

For those who are passive looking

Cancel anytime

Frequently Asked Questions

  • We prioritize job seekers as our customers, unlike bigger job sites, by charging a small fee to provide them with curated access to the best companies and up-to-date jobs. This focus allows us to deliver a more personalized and effective job search experience.
  • We've got about 70,000 jobs from 5,000 vetted companies. No fake or sleazy jobs here!
  • We aggregate jobs from 5,000+ companies' career pages, so you can be sure that you're getting the most up-to-date and relevant jobs.
  • We're the only job board *for* software engineers, *by* software engineers… in case you needed a reminder! We add thousands of new jobs daily and offer powerful search filters just for you. 🛠️
  • Every single hour! We add 2,000-3,000 new jobs daily, so you'll always have fresh opportunities. 🚀
  • Typically, job searches take 3-6 months. EchoJobs helps you spend more time applying and less time hunting. 🎯
  • Check daily! We're always updating with new jobs. Set up job alerts for even quicker access. 📅

What Fellow Engineers Say