Description
The 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 hardware partners to build the software stacks for novel AI accelerators. We work closely with machine learning researchers and developers to optimize and scale out model training and inference.
The team operates at the intersection of AI algorithmic innovation, purpose-built AI hardware, systems, and software. We are a cross-discipline team of highly capable and motivated people with a collaborative and inclusive culture. We collaborate with and contribute to the open-source community.
As a Principal Software Engineer, you will have the opportunity to work on the fundamental abstractions, programming model, runtimes, libraries, and APIs to enable large scale training and inferencing of models on novel AI hardware.
This is a technical role: it requires 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.
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.
In alignment with our Microsoft values, we are committed to cultivating an inclusive work environment for all employees to positively impact our culture every day.
Responsibilities
-
Apply engineering principles for defining robust and maintainable architectures and designs.
-
Collaborate broadly across multiple disciplines from hardware designers to ML developers.
-
Help establish and drive the adoption of good coding standards and patterns.
-
Perform software development in C/C++, Python, and other languages.
-
Identify requirements, scope solutions, estimate work, schedule deliverables
Other
- Embody our Culture (https://www.microsoft.com/en-us/about/corporate-values) and Values (https://careers.microsoft.com/us/en/culture)
Qualifications
-
Required Qualifications
-
Bachelor’s Degree in Computer Science, or related technical discipline 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.
-
5+ years’ experience with C/C++ 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:
-
1+ years experience with Python
-
A technical background and solid foundation in software engineering principles and architecture design
-
Experience using or developing hardware simulators
-
Curiosity and passion about learning new technologies
-
Exposure to Deep Neural Network training and inference and experience in one or more deep learning frameworks (PyTorch, Tensorflow, ONNX, etc.)
-
Cross-team collaboration skills and the desire to collaborate in a team of researchers and developersSoftware Engineering IC5 – The typical base pay range for this role across the U.S. is USD $137,600 – $267,000 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 $180,400 – $294,000 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 Microsoft will accept applications for the role until September 6, 2024.
Microsoft is an equal opportunity employer. Consistent with applicable law, 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 and/or a reasonable accommodation due to a disability during the application process, read more about requesting accommodations (https://careers.microsoft.com/v2/global/en/accessibility.html) .