Principal Software Engineer- DPU team
Microsoft
Principal Software Engineer- DPU team
Sydney, New South Wales, Australia
Save
Overview
The Data Processing Unit (DPU) team brings together state-of-the-art software and hardware expertise to create a highly programmable and high-performance ASIC with the capability to efficiently handle large data streams. Thanks to its integrated design, this solution empowers teams to operate with increased agility and deliver significantly superior performance compared to CPU-based alternatives. We are integrating this groundbreaking capability into our Azure cloud products. We invite you to join our team and apply your expertise in formal methods to implement proven approaches that enhance productivity and deliver the next generation of Confidential Compute.
As a Principal Software Engineer and member of our DPU Runtime Operating System team, you will be responsible for developing cutting edge, high-performance, scalable and programmable DPU software that applies and utilizes formal methods to output highly reliable code and runtime configuration.
You will be spearheading efforts within our DPU Confidential Compute team, focusing on the development, maintenance, and review of software for the creation of advanced tools that ensure precise confidential computing system configurations from specification through deployment. This role is also tasked with investigating the broader application of formal methods to enhance productivity and minimize manual effort.
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, Lustre, and F star
- OR equivalent experience.
- 3+ years of experience implementing formally verified software or tools, with experience applying it to large scale commercial systems and teams.
- 3+ years of experience developing domain specific languages and compilers, and deploying them for use within an engineering organization.
- 2+ 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.
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.
- 2+ years of experience with modern CPU architecture
- 1+ years of experience formally verifying hardware designs or applying formal verification to hardware
- 1+ year(s) experience with pre and post Silicon Software Development
#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 formal methods software tools that guarantee accurate confidential computing system configurations from specification to deployment, ensuring proper software and hardware setup for data protection without extensive manual attestation.
- Develop a roadmap and strategy for applying formal methods to existing code bases that improves productivity and correctness of implementation, resulting in high quality, bug free code.
- Work closely with the DPU ASIC and Software teams on co-development of next generation
- Silicon and software features that benefit from the application formal methods.
- 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.