Lessons learned from 10 years of DynamoDB

Prioritizing predictability over efficiency, adapting data partitioning to traffic, and continuous verification are a few of the principles that help ensure stability, availability, and efficiency.

Amazon DynamoDB is one of the most popular NoSQL database offerings on the Internet, designed for simplicity, predictability, scalability, and reliability. To celebrate DynamoDB’s 10th anniversary, the DynamoDB team wrote a paper describing lessons we’d learned in the course of expanding a fully managed cloud-based database system to hundreds of thousands of customers. The paper was presented at this year’s USENIX ATC conference.

The paper captures the following lessons that we have learned over the years:

  • Designing systems for predictability over absolute efficiency improves system stability. While components such as caches can improve performance, they should not introduce bimodality, in which the system has two radically different ways of responding to similar requests (e.g., one for cache misses and one for cache hits). Consistent behaviors ensure that the system is always provisioned to handle the unexpected. 
  • Adapting to customers’ traffic patterns to redistribute data improves customer experience. 
  • Continuously verifying idle data is a reliable way to protect against both hardware failures and software bugs in order to meet high durability goals. 
  • Maintaining high availability as a system evolves requires careful operational discipline and tooling. Mechanisms such as formal proofs of complex algorithms, game days (chaos and load tests), upgrade/downgrade tests, and deployment safety provide the freedom to adjust and experiment with the code without the fear of compromising correctness. 
Related content
Amazon DynamoDB was introduced 10 years ago today; one of its key contributors reflects on its origins, and discusses the 'never-ending journey' to make DynamoDB more secure, more available and more performant.

Before we dig deeper into these topics, a little terminology. A DynamoDB table is a collection of items (e.g., products), and each item is a collection of attributes (e.g., name, price, category, etc.). Each item is uniquely identified by its primary key. In DynamoDB, tables are typically partitioned, or divided into smaller sub-tables, which are assigned to nodes. A node is a set of dedicated computational resources — a virtual machine — running on a single server in a datacenter.

DynamoDB stores three copies of each partition, in different availability zones. This makes the partition highly available and durable because the availability zones’ storage resources share nothing and are substantially independent. For instance, we wouldn’t assign a partition and one of its copies to nodes that share a power supply, because a power outage would take both of them offline. The three copies of the same partition are known as a replication group, and there is a leader for the group that is responsible for replicating all the customer mutations and serving strongly consistent reads.

DynamoDB architecture.png
The DynamoDB architecture, including a request router, the partition metadata system, and storage nodes in different availability zones (AZs).

Those definitions in hand, let’s turn to our lessons learned.

Predictability over absolute efficiency

DynamoDB employs a lot of metadata caches in order to reduce latency. One of those caches stores the routing metadata for data requests. This cache is deployed on a fleet of thousands of request routers, DynamoDB’s front-end service.

In the original implementation, when the request router received the first request for a table, it downloaded the routing information for the entire table and cached it locally. Since the configuration information about partition replicas rarely changed, the cache hit rate was approximately 99.75%.

Related content
How Alexa scales machine learning models to millions of customers.

This was an amazing hit rate. However, on the flip side, the fallback mechanism for this cache was to hit the metadata table directly. When the cache becomes ineffective, the metadata table needs to instantaneously scale from handling 0.25% of requests to 100%. The sudden increase in traffic can cause the metadata table to fail, causing cascading failure in other parts of the system. To mitigate against such failures, we redesigned our caches to behave predictably.

First, we built an in-memory datastore called MemDS, which significantly reduced request routers’ and other metadata clients’ reliance on local caches. MemDS stores all the routing metadata in a highly compressed manner and replicates it across a fleet of servers. MemDS scales horizontally to handle all incoming requests to DynamoDB.

Second, we deployed a new local cache that avoids the bimodality of the original cache. All requests, even if satisfied by the local cache, are asynchronously sent to the MemDS. This ensures that the MemDS fleet is always serving a constant volume of traffic, regardless of cache hit or miss. The regular exercise of the fallback code helps prevent surprises during fallback.

DDB-MemDS.png
DynamoDB architecture with MemDS.

Unlike conventional local caches, MemDS sees traffic that is proportional to the customer traffic seen by the service; thus, during cache failures, it does not see a sudden amplification of traffic. Doing constant work removed the need for complex logic to handle edge cases around cache misses and reduced the reliance on local caches, improving system stability.

Reshaping partitioning based on traffic

Partitions offer a way to dynamically scale both the capacity and performance of tables. In the original DynamoDB release, customers explicitly specified the throughput that a table required in terms of read capacity units (RCUs) and write capacity units (WCUs). The original system assigned partitions to nodes based on both available space and computational capacity.

Related content
Optimizing placement of configuration data ensures that it’s available and consistent during “network partitions”.

As the demands on a table changed (because it grew in size or because the load increased), partitions could be further split to allow the table to scale elastically. Partition abstraction proved really valuable and continues to be central to the design of DynamoDB.

However, the early version of DynamoDB assigned both space and capacity to individual partitions on the basis of size, evenly distributing computational resources across table entries. This led to challenges of “hot partitions” and throughput dilution.

Hot partitions happened because customer workloads were not uniformly distributed and kept hitting a subset of items. Throughput dilution happened when partitions that had been split to handle increased load ended up with so few keys that they could quickly max out their meager allocated capacity.

Our initial response to these challenges was to add bursting and adaptive capacity (along with other features such as split for consumption) to DynamoDB. This line of work also led to the launch of on-demand tables.

Bursting is a way to absorb temporal spikes in workloads at a partition level. It’s based on the observation that not all partitions hosted by a storage node use their allocated throughput simultaneously.

Related content
Amazon researchers describe new method for distributing database tables across servers.

The idea is to let applications tap into unused capacity at a partition level on a best-effort basis to absorb short-lived spikes. DynamoDB still maintains workload isolation by ensuring that a partition can burst only if there is unused throughput at the node level.

DynamoDB also launched adaptive capacity to handle long-lived spikes that cannot be absorbed by the burst capacity. Adaptive capacity monitors traffic patterns and repartitions tables so that heavily accessed items reside on different nodes.

Both bursting and adaptive capacity had limitations, however. Bursting was helpful only for short-lived spikes in traffic, and it was dependent on nodes’ having enough throughput to support it. Adaptive capacity was reactive and kicked in only after transmission rates had been throttled down to avoid overloads.

To address these limitations, the DynamoDB team replaced adaptive capacity with global admission control (GAC). GAC builds on the idea of token buckets, in which bandwidth is allocated to network nodes as tokens, and the nodes “cash in” tokens in order to transmit data. Each request router maintains a local token bucket and communicates with GAC to replenish tokens at regular intervals (on the order of every few seconds). For an extra layer of defense, DynamoDB also uses token buckets at the partition level.

Continuous verification 

To provide durability and crash recovery, DynamoDB uses write-ahead logs, which record data writes before they occur. In the event of a crash, DynamoDB can use the write-ahead logs to reconstruct lost data writes, bringing partitions up to date.

Write-ahead logs are stored in all three replicas of a partition. For higher durability, the write-ahead logs are periodically archived to S3, an object store that is designed for more than 99.99% (in fact, 11 nines) durability. Each replica contains the most recent write-ahead logs, which are usually waiting to be archived. The unarchived logs are typically a few hundred megabytes in size.

Storage replica vs. log replica.png
Healing a storage replica by copying the B-tree can take several minutes, while adding a log replica, which takes only a few seconds, ensures that there is no impact on durability.

DynamoDB continuously verifies data at rest. Our goal is to detect any silent data errors or “bit rot” — bit errors caused by degradation of the storage medium. An example of continuous verification is the scrub process.

The scrub process verifies two things: that all three copies in a replication group have the same data and that the live replicas match a reference replica built offline using the archived write-ahead-log entries.

The verification is done by computing the checksum of the live replica and matching that with a snapshot of the reference replica. A similar technique is used to verify replicas of global tables. Over the years, we have learned that continuous verification of data at rest is the most reliable method of protecting against hardware failures, silent data corruption, and even software bugs.

Availability

DynamoDB regularly tests its resilience to node, rack, and availability zone (AZ) failures. For example, to test the availability and durability of the overall service, DynamoDB performs power-off tests. Using realistic simulated traffic, a job scheduler powers off random nodes. At the end of all the power-off tests, the test tools verify that the data stored in the database is logically valid and not corrupted.

Related content
Amazon Athena reduces query execution time by 14% by eliminating redundant operations.

The first point about availability is that it needs to be measurable. DynamoDB is designed for 99.999% availability for global tables and 99.99% availability for regional tables. To ensure that these goals are being met, DynamoDB continuously monitors availability at the service and table levels. The tracked availability data is used to estimate customer-perceived availability trends and trigger alarms if the number of errors that customers see crosses a certain threshold.

These alarms are called customer-facing alarms (CFAs). The goal of these alarms is to report any availability-related problems and proactively mitigate them either automatically or through operator intervention. The key point to note here is that availability is measured not only on the server side but on the client side.

We also use two sets of clients to measure the user-perceived availability. The first set of clients is internal Amazon services using DynamoDB as the data store. These services share the availability metrics for DynamoDB API calls as observed by their software.

The second set of clients is our DynamoDB canary applications. These applications are run from every AZ in the region, and they talk to DynamoDB through every public endpoint. Real application traffic allows us to reason about DynamoDB availability and latencies as seen by our customers. The canary applications offer a good representation of what our customers might be experiencing both long and short term.

The second point is that read and write availability need to be handled differently. A partition’s write availability depends on the health of its leader and of its write quorum, meaning two out of the three replicas from different AZs. A partition remains available as long as there are enough healthy replicas for a write quorum and a leader.

Related content
“Anytime query” approach adapts to the available resources.

In a large service, hardware failures such as memory and disk failures are common. When a node fails, all replication groups hosted on the node are down to two copies. The process of healing a storage replica can take several minutes because the repair process involves copying the B-tree — a data structure that maps partitions to storage locations — and write-ahead logs.

Upon detecting an unhealthy storage replica, the leader of a replication group adds a log replica to ensure there is no impact on durability. Adding a log replica takes only a few seconds, because the system has to copy only the most recent write-ahead logs from a healthy replica; reconstructing the more memory-intensive B-tree can wait. Quick healing of affected replication groups using log replicas thus ensures the high durability of the most recent writes. Adding a log replica is the fastest way to ensure that the write quorum of the group is always met. This minimizes disruption to write availability due to an unhealthy write quorum. The leader replica serves consistent reads.

Introducing log replicas was a big change to the system, but the Paxos consensus protocol, which is formally provable, gave us the confidence to safely tweak and experiment with the system to achieve higher availability. We have been able to run millions of Paxos groups in a region with log replicas. Eventually, consistent reads can be served by any of the replicas. In case a leader fails, other replicas detect its failure and elect a new leader to minimize disruptions to the availability of consistent reads.

Research areas

Related content

US, WA, Seattle
Are you a PhD interested in machine learning, natural language processing, computer vision, automated reasoning, robotics, or quantum technologies? We are looking for skilled scientists capable of putting theory into practice through experimentation and invention, leveraging science techniques and implementing systems to work on massive datasets in an effort to tackle never-before-solved problems. A successful candidate will be a self-starter comfortable with ambiguity, strong attention to detail, and the ability to work in a fast-paced, ever-changing environment. As an Applied Scientist, you will own the design and development of end-to-end systems. You’ll have the opportunity to create technical roadmaps, and drive production level projects that will support Amazon Science. You will work closely with Amazon scientists, and other science interns to develop solutions and deploy them into production. The ideal scientist must have the ability to work with diverse groups of people and cross-functional teams to solve complex business problems. Key job responsibilities Amazon Science gives insight into the company’s approach to customer-obsessed scientific innovation. Amazon fundamentally believes that scientific innovation is essential to being the most customer-centric company in the world. It’s the company’s ability to have an impact at scale that allows us to attract some of the brightest minds in artificial intelligence and related fields. Our scientists use our working backwards method to enrich the way we live and work. For more information on the Amazon Science community please visit https://www.amazon.science.
US, WA, Seattle
What happens when you give AI the ability to remember? Not cached responses — real structured memory that compounds over time and transfers across contexts. We're building the science behind this, and we need researchers who want to own the problem end-to-end. This is a founding role on a new team. You won't inherit models or maintain someone else's pipeline. You'll define the research direction, run experiments at scale, and ship what works directly to production. Key job responsibilities As an Applied Scientist in our team, you will be responsible for the research, design, and development of new AI technologies for knowledge acquisition and retrieval. You will adopt or invent new machine learning and analytical techniques in the realm of information retrieval, knowledge representation, and large language models. Specific responsibilities include: 1. Design and implement novel approaches to knowledge extraction from heterogeneous, unstructured data sources at organizational scale. 2. Build retrieval systems that match intent to relevant knowledge across domains — solving the "right memory at the right time" problem. 3. Own the quality of memory generation: what to capture, how to structure it, when to surface it, and when to let it decay. 4. Run large-scale experiments using Amazon's compute infrastructure and massive real-world datasets. 5. Develop evaluation frameworks for a system where "quality" means something new — right knowledge, right context, right confidence level. 6. Collaborate with engineers to move from research prototype to production system in weeks, not quarters. 7. Invent new approaches to temporal knowledge management — how memories age, conflict, and compound over time. 8. Publish and patent novel approaches to knowledge acquisition and retrieval at top-tier venues. A day in the life You will solve real-world problems by getting and analyzing large amounts of data, generate insights and opportunities, execute experiments, and develop statistical and ML models. The team is driven by business needs, which requires collaboration with other Scientists, Engineers, and Product Managers across the organization. You get to influence stakeholders with clear communication skills. You innovate on behalf of the customer and strategically build features. You will mentor junior members and help them grow. About the team We're a new team within Personalization, focused on a different kind of recommendation: not "what product should this customer see" but "what knowledge should this AI use right now." Same scale, same rigor, entirely new problem space. The science is at the intersection of information retrieval, knowledge representation, and LLM reasoning — and the right approach hasn't been established yet. The team values innovation and offers a safe place to try, fail, and learn while fostering a culture of continuous improvement. Everyone is a leader and owner for everything we do as a team. We offer creative space with an entrepreneurial work environment focusing on customer obsession.
US, WA, Seattle
At Amazon Selection and Catalog Systems (ASCS), our mission is to power the online buying experience for customers worldwide so they can find, discover, and buy any product they want. We innovate on behalf of our customers to ensure uniqueness and consistency of product identity and to infer relationships between products in Amazon Catalog to drive the selection gateway for the search and browse experiences on the website. We're solving a fundamental AI challenge: establishing product relevant information at unprecedented scale with Frontier Models and Agents. The scale is staggering: billions of products, petabytes of multimodal data, millions of sellers, dozens of languages, and infinite product diversity ranging from electronics to groceries to digital content. The research challenges are immense. GenAI and VLMs hold transformative promise for catalog understanding, but we operate where traditional methods fail: ambiguous problem spaces, incomplete and noisy data, inherent uncertainty, reasoning across both images and textual data, and explaining decisions at scale. Enriching product information requires sophisticated models that reason across text, images, and structured data, all while maintaining accuracy and trust for high-stakes business decisions affecting millions of customers daily. Amazon's Catalog System Services Science team is looking for an innovative and customer-focused applied scientist to help us make the world's best product catalog even better. In this role, you will partner with technology and business leaders to build new state-of-the-art algorithms, models, and services. You will pioneer advanced GenAI solutions that power next-generation agentic shopping experiences, working in a collaborative environment where you can experiment with massive data from the world's largest product catalog, tackle problems at the frontier of AI research, rapidly implement and deploy your algorithmic ideas at scale, across millions of customers. Key job responsibilities - Formulate novel research problems at the intersection of GenAI, multimodal learning, and large-scale information retrieval. In essence, translating ambiguous business challenges into tractable scientific frameworks - Design and implement leading models leveraging frontier models, and agentic architectures to enrich catalog information at billion-product scale - Pioneer explainable AI methodologies that balance model performance with scalability requirements for production systems impacting millions of daily customer decisions - Own end-to-end ML pipelines from research ideation to production deployment, processing petabytes of multimodal data with rigorous evaluation frameworks - Represent the team in the broader science community - publishing findings, delivering tech talks, and staying at the forefront of GenAI, VLM, and agentic system research
IN, HR, Gurugram
Building large-scale forecasting and optimization systems that power Amazon’s global transportation network and directly impact customer experience and cost. Key job responsibilities 1. Guide model and system design across a range of techniques, including tree-based models, deep learning (LSTMs, transformers), LLMs, and reinforcement learning. 2. Ensure models are production-ready, scalable, and robust through close partnership with stakeholders. 3. Partner with Product, Operations, and Engineering leaders to enable proactive decision-making and corrective actions. 4 Own end-to-end business metrics, directly influencing customer experience, cost optimization, and network reliability. 5. Help contribute to the broader ML community through publications, conference submissions, and internal knowledge sharing.
US, WA, Seattle
Prime Video is a first-stop entertainment destination offering customers a vast collection of premium programming in one app available across thousands of devices. Prime members can customize their viewing experience and find their favorite movies, series, documentaries, and live sports – including Amazon MGM Studios-produced series and movies; licensed fan favorites; and programming from Prime Video subscriptions such as Apple TV+, HBO Max, Peacock, Crunchyroll and MGM+. All customers, regardless of whether they have a Prime membership or not, can rent or buy titles via the Prime Video Store, and can enjoy even more content for free with ads. Are you interested in shaping the future of entertainment? Prime Video's technology teams are creating best-in-class digital video experience. As a Prime Video team member, you’ll have end-to-end ownership of the product, user experience, design, and technology required to deliver state-of-the-art experiences for our customers. You’ll get to work on projects that are fast-paced, challenging, and varied. You’ll also be able to experiment with new possibilities, take risks, and collaborate with remarkable people. We’ll look for you to bring your diverse perspectives, ideas, and skill-sets to make Prime Video even better for our customers. With global opportunities for talented technologists, you can decide where a career Prime Video Tech takes you!
US, CA, Sunnyvale
We are looking for a Senior Applied Scientist to help drive the research and development of real-time multimodal conversational AI. You will contribute across two focus areas: advancing foundation models for speech and audio, and building the post-training systems (reward modeling, reinforcement learning) that shape natural, human-like conversational behavior. You will own a significant research area and contribute across the full model lifecycle — from pre-training and architecture design through post-training alignment and real-time deployment. You will work at the frontier of what’s possible in conversational AI, with the compute, data, and runway to pursue problems that few teams in the world have the resources to tackle. As a Senior Scientist, you will drive the technical execution of your research area, contribute to the team’s roadmap, and work closely with inference engineers to ensure your models are designed for real-time production deployment. Key job responsibilities What You’ll Do Foundation Model Scaling - Help build and train large-scale multimodal foundation models for real-time speech and audio generation, from architecture design through production-scale training - Advance the scaling and efficiency of conversational models, including the relationship between data, model size, and real-time performance - Design model architectures informed by hardware constraints and inference requirements, working with inference engineers to ensure models are servable from inception - Develop training methodologies for multimodal models that jointly process and generate speech, language, and audio in real-time streaming contexts - Contribute to the state of the art on efficient architectures and training methods for conversational AI at scale Post-Training & Reinforcement Learning - Design and build reward models and reward functions for speech systems — capturing naturalness, fluency, conversational quality, and real-time responsiveness - Develop and apply reinforcement learning methods to shape conversational behavior — teaching models natural timing, responsiveness, and fluid interaction - Build parts of the post-training pipeline from SFT through RL alignment, optimized for real-time multimodal outputs rather than text-only generation - Design evaluation frameworks that capture the quality dimensions unique to real-time conversation (latency sensitivity, audio quality, prosody, interaction naturalness) Real-Time Perception & Generation - Advance the team’s capabilities in real-time perception — the ability of the model to process incoming audio/speech while simultaneously generating responses - Develop techniques for natural interactive systems where the model handles concurrent input and output with human-like timing - Work at the intersection of model architecture and production constraints to ensure multimodal capabilities function within hard real-time latency budgets
US, NY, New York
Are you excited about applying machine learning and statistical modeling to real-world systems that serve millions of customers? Amazon Connect is a cloud-based contact center service that helps businesses deliver personal, efficient customer experiences. Our team of scientists and engineers builds the AI and ML capabilities that power contact center operations and optimization. We are looking for a Senior Applied Scientist to tackle scientifically complex challenges in areas such as stochastic modeling, queueing theory, anomaly detection, and optimization. In this role, you will design and deploy novel ML models and algorithms that directly improve how businesses interact with their customers. You will work at the intersection of research and production, turning ambiguous problems into scalable solutions that shape the future of cloud-based customer service. Key job responsibilities - Design and deploy novel machine learning models and algorithms to solve complex problems in contact center operations, including forecasting, routing optimization, and anomaly detection. - Lead the scientific agenda for your team by identifying new research opportunities, proposing initiatives, and driving them from concept through production deployment. - Collaborate with engineering teams to architect and implement scalable ML systems, personally contributing significant portions of the critical scientific components. - Mentor fellow scientists and engineers through code reviews, design discussions, and scientific guidance, raising the overall technical bar of the team. - Evaluate and advance the team's ML methodology by benchmarking against current academic and industry research, and by publishing findings internally and externally when appropriate. A day in the life You might start your morning reviewing experiment results from a new forecasting model, then join a design session with engineers to discuss how to integrate it into the production pipeline. After lunch, you could be whiteboarding a novel approach to a queueing optimization problem with a fellow scientist, followed by a code review for a teammate. You will regularly present your research findings to stakeholders across the organization and contribute to the team's publication efforts. About the team Our team within Amazon Connect focuses on building intelligent, ML-driven capabilities that help businesses run their contact centers more effectively. We work closely with product, engineering, and science partners to turn research ideas into features that customers rely on every day. We value curiosity, collaboration, and scientific rigor, and we are investing in new AI capabilities that will continue to transform the customer service industry. If you want to see your research make a tangible impact at scale, this is the place to do it.
ES, B, Barcelona
How does Amazon decide which fulfillment center ships your order, which truck carries it, and how to keep promises across hundreds of millions of packages daily? How does it decide how many trucks and how much labor are required to ship orders across the network? SCOT Fulfillment Optimization (FO) owns the optimization and forecasting science behind these decisions. We are seeking Applied Scientists to join the FO Science & Tech team in Barcelona (alternatively: Luxembourg or London) with a strong academic background in optimization, machine learning, and/or time-series forecasting. • You will design and build state-of-the-art machine learning and optimization models that power Amazon's fulfillment decisions at an unprecedented scale across two core scientific pillars: • Large-Scale Optimization and Planning: Designing planning systems for order assignment and resource utilization, while balancing multi-objective cost-speed tradeoffs to enable controllers to steer millions of shipments per hour optimally. • Demand Forecasting & Predictive ML: Developing time-series forecasts for customer demand, incorporating contextual information (weather, sales, order properties), and modeling uncertainty for core planning systems. Basic qualifications • PhD in Operations Research, Applied Mathematics, Computer Science, or related field (or equivalent experience) • Strong programming skills (Python preferred; experience with optimization solvers a plus) • Research experience in one or more: • Large-scale mathematical programming (LP, MIP, decomposition methods) • Combinatorial optimization (assignment, scheduling, network flows) • Multi-objective optimization and control • Large-scale time-series forecasting (GenAI models, probabilistic forecasting, uncertainty quantification) • Causal inference (spatiotemporal causal modeling, offline policy evaluation) Preferred qualifications • Experience building optimization systems that run in production at scale • Being comfortable with ambiguity and fast iteration cycles • Publications in relevant venues Key job responsibilities Design and implement optimization and forecasting models for large-scale fulfillment problems, from order assignment to network flow control. Build research prototypes end-to-end: from problem formulation through scalable implementation to production validation. Analyse complex tradeoffs (cost, speed, capacity, accuracy) and translate findings into actionable recommendations for leadership and operations teams. Collaborate with engineers to bring science solutions into production systems serving millions of customer orders daily. A day in the life You formulate an optimization or forecasting problem on a whiteboard with teammates, then prototype it in Python with real data by the afternoon. You run experiments against production-scale datasets, iterate on the model, and present results to stakeholders who will use them to make network decisions next week. Some days you dive deep into solver performance; other days you're explaining a Pareto frontier to an operations leader. You collaborate with large engineering and product teams to bring your solutions into systems serving millions of customers. Alongside fast-turnaround prototypes, you own long-term research bets, the kind that reshape how Amazon's fulfillment network operates at scale. Your work goes live. About the team SCOT Fulfillment Optimization Science & Tech (FO SnT) is the applied research team behind Amazon's fulfillment decision-making systems. We decide how orders get assigned to warehouses, how capacity is allocated across the network, and how cost and speed tradeoffs are managed in real time, at global scale. Our models influence billions of euros in annual operational spend. They protect sites from overload during peak, reduce transportation costs and CO2 emissions, and ensure customers receive their packages when promised. Leadership relies on our science to make investment decisions worth hundreds of millions. We are practitioners of large-scale optimization: MIP formulations, decomposition methods, approximation algorithms, and parallelisation. We use machine learning where it sharpens our decisions, including forecasting, learned heuristics, and multi-armed bandits. We pick the right tool for the problem, not the fashionable one. You will work alongside Senior and Principal scientists, and collaborate with Amazon Scholars and academic partners who bring frontier research into our applied problems. We code our prototypes to be production-ready and collaborate with large engineering teams to ship systems, not papers. Above all, we have fun solving hard real-world problems at real-world speed, failing, learning, and shipping along the way.
US, NY, New York
We are seeking a Lead Applied Scientist to drive the development of next-generation manipulation and autonomy systems for robots operating in complex, real-world environments. This role is designed for an exceptional technical leader with a strong research background and a passion for translating cutting-edge ideas into working robotic systems. You will play a central role in defining the technical direction of our manipulation and autonomy stack, from problem formulation and algorithm design to system integration and real-world deployment. While this role is hands-on and deeply technical, it is also expected to evolve toward technical leadership and team building over time. Key job responsibilities - Lead research and development of manipulation and autonomy systems for robots, including planning, control, learning, and closed-loop execution - Design and implement algorithms, especially focused around autonomy and interaction with dynamic environments - Work closely with perception, motor control, hardware, and systems teams to build tightly integrated autonomy pipelines - Define evaluation methodologies, benchmarks, and simulation-to-real workflows for manipulation and autonomy - Stay deeply engaged with the research community, selectively incorporating state-of-the-art techniques into deployed systems - Mentor and guide other researchers and engineers, help set technical direction, and contribute to team growth and research culture - Lead technical projects from conception through production deployment - Bridge research initiatives with practical engineering implementation About the team Fauna Robotics, an Amazon company, is building capable, safe, and genuinely delightful robots for everyday life. Our goal is simple: make robots people actually want to live and interact with in everyday human spaces. We believe that future won’t arrive until building for robotics becomes far more accessible. Today, too much effort is spent reinventing the fundamentals. We’re changing that by developing tightly integrated hardware and software systems that make it faster, safer, and more intuitive to create real-world robotic products. Our work spans the full stack: mechanical design, control systems, dynamic modeling, and intelligent software. The focus is not just functionality, but experience. We’re building robots that feel responsive, expressive, and genuinely useful. At Fauna, you’ll work at the frontier of this space, helping define how robots move, manipulate, and interact with people in natural environments. It’s an opportunity to solve hard problems across hardware and software with a team focused on making robotics accessible and joyful to build. If you care about making robotics real for everyone and building systems that are as delightful as they are capable, we’re interested in hearing from you.
US, WA, Seattle
As part of the AWS Applied AI Solutions organization, we have a vision to provide business applications, leveraging Amazon's unique experience and expertise, that are used by millions of companies worldwide to manage day-to-day operations. We will accomplish this by accelerating our customers' businesses through delivery of intuitive and differentiated technology solutions that solve enduring business challenges. We blend vision with curiosity and Amazon's real-world experience to build opinionated, turnkey solutions. Where customers prefer to buy over build, we become their trusted partner with solutions that are no-brainers to buy and easy to use. We are looking for an Applied Scientist to join our team that is building enterprise applications leveraging machine learning, generative AI, and agentic AI to help millions of companies worldwide manage their day-to-day supply chain operations. Our mission is to accelerate our customers' businesses through intuitive, differentiated technology solutions that solve enduring supply chain challenges. We blend strategic vision with curiosity and Amazon's real-world operational experience to build opinionated, turnkey solutions that make the 'buy versus build' decision a no-brainer for our customers. As an Applied Scientist, you will design and develop machine learning models and algorithms that power intelligent supply chain applications at global scale. You will work at the intersection of research and real-world product impact, translating scientific advances into production systems that serve millions of customers. We operate like a startup within AWS, offering you the opportunity to tackle complex challenges while working with the latest technologies in deep learning, large language models, and optimization. If you are passionate about pushing the boundaries of applied science, thrive in ambiguous problem spaces, and want to shape the future of supply chain intelligence while having the backing of AWS's extensive resources, we want to hear from you. Key job responsibilities - Design, develop, and deploy machine learning models for demand forecasting, inventory optimization, anomaly detection, and supply chain decision-making. - Develop generative AI and agentic AI solutions that automate complex supply chain workflows and deliver intelligent, adaptive recommendations to customers. - Formulate real-world business problems as machine learning problems; define data requirements, model architectures, evaluation metrics, and experimentation frameworks. - Drive end-to-end applied science projects from ideation through experimentation, offline evaluation, A/B testing, and production deployment at scale. - Collaborate with engineering, product management, and business stakeholders to translate scientific capabilities into customer-facing product features, and mentor other scientists to raise the team's technical bar. A day in the life You will start many mornings reviewing experiment results and model metrics before joining a science sync where you and your teammates discuss progress, debug tricky modeling issues, and brainstorm new approaches. From there, you may spend focused time writing and testing model code in Python or PyTorch, running offline evaluations, or preparing an A/B test for a new forecasting algorithm. Expect regular working sessions with software engineers to integrate your models into production services, and occasional deep-dive reviews where you present your scientific approach and findings to the broader team. About the team The AWS Applied AI Solutions team builds enterprise applications that leverage Amazon's operational expertise to solve real-world supply chain challenges for millions of companies. We operate like a startup within AWS, moving fast and shipping iteratively with modern AI technologies. We invest in your growth through mentorship from experienced scientists, conference publication support, and internal science reading groups. If your career hasn't followed a traditional path, we encourage you to apply — we value varied experiences and perspectives.