Software Engineer II

September 9 2024
Industries IT: Software
Categories Programming, Development,
Vancouver, BC • Full time

Overview

The Artificial Intelligence (AI) Frameworks team at Microsoft develops the AI software used to train and deploy the world’s most advanced AI models. We collaborate with our hardware teams and partners to build the software stacks for Microsoft’s next-generation supercomputers and the new Maia-100 AI accelerator.  We work closely with ML 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.

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.

Qualifications

Required Qualifications:

  • Bachelor's Degree in Computer Science or related technical field AND 2+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python
    • OR equivalent experience.
  • 2+ years of software development experience
  • 1+ years' experience with C/C++

Preferred Qualifications:

  • 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

Software Engineering IC3 - The typical base pay range for this role across Canada is CAD $83,600 - CAD $159,600 per year.

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.

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.

Apply now!

Similar offers

Searching...
No similar offer found.
An error has occured, try again later.

Jobs.ca network