Software Engineer II
Microsoft
Software Engineer II
Multiple Locations, United States
Save
Overview
The Azure Compute team builds fault-tolerant distributed systems on top of commodity datacenter hardware to deliver infrastructure for hosting cloud applications in virtual machines. The team’s goal is to create the experience that resources are limitless, elastic, and always available.
This role is part of the Availability Platform team within Azure Compute, which focuses on ensuring that every Azure virtual machine achieves a service level agreement of 99.99 percent or higher. Meeting and exceeding this target requires creative problem-solving, data-driven decision-making, and intelligent automation. The team owns services that monitor the health of millions of Azure machines and control plane services that drive repair decisions. Artificial intelligence and machine learning are used to build predictive failure models that proactively live-migrate virtual machines before failures occur, minimizing customer impact and improving platform resilience.
We are also exploring the use of generative artificial intelligence to enhance diagnostics, automate root cause analysis, and accelerate incident resolution. Collaboration with data scientists and artificial intelligence researchers enables continuous evolution of the platform with smarter, self-healing capabilities. As a Software Engineer II, you will join a team that invests in people and technology for the long term, emphasizing thoughtful design, incremental development, frequent shipping, and responsiveness to customer feedback. This is a hands-on opportunity to work on services architecture at hyperscale and help redefine cloud infrastructure.
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.
- 1+ years of experience in large-scale distributed systems analysis and troubleshooting.
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.
#Azurecorejobs
Responsibilities
- Partners with appropriate stakeholders spanning across teams and orgs to determine project requirements
- Leads the design and architecture of change management features and services in Azure Compute
- Identifies dependencies and authors design documents for features and services.
- Leverages expertise with appropriate stakeholders to develop project plans, release plans, and work items.
- Develops high quality, extensible, maintainable code and coaches others to do the same.
- Supports livesite as Designated Responsible Individual (DRI), mentoring engineers across products/solutions, working on-call to monitor system/product/service for degradation, downtime, or interruptions.
- Proactively seeks new knowledge and adapts 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 shares knowledge with other engineers.