Principal Site Reliability Engineer
Location: Atlanta, Georgia, Austin, Texas, Charlotte, North Carolina, Chicago, Illinois, Dallas, Texas, Hillsboro, Oregon, Houston, Texas, Los Angeles, California, Orlando, Florida, Redmond, Washington, San Francisco, California, Washington, District of Columbia
Job Type: Full time
At Microsoft, our mission is to empower every person and every organization on the planet to achieve more. As a member of our engineering team within Azure Data group, you will play an integral part in making that happen, navigating us into the future and impacting the lives of people all around the world.
Are you passionate about building state of the art software and running it as a service? Do you enjoy debugging and solving complex problems? Do you want to work in a world class engineering team with an exceptional record of innovation and execution that has made us one of the largest businesses within Microsoft? If yes, keep reading…
The SQL Database team delivers world class relational database server technologies used across the globe on everything from small devices, desktops, and servers to some of the largest Cloud deployments in the world. Everywhere you look, the amount of data being generated in the world is soaring. With this dramatic growth, the importance of the data platform continues to grow tremendously. Data is at the heart of the Cloud. Winning in the Cloud requires rich data services that provide deep insights from data. All of this must be done while supporting high availability, predictability and elasticity; Supporting 100s of terabytes of data; ability to both scale up and scale out; supporting 1000’s of users on a single machine or a query that utilizes 1000’s of cores. Does this sound like an interesting problem? If yes, talk to us in the SQL team. We have made a big bet on our super-successful business winning in the Cloud. We will win by building the world’s best data management Cloud platform and transforming how people use databases. But to do that, we need your help. Our competition is fierce, and our aspirations are bold!
Running software as a service means more than just developing and releasing features. Ensuring reliability and serviceability is critical part of software cycle. This is where you come into the picture. As a Site Reliability Engineer, you will ensure the service of Azure SQL Database or Managed Instance runs smoothly with required reliability and availability. You will design and implement software to automatically resolve issues. You will work closely with feature teams to design, implement and release features that are reliable and serviceable. You will be a cross-domain expert who has a holistic view of our cloud service
This is an opportunity to work with some of the best engineers in the industry to continue to innovate and deliver Azure SQL Database and Managed Instance for the Cloud. The challenges span the entire stack of database technology - connectivity, high availability, programming language, query processing, transaction processing and data management involving 100s of nodes. You will learn what it takes to deploy and run software as a 24x7 enterprise grade cloud service!
We are the Azure Data team which is part of the C+AI Azure organization. This is a once in a lifetime opportunity to be part of a very agile team to tackle hard problems involving distributed systems, and service highly impactful features at a rapid pace.
- Act as subject matter expert for configuring, troubleshooting and monitoring Azure Database/Managed Instance services.
- Identify opportunities and implement automation to resolve and reduce live-site incidents.
- Design and implement solutions to improve service health, manageability, reliability and telemetry.
- Design and implement diagnostics infrastructure to improve product quality and customer satisfaction.
- Own, triage, investigate, and resolve service issues with emphasis on broad communications, learning, and teaching throughout the process.
- Author and maintain functional and technical documentation. Define and maintain process and procedures to run enterprise service.
- Interact with customers as result of escalation from support for issues including performance and availability.
- Mentor, develop and deliver training.
- Ability to meet on-call responsibilities periodically.
- 8+ years of software development or SQL product support experience.
- 5+ years of using debugging tools such as Windbg, Visual Studio and Xperf to debug user dumps or live applications.
- Demonstrated troubleshooting skills in SQL Server/Azure SQL Database with deep understanding in one or more of the following areas:
- Query Processing
- Storage Engine
- SQL Operating System (SQL OS) layer (threading, scheduling and memory management)
- High Availability
- Deep understanding of Windows Operating System level concepts such as processes, threading, memory allocation, and the network stack; understanding of how applications are affected by the above, and ability to debug same.
- Demonstrated influence outside their own immediate team without managerial authority
- Experience in working with multiple teams, including coordinating large projects, communicating well, and exercising initiative when presented with problems.
- Proficient programming skills using managed code such as C#/Java. Ability to read native C/C++ code to debug issues and find answers not documented.
- BS/MS in Computer Science, Engineering and/or equivalent industry experience is preferred.
- Troubleshooting experience in Azure SQL Database or Managed instance.
- Industry experience in software development with automation-related experience.
- Source control software such as git.
- Practical experience running large scale online systems is always an advantage.
- Familiarity withx86 and x64 assembly languages and Managed IL
- Familiarity with CodeQL, Code Coverage and other quality capabilities.
- Knowledge of various memory management designs and applications.
- Skilled with troubleshooting approaches such as a Bayesian network.
- Practical Powershell, Java, Python development experience.
- Experience with:
- AI and Machine Learning skills
- Live event streams
- State machines, Event and Health ModelsMulti-machine deployment operations.
- Large scale testing
- Kusto query language
- Data Warehousing and Reporting
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. We also consider qualified applicants regardless of criminal histories, consistent with legal requirements. 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.