Principal Software Engineer
Microsoft Corporation
Azure is the world’s leading cloud offering, trusted by hundreds of millions of users worldwide. The Azure platform needs to meet the performance demands of Azure, Microsoft's cloud services, and server application developers. The Azure and Edge Performance team works on the performance of core Azure components and services. We are responsible for understanding and improving performance end-to-end to help product teams reach performance and efficiency goals for key Azure scenarios.
The Interruption Management Services team within Azure and Edge Performance focuses on ensuring the performance consistency of Azure Virtual Machines, collaborating with teams across Azure on the design and evaluation of the latest generation of platform technologies. Our team’s work requires a combination of understanding low-level hardware and systems operation combined with building a fleet-wide data processing service, data analysis skills and wide enough technical expertise for efficient cooperation with multiple complex ongoing internal Azure technology projects.
We are seeking a Principal Software Engineer who will work with technical leaders to acquire a deep understanding of new technologies in areas including the Azure host and Hyper-V in order to collect the appropriate telemetry, create simulations and experiments, and iterate on performance optimization.
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**
+ Learn and understand the latest developments in the Azure platform at a deep technical level, working with various teams and technical leaders on evaluating and mitigating the performance impact of new Azure platform changes and technologies.
+ Design, conduct, and analyze the results of performance testing (with a focus on performance consistency) on various Azure hardware configurations using both internal and open-source tools.
+ Lead cross-team efforts to improve performance and reliability across Azure.
+ Work with various Azure platform teams to debug and root cause customer performance issues due to the Azure platform, while understanding and improving telemetry and debugging tools.
+ Improve our team’s data analysis services and pipelines with new capabilities, better analysis, and improved reliability at the scale of the entire Azure fleet.
**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, C++, C#, Java, JavaScript, or Python
+ OR equivalent experience
+ 5+ years of experience with Windows and/or Linux operating system internals e.g., virtualization, scheduling, interrupts, threading, memory management, etc. and system architecture
+ 5+ years of experience with software performance analysis skills in areas like virtualization, hardware and software interactions, and concurrency
**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:**
+ 6+ years of experience coding in C/C++ Demonstrated ability to understand and prototype performance improvements of OS-level components and develop analysis tools
+ Ability to communicate and collaborate effectively across disciplines and teams
+ Experience with hypervisor internals (i.e. Microsoft Hyper-V, KVM, Xen, etc.) and virtualization concepts and technologies
+ Experience with Windows and/or Linux performance testing and benchmarking
+ Experience developing workloads for system-level components
+ Experience with developing cloud services in Azure, AWS or GCP
+ Experience building and owning telemetry and data pipelines end-to-end at cloud scale
Software Engineering IC5 - The typical base pay range for this role across the U.S. is USD $137,600 - $267,000 per year. There is a different range applicable to specific work locations, within the San Francisco Bay area and New York City metropolitan area, and the base pay range for this role in those locations is USD $180,400 - $294,000 per year.
Certain roles may be eligible for benefits and other compensation. Find additional benefits and pay information here: https://careers.microsoft.com/us/en/us-corporate-pay
Microsoft will accept applications for the role until March 19, 2025.
Microsoft is an equal opportunity employer. Consistent with applicable law, all qualified applicants will receive consideration for employment without regard to age, ancestry, citizenship, color, family or medical care leave, gender identity or expression, genetic information, immigration status, marital status, medical condition, national origin, physical or mental disability, political affiliation, protected veteran or military status, race, ethnicity, religion, sex (including pregnancy), sexual orientation, or any other characteristic protected by applicable local laws, regulations and ordinances. If you need assistance and/or a reasonable accommodation due to a disability during the application process, read more about requesting accommodations (https://careers.microsoft.com/v2/global/en/accessibility.html) .
Confirm your E-mail: Send Email
All Jobs from Microsoft Corporation