Principal Software Engineer
Microsoft
Principal Software Engineer
Sydney, New South Wales, Australia
Save
Overview
The Data Processing Unit (DPU) team combines advanced software and hardware expertise to create a highly programmable and high-performance application-specific integrated circuit (ASIC) designed to efficiently process large data streams. This integrated solution enables improved agility and performance compared to central processing unit (CPU)-based alternatives and is being integrated into Microsoft Azure cloud products. We are looking for engineers with experience in operating systems, formal methods, or programming languages to help implement proven approaches that enhance productivity and deliver the next generation of confidential computing.
We are seeking a Principal Software Engineer to join the DPU Runtime Operating System team. In this role, you will develop high-performance, scalable, and programmable DPU software that applies formal methods and programming languages to produce reliable code and runtime configurations.
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 6+ years technical engineering experience with coding in languages including, but not limited to, C, Python, F-star, Haskell, Isabele.
- OR equivalent experience.
- 1+ years of embedded and/or Operating System software development experience
Preferred Qualifications:
- 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++, C#, Java, JavaScript, OR Python
- OR Master's Degree in Computer Science or related technical field AND 8+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python
- OR equivalent experience.
- 1+ years of experience implementing formally verified software or tools, with experience applying it to large scale commercial systems and teams.
- 1+ years of experience developing domain specific languages and compilers, and deploying them for use within an engineering organization
- 1+ experience applying and automating formal methods to reduce engineering development costs, defect rate, and on-going maintenance costs
Other Qualifications:
- 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.
#azurecorejobs
Responsibilities
- Partner with appropriate stakeholders and the DPU Confidential Compute team to determine user requirements for a set of scenarios.
- Lead identification of dependencies, architecture, design, and development of DPU operating systems and supporting software.
- Work closely with the DPU ASIC and Software teams on co-development of next generation Silicon and software features.
- Work closely with our software stack developers and operations support when needed.
- Lead by example and mentor others to produce extensible and maintainable code used across products.
- Leverage subject-matter expertise of cross-product features with appropriate stakeholders (e.g., project managers) to drive multiple group's project plans, release plans, and work items.
- Proactively seek new knowledge and adapt to new trends, technical solutions, and patterns that will improve the availability, reliability, efficiency, observability, and performance of products while also driving consistency in monitoring and operations at scale and share knowledge with other engineers.