AWS team wins best-paper award for work on automated reasoning

SOSP paper describes lightweight formal methods for validating new S3 data storage service.

At last week’s ACM Symposium on Operating Systems Principles (SOSP), my colleagues at Amazon Web Services and I won a best-paper award for our work using automated reasoning to validate that ShardStore — our new S3 storage node microservice — will do what it’s supposed to. 

Amazon Simple Storage Service (S3) is our fundamental object storage service — fast, cheap, and reliable. ShardStore is the service we run on our storage hardware, responsible for durably storing S3 object data. It’s a ground-up re-thinking of how we store and access data at the lowest level of S3. Because ShardStore is essential for the reliability of S3, it’s critical that it is free from bugs.

Formal verification involves mathematically specifying the important properties of our software and formally proving that our systems never violate those specifications — in other words, mathematically proving the absence of bugs. Automated reasoning is a way to find those proofs automatically.

ResetOperations_Animation.gif
An example of the ShardStore deletion procedure. Deleting the second data chunk in extent 18 (grey box) requires copying the other three chunks to different extents (extents 19 and 20) and resetting the write pointer for extent 18. The log-structured merge-tree itself is also stored on disk (in this case, in extent 17). See below for details.

Traditionally, formal verification comes with high overhead, requiring up to 10 times as much effort as building the system being verified. That’s just not practical for a system as large as S3.

For ShardStore, we instead developed a new lightweight automated-reasoning approach that gives us nearly all of the benefits of traditional formal proofs but with far lower overhead. 

Our methods found 16 bugs in the ShardStore code that would have required time-consuming and labor-intensive testing to find otherwise — if they could have been found at all. And with our method, specifying the software properties to be verified increased the ShardStore codebase by only about 14% — versus the two- to tenfold increases typical of other formal-verification approaches.

Our method also allows the specifications to be written in the same language as the code — in this case, Rust. That allows developers to write new specifications themselves whenever they extend the functionality of the code. Initially, experts in formal verification wrote the specifications for ShardStore. But as the project has progressed, software engineers have taken over that responsibility. At this point, 18% of the ShardStore specifications have been written by developers.

Reference models

One of the central concepts in our approach is that of reference models, simplified instantiations of program components that can be used to track program state under different input conditions.

For instance, storage systems often use log-structured merge-trees (LSMTs), a sophisticated data structure designed to apportion data between memory and different tiers of storage, with protocols for transferring data that take advantage of the different storage media to maximize efficiency.

The state of an LSMT, however — data locations and the record of data access patterns — can be modeled using a simple hash table. A hash table can thus serve as a reference model for the tree.

In our approach, reference models are specified using executable code. Code verification is then a matter of ensuring that the state of a component instantiated in the code matches that of the reference model, for arbitrary inputs. In practice, we found that specifying reference models required, on average, about 1% as much code as the actual component implementations.

Dependency tracking

ShardStore uses LSMTs to track and update data locations. Each object stored by ShardStore is divided into chunks, and the chunks are written to extents, which are contiguous regions of physical storage on a disk. A typical disk has tens of thousands of extents. Writes within each extent are sequential, tracked by a write pointer that defines the next valid write position.

The simplicity of this model makes data writes very efficient. But it does mean that data chunks within an extent can’t be deleted individually. Deleting a chunk from an extent requires transferring all the other chunks in the extent elsewhere and then moving the write pointer back to the beginning of the extent.

The sequence of procedures required to write a single chunk of data using ShardStore — the updating of the merge-tree, the writing of the chunk, the incrementation of the write pointer, and so on — create sets of dependencies between successive write operations. For instance, the position of the write pointer within an extent depends on the last write performed within that extent.

Dependency graph.png
The dependency graph for a sequence of S3 PUT (write) operations, together with the state of the LSM tree and the locations of the data on-disk after the operations have executed.

Our approach requires that we track dependencies across successive operations, which we do by constructing a dependency graph on the fly. ShardStore uses the dependency graph to decide how to most efficiently write data to disk while still remaining consistent when recovering from crashes. We use formal verification to check that the system always constructs these graphs correctly and so always remains consistent.

Test procedures

In our paper, we describe a range of tests, beyond crash consistency, that our method enables, such as concurrent-execution tests and tests of the serializers that map the separate elements of a data structure to sequential locations in memory or storage.

We also describe some of our optimizations to ensure that our verification is thorough. For instance, our method generates random sequences of inputs to test for specification violations. If a violation is detected, the method systematically pares down the input sequence to identify which specific input or inputs caused the error.

We also bias the random-input selector so that it selects inputs that target the same storage pathways, to maximize the likelihood of detecting an error. If each input read from or wrote to a different object, for instance, there would be no risk of encountering a data inconsistency.

We use our lightweight automated-reasoning techniques to validate every single deployment of ShardStore. Before any change reaches production, we check its behavior in hundreds of millions of scenarios by running our automated tools using AWS Batch. 

To support this type of scalable checking, we developed and open-sourced the new Shuttle model checker for Rust code, which we use to validate concurrency properties of ShardStore. Together, these approaches provide a continuous and automated correctness mechanism for one of S3’s most important microservices.

Research areas

Related content

IN, TS, Hyderabad
Are you passionate about solving complex problems with machine learning and scientific rigor? As an Applied Scientist I at Amazon, you will translate real-world business challenges into well-defined scientific problems and build solutions that directly benefit customers. You will work alongside experienced scientists and engineers, applying your expertise in areas such as natural language processing, computer vision, or robotics to design experiments, develop models, and deliver production-ready code. This is a role where your curiosity and technical depth will drive meaningful impact from day one. Key job responsibilities - Design, develop, and implement machine learning models and algorithms to solve well-defined business problems, mapping business goals and metrics to scientific approaches and evaluation criteria. - Write secure, stable, testable, and maintainable production code, applying state-of-the-art data structures and algorithms while following software development best practices at a high quality bar. - Conduct rigorous experiments to evaluate model performance, benchmark results against current research, and iterate on solutions to improve accuracy and customer outcomes. - Collaborate with team members to scope technical approaches, communicate findings through internal research reports, and contribute to peer-reviewed publications when aligned with business needs. - Stay current with research trends in your area of expertise, champion the adoption of recent scientific advancements, and help onboard and mentor scientist interns. A day in the life You might start your morning reviewing experiment results from a model you trained, analyzing performance metrics and identifying areas for improvement. After a design discussion with your team, you refine your approach and push updated code for review. In the afternoon, you read a recent research paper recommended by a senior scientist, exploring whether a new technique could improve your current solution. You wrap up by documenting your methodology so teammates can understand and build on your work. About the team Our team is focused on applying scientific methods and machine learning to solve problems that matter to Amazon's customers. We value rigorous experimentation, clear communication, and a collaborative environment where scientists at every stage of their career can grow. We are building toward solutions that push the boundaries of what is possible, and we are looking for curious, thoughtful scientists who want to contribute to that mission and learn alongside a supportive group of peers.
IN, TS, Hyderabad
Welcome to the Worldwide Returns & ReCommerce team (WWR&R) at Amazon.com. WWR&R is an agile, innovative organization dedicated to ‘making zero happen’ to benefit our customers, our company, and the environment. Our goal is to achieve the three zeroes: zero cost of returns, zero waste, and zero defects. We do this by developing products and driving truly innovative operational excellence to help customers keep what they buy, recover returned and damaged product value, keep thousands of tons of waste from landfills, and create the best customer returns experience in the world. We have an eye to the future – we create long-term value at Amazon by focusing not just on the bottom line, but on the planet. We are building the most sustainable re-use channel we can by driving multiple aspects of the Circular Economy for Amazon – Returns & ReCommerce. Amazon WWR&R is comprised of business, product, operational, program, software engineering and data teams that manage the life of a returned or damaged product from a customer to the warehouse and on to its next best use. Our work is broad and deep: we train machine learning models to automate routing and find signals to optimize re-use; we invent new channels to give products a second life; we develop highly respected product support to help customers love what they buy; we pilot smarter product evaluations; we work from the customer backward to find ways to make the return experience remarkably delightful and easy; and we do it all while scrutinizing our business with laser focus. You will help create everything from customer-facing and vendor-facing websites to the internal software and tools behind the reverse-logistics process. You can develop scalable, high-availability solutions to solve complex and broad business problems. We are a group that has fun at work while driving incredible customer, business, and environmental impact. We are backed by a strong leadership group dedicated to operational excellence that empowers a reasonable work-life balance. As an established, experienced team, we offer the scope and support needed for substantial career growth. Amazon is earth’s most customer-centric company and through WWR&R, the earth is our customer too. Come join us and innovate with the Amazon Worldwide Returns & ReCommerce team! Key job responsibilities * Design, develop, and evaluate highly innovative models for Natural Language Programming (NLP), Large Language Model (LLM), or Large Computer Vision Models. * Use SQL to query and analyze the data. * Use Python, Jupyter notebook, and Pytorch to train/test/deploy ML models. * Use machine learning and analytical techniques to create scalable solutions for business problems. * Research and implement novel machine learning and statistical approaches. * Mentor interns. * Work closely with data & software engineering teams to build model implementations and integrate successful models and algorithms in production systems at very large scale. About the team When a customer returns a package to Amazon, the request and package will be passed through our WWRR machine learning (ML) systems so that we could improve the customer experience, identify return root cause, optimize re-use, and evaluate the returned package. Our problems touch multiple modalities spanning from: textual, categorical, image, to speech data. We operate at large scale and rely on state-of-the-art modeling techniques to power our ML models: XGBoost, BERT, Vision Transformers, Large Language Models.
US, CA, San Diego
Amazon Leo is an initiative to launch a constellation of Low Earth Orbit satellites that will provide low-latency, high-speed broadband connectivity to unserved and underserved communities around the world. Come work at Amazon! The Role: Be part of the team defining the overall communication system and architecture of Leo’s broadband wireless network. This is a unique opportunity to innovate and define groundbreaking wireless technology with few legacy constraints. The team develops and designs the communication system of Leo and analyzes its overall system level performance such as for overall throughput, latency, system availability, packet loss etc. This role in particular will be responsible for leading the effort in integration, verification and testing of the systems especially focused on MAC and higher layer testing. This role will also be responsible developing and testing advanced L1/L2/L3 concept to improve the performance and reliability of the LEO network. This role will also be part of a team and develop simulation tools with particular emphasis on modeling the physical layer aspects such as advanced receiver modeling and abstraction, interference cancellation techniques, FEC abstraction models etc. In this role you will: - Work within a project team and take the responsibility for the Leo’s communication system design, system integration and verification. - Work as a part of the team in building a suite of system and network simulation services in Matlab / C++ / Python - Develop requirements from system level to HW/SW level and define test cases associated with the requirements. - Identify additional HW and SW that are needed for the purposes of verification and guide the HW/SW development team in the development of these test solutions/tools// - Work closely with implementation teams to simulate expected system level performance and provide quick feedback on potential improvements - Write scripts / code for functions / features required for specific simulation, testing and verification of given RF system EXPORT CONTROL REQUIREMENTS Due to applicable export control laws and regulations, candidates must be a U.S. citizen or national, U.S. permanent resident (i.e., current Green Card holder), or lawfully admitted into the U.S. as a refugee or granted asylum.
US, TX, Austin
Amazon Leo is an initiative to launch a constellation of Low Earth Orbit satellites providing low-latency, high-speed broadband connectivity to unserved and underserved communities around the world. As a Communication Systems Research Scientist, this role owns the research and system design of the radio resource management (RRM) and radio access layers of Amazon Leo’s direct-to-device (D2D) system, delivering 3GPP-compliant service to unmodified commercial handsets. The Role: Be part of the team defining the communication system and architecture of Amazon’s direct-to-device wireless network and analyzing its system level performance: beam and cell capacity, spectral efficiency, coverage, latency and service availability. This is a unique opportunity to innovate with few legacy constraints, in a segment where the standard itself is still being written. This role leads the research and system design of radio resource management (RRM) for a 3GPP Non-Terrestrial Network (NTN), where D2D upends terrestrial assumptions: a power-limited handset with a near-isotropic antenna, very large cells, hopping beams, large time-varying delay and Doppler, and scarce shared spectrum. RRM in time, frequency and spatial domains is the focus, but the role reasons across the stack, from L1/L2 up through RRC, NAS and 5GC interworking. Agentic AI is expected to be a standard part of the work for development, optimization, tests and debugging, with the scientist accountable for the algorithms, models and conclusions. Export Control Requirement: Due to applicable export control laws and regulations, candidates must be a U.S. citizen or national, U.S. permanent resident (i.e., current Green Card holder), or lawfully admitted into the U.S. as a refugee or granted asylum. Key job responsibilities • Research, design and specify RRM algorithms for Amazon Leo’s 3GPP-based D2D system: MAC scheduling, link adaptation, power control, HARQ strategy, DRX, admission and congestion control, and load balancing, mapping 5QI and QoS flow requirements to scheduler behavior across voice, messaging, emergency and data services. • Treat beam management as part of joint resource optimization, not a standalone process, optimizing it with band assignment, packet scheduling and user pairing in multi-user MIMO (MU-MIMO). • Define the RRM framework for NTN conditions: earth-fixed and earth-moving cells, large time-varying propagation delay, ephemeris-assisted timing and Doppler pre-compensation, extended timing advance, selective HARQ feedback disabling, feeder link and satellite handovers, and interference and spectrum sharing across beams, satellites and terrestrial networks using the same MNO spectrum. • Design mobility and service continuity for a network where the base stations (i.e., satellites) move rather than the user: idle and connected mode mobility, location and time based conditional handover, cell reselection, paging, tracking area design, and NTN-to-terrestrial continuity. • Specify supporting L1/L2 elements with the PHY team: numerology under Doppler, PRACH and initial access, coverage enhancement through repetition, synchronization at low SNR, receiver abstraction, and FEC and BLER modeling for link adaptation. • Keep the radio design coherent with the networking layers: RRC and NAS, RLC and PDCP over long-RTT links, CU/DU split, NTN gateway and 5GC/EPC integration, and transport behavior. • Develop link-level and system-level simulators capturing constellation dynamics, beam patterns, handset characteristics, traffic models and RRM behavior, and use agentic AI across that loop: build and refactor simulation code, scale parameter sweeps, optimize scheduler and link adaptation parameters, explore configuration spaces too large to sweep by hand, maintain regression tests, and triage failures across logs, traces and over-the-air captures. • Translate research into system requirements and implementation-level specifications, and work with modem, payload, ground, RF, ASIC and Testbed teams through integration, field trials and link bring-up, root-causing gaps between simulation, implementation and over-the-air behavior in a fast-paced environment. • Represent Amazon Leo in 3GPP and other standards development organizations, develop and defend contributions on NTN and D2D work items, and contribute patents and publications.
US, WA, Seattle
Amazon Economics is seeking Structural IO Economist (STRUC) Interns who are passionate about applying structural econometric methods to solve real-world business challenges. STRUC economists specialize in the econometric analysis of models that involve the estimation of fundamental preferences and strategic effects. In this full-time internship (40 hours per week, with hourly compensation), you'll work with large-scale datasets to model strategic decision-making and inform business optimization, gaining hands-on experience that's directly applicable to dissertation writing and future career placement. By applying to this role, you are automatically being considered for all our available STRUC internships in 2027. Key job responsibilities As a STRUC Economist Intern, you'll specialize in structural econometric analysis to estimate fundamental preferences and strategic effects in complex business environments. Your responsibilities include: - Analyze large-scale datasets using structural econometric techniques to solve complex business challenges - Applying discrete choice models and methods, including logistic regression family models (such as BLP, nested logit) and models with alternative distributional assumptions - Utilizing advanced structural methods including dynamic models of customer or firm decisions over time, applied game theory (entry and exit of firms), auction models, and labor market models - Building datasets and performing data analysis at scale - Collaborating with economists, scientists, and business leaders to develop data-driven insights and strategic recommendations - Tackling diverse challenges including pricing analysis, competition modeling, strategic behavior estimation, contract design, and marketing strategy optimization - Helping business partners formalize and estimate business objectives to drive optimal decision-making and customer value - Build and refine comprehensive datasets for in-depth structural economic analysis - Present complex analytical findings to business leaders and stakeholders
US, VA, Arlington
Want to help Amazon tell its customer-centric story around the world and work in a highly cross-functional environment with economists, lawyers, scientists, public policy, public relations, and business teams? If yes, keep reading! You'll join a team of economists, engineers, and lawyers to develop economic analysis and evidence supporting legal and regulatory matters across all our lines of business worldwide—including retail, marketplace services, AWS, consumer experience, shopping and search, and operations. In this role, you will have exposure to complex regulatory issues that are of high strategic importance to the company and will develop significant expertise on the economics of Amazon’s business operations and the industries in which it operates. Key job responsibilities: • Provide data-driven guidance on high-stakes legal and regulatory questions facing Amazon worldwide • Collaborate with economists, scientists, engineers, and non-technical partners on high-impact projects with global scope • Partner with global public policy teams to apply economic analyses to current policy debates on competition, AI, and related issues • Engage with external stakeholders to drive deeper understanding of Amazon’s business model and the value it develops for the economy • Support requests for economic analyses and data in ongoing regulatory and litigation matters worldwide • Synthesize business facts and data into compelling economic narratives, translating complex findings into actionable insights • Advise stakeholders across Amazon on a broad spectrum of complex and often novel economic issues • Conduct, direct, and coordinate all phases of research projects—defining key questions, evaluating methodology, executing analysis, and communicating results If you're an economist with a passion for the current legal and policy debate, strong practical judgment and creative problem-solving skills, a love of communicating economic ideas to non-technical audiences, a knack for distilling data and economic models into key insights, and a track record of delivering results fast, we want to talk to you! Internal job description Basic qualifications • PhD in Economics or closely related field Preferred qualifications • 5+ years of economic consulting, regulatory, or policy-relevant experience. • Significant economic consulting, regulatory, or policy-relevant experience • Broad experience consulting on international competition litigation and regulatory issues, including in emerging economies. • Multilingual verbal and written communications skills. • Strong background in program evaluation methods, empirical industrial organization methods, applications to business problems, and/or big data. • Ability to work in a fast-paced business environment. • Strong research track record. • Preferred specialties in applied micro or empirical IO, but behavioral economists and generalists with significant competition experience are also encouraged to apply. • Familiarity with government data sources. • Familiarity with Internet, software, and/or media industries and the legal and regulatory environment in which they operate. • Exceptional verbal and written communications skills.
US, WA, Seattle
Amazon Economics is seeking Reduced Form Causal Analysis (RFCA) Economist Interns who are passionate about applying econometric methods to solve real-world business challenges. RFCA represents the largest group of economists at Amazon, and these core econometric methods are fundamental to economic analysis across the company. In this a full-time internship (40 hours per week, with hourly compensation). You'll work with large-scale datasets to analyze causal relationships and inform strategic business decisions, gaining hands-on experience that's directly applicable to dissertation writing and future career placement. By applying to this role, you are automatically being considered for all our available RFCA internships in 2027. Key job responsibilities As an RFCA Economist Intern, you'll specialize in econometric analysis to determine causal relationships in complex business environments. Your responsibilities include: - Analyze large-scale datasets using advanced econometric techniques to solve complex business challenges - Applying econometric techniques such as regression analysis, binary variable models, cross-section and panel data analysis, instrumental variables, and treatment effects estimation - Utilizing advanced methods including differences-in-differences, propensity score matching, synthetic controls, and experimental design - Building datasets and performing data analysis at scale - Collaborating with economists, scientists, and business leaders to develop data-driven insights and strategic recommendations - Tackling diverse challenges including program evaluation, elasticity estimation, customer behavior analysis, and predictive modeling that accounts for seasonality and time trends - Build and refine comprehensive datasets for in-depth economic analysis - Present complex analytical findings to business leaders and stakeholders
US, MA, Boston
We are looking for researchers who aim to build super-intelligent AI systems that leverage proof assistants to guide learning and reasoning. Our neuro-symbolic AI technology is applied across a wide range of science and engineering domains within Amazon, and you will join the team at the forefront of this research. As an Applied Scientist, you will play a pivotal role in shaping the definition, vision, and development of product features from beginning to end. You will: - Define and implement new neuro-symbolic applications that employ scalable and efficient approaches to solve complex problems. - Work in an agile, startup-like development environment, where you are always working on the most important stuff. - Deliver high-quality scientific artifacts. About the team We work closely with academia. Our team includes an Amazon Scholar in mathematics, and we maintain active research collaborations with faculty at leading CS departments (MIT, Berkeley, CMU).
IN, KA, Bengaluru
RBS (Retail Business Services) Tech team works towards enhancing the customer experience (CX) and their trust in product data by providing technologies to find and fix Amazon CX defects at scale. Our platforms help in improving the CX in all phases of customer journey, including selection, discoverability & fulfilment, buying experience and post-buying experience (product quality and customer returns). The team also develops GenAI platforms for automation of Amazon Stores Operations. As a Sciences team in RBS Tech, we focus on foundational ML research and develop scalable state-of-the-art ML solutions to solve the problems covering customer experience (CX) and Selling partner experience (SPX). We work to solve problems related to multi-modal understanding (text and images), task automation through multi-modal LLM Agents, supervised and unsupervised techniques, multi-task learning, multi-label classification, aspect and topic extraction for Customer Anecdote Mining, image and text similarity and retrieval using NLP and Computer Vision for product groupings and identifying duplicate listings in product search results. Key job responsibilities As an Applied Scientist, you will be responsible to design and deploy scalable GenAI, NLP and Computer Vision solutions that will impact the content visible to millions of customer and solve key customer experience issues. You will develop novel LLM, deep learning and statistical techniques for task automation, text processing, image processing, pattern recognition, and anomaly detection problems. You will define the research and experiments strategy with an iterative execution approach to develop AI/ML models and progressively improve the results over time. You will partner with business and engineering teams to identify and solve large and significantly complex problems that require scientific innovation. You will help the team leverage your expertise, by coaching and mentoring. You will contribute to the professional development of colleagues, improving their technical knowledge and the engineering practices. You will independently as well as guide team to file for patents and/or publish research work where opportunities arise. The RBS org deals with problems that are directly related to the selling partners and end customers and the ML team drives resolution to organization level problems. Therefore, the Applied Scientist role will impact the large product strategy, identifies new business opportunities and provides strategic direction which is very exciting.
IN, KA, Bengaluru
Amazon Advertising Trust is on a mission to redefine how trust is enforced at internet scale, and we are looking for exceptional scientists to help lead the way. We are building systems that reason about advertising content the way a trained human would, at a industry leading volume and speed, and that keep working when the rules change underneath them. At Ads Trust Science we leverage machine learning, generative AI, and large-scale retrieval to solve some of the most complex decision problems for ads worldwide. Every ad shown across Amazon's owned-and-operated properties and third-party networks, in every format and every global marketplace, depends on decisions our systems make. We are just getting started. As a Senior Applied Scientist you will be at the forefront of this work. You will own science problems end to end, bridging the gap between research and production impact. You will not be handed a specification. You will be given a customer problem, a system that partly solves it, and the latitude to decide what to build next. This is a unique opportunity to work at the intersection of multimodal understanding, large language models, and large-scale retrieval, on a problem where the science is genuinely unsettled. You will work alongside scientists whose models run in front of hundreds of millions of customers, at a scale that changes which approaches are even possible. A day in the life - Ship a model into production, then find and document where it fails once real traffic reaches it. - Drive the technical discussion, inside your team and with partner teams, on how to close that gap. - Bring a fresh angle to a problem that is not yours and help a peer get further than they would have alone, building trust across the team in the process. - Mentor while staying hands-on. At this level the design and the code are both yours. About the team Ads Trust Science is a group of scientists who would rather change what the team measures than optimise the wrong number. We value curiosity, rigour, and a bias for action. We expect people to disagree with evidence, to say clearly what did not work, and to iterate quickly toward the solutions that matter.