About the job
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.
We are currently looking for a Software Engineer II to join the Maia Dynamic Firmware team. As a member of this team, you will have the opportunity to work on the fundamental mechanisms for building and deploying application code to Microsoft AI accelerator devices, such as Maia 100. In this role, you will be analyzing and modifying code via the LLVM IR API, implementing advanced dynamic-code generation (aka JIT-compilation) features, and implementing system/runtime components for dynamic-code deployment.
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 complex 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
- Apply engineering principles for defining robust and maintainable architectures and designs.
- Collaborate broadly across multiple disciplines from hardware designers to ML developers
- Perform software development in C/C++, Python, and other languages.
- Identify requirements, scope solutions, estimate work, schedule deliverables.
Required Qualifications:
- OR equivalent experience.
- 2+ years of software development experience
- 1+ years' experience with C/C++
- 1+ years’ experience developing software for GNU/Linux or other *nix platform(s)
- Technical background and foundation in software engineering principles and architecture design
- Be intellectually curious and passionate about learning new technologies
- Great cross-team collaboration skills and the desire to collaborate in a team of researchers and developers
Find Additional Pay Information Here
https://careers.microsoft.com/v2/global/en/canada-pay-information.html
Microsoft will accept applications and processes offers for these roles on an ongoing basis.
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.