Software Engineer II
Vancouver, British Columbia, Canada
Full Time Mid-level / Intermediate USD 83K - 159K
Microsoft
Entdecken Sie Microsoft-Produkte und -Dienste für Ihr Zuhause oder Ihr Unternehmen. Microsoft 365, Copilot, Teams, Xbox, Windows, Azure, Surface und mehr kaufenThe 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 novel AI accelerators. 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.
As a Software Engineer II on the team, you will be responsible for designing and implementing development tool chain widely used by internal as well as external partners, with focus on tools related to AI hardware simulator, performance estimation and modelling, custom device debugger and integration in environments targeting large scale testing and verification.
We do not just value differences or different perspectives. We seek them out and invite them in so we can tap into the collective power of everyone in the company. As a result, our customers are better served.
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
This is a technical role that demands hands-on software design and development skills, where object-oriented and multi-threaded C++ experience is a must. In addition, computer architecture knowledge, AI related experience, typescript UI experience and/or Azure experience would be a plus. We are seeking a Software Engineer II with an entrepreneurial mindset that will help us not only to develop, but to scale our simulator toolchain to meet our customers’ requirements. In this role, you will be expected to:
- Apply proficient engineering principles to develop robust AI hardware simulator-based toolchain.
- Support integration and maintenance of the developed tool chain into multiple external workflows.
- Collaborate broadly across multiple disciplines from hardware designers to ML developers.
- Independently identify, scope, root-cause, implement, fix and verify bugs and/or feature requests reported/requested by partner teams.
- Software design, development and debugging in C++, Python, and other languages.
Other:
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 experience with C++.
- 1+ year(s) of experience in concurrent programing.
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:
- Bachelor's Degree in Computer Science
- OR related technical field AND 4+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript,
- OR Python
- OR Master'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.
- Familiar with software development environment (Azure DevOps preferred)
- Familiar with at least one scripting language (Python preferred
- Computer architecture knowledge. (CPU, DMA, NoC, cache, ASIC)
- Performance optimization or modelling experience.
- Hardware modelling experience.
- Typescript UI experience. (VsCode extension coding preferred)
- Proficient 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 for the role until February 19, 2025.
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.
#MSFTNSBE25
#AIPLATFORM
Tags: Architecture Azure CAD Computer Science DevOps Engineering Java JavaScript Machine Learning Model training Python Security Testing TypeScript
Perks/benefits: Medical leave
More jobs like this
Explore more career opportunities
Find even more open roles below ordered by popularity of job title or skills/products/technologies used.