Jobs and Careers
MI

Software Engineer II - Automated Reasoning and Testing

Microsoft
United Statesfull_timeVerifiedPosted 6 Aug 2024
💰 $208,800/yr($98,300/yr$208,800/yr)

About the role

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 Engin

Apply for this role

Generate a tailored application kit with a matched cover letter, interview prep, and CV highlights — in under 60 seconds.

Apply Now →Generate Application Kit

Free account required — sign up in 30s

Company

Microsoft

View company profile →