Software Engineer II - Automated Reasoning and Testing

Redmond, Washington


Employer: Microsoft
Industry: Software Engineering
Salary: $193200 per year
Job type: Full-Time

Our team in Azure Storage is working on applying automated reasoning and validation/testing techniques to scalably generate hundreds of thousands of tests to check data integrity and durability issues, and scalably validate a combinatorial number of feature interactions to catch regressions and subtle bugs that only happen under rare conditions. The Azure Storage team builds and runs the Storage layer underpinning all of Azure and its correctness and performance impacts the correctness and performance of nearly every other Azure service.

As a Software Engineer II - Automated Reasoning and Testing in this team, not only will you get an opportunity to use tools to specify and check the integrity, correctness and performance guarantees of a large and critical Azure service, you will also get an opportunity to work on building and improving the tools themselves as well as learn about existing state-of-the-art tools in this space. The lessons you will learn will be broadly applicable to any distributed system and will help accelerate your growth as a disciplined and thoughtful distributed systems engineer.

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:

  • Works with appropriate stakeholders to determine user requirements for a set of features.
  • Contributes to the identification of dependencies, and the development of design documents for a product area with little oversight.
  • Creates and implements code for a product, service, or feature, reusing code as applicable.
  • Contributes to efforts to break down larger work items into smaller work items and provides estimation.
  • Acts as a Designated Responsible Individual (DRI) working on-call to monitor system/product feature/service for degradation, downtime, or interruptions and gains approval to restore system/product/service for simple problems.
  • Remains current in skills by investing time and effort into staying abreast of current developments that will improve the availability, reliability, efficiency, observability, and performance of products while also driving consistency in monitoring and operations at scale.
  • Embody our Culture and Values


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, Go, Rust, or Python
    • OR equivalent experience.

  • 2+ years experience in one or more of the following areas:
    • Distributed Systems

    • RESTful Services
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 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, or Python

    • OR equivalent experience.

  • Experience with model-checking tools like TLA+

  • Designing and running large-scale fault-tolerant infrastructure services
  • Experience with and fuzzing property-based testing tools like QuickCheck, Hypothesis,

  • Experience with concurrency testing tools like Coyote, Shuttle and others
Software Engineering IC3 - The typical base pay range for this role across the U.S. is USD $98,300 - $193,200 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 $127,200 - $208,800 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 August 27, 2024.

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.

#azurecorejobs

Created: 2024-08-22
Reference: 1746302
Country: United States
State: Washington
City: Redmond


Similar jobs: