Interview story bank
Amazon Leadership Principles — 16-Principle Story Bank
Sixteen interview-ready leadership principles with two concise STAR examples for each.
This page organizes all sixteen Amazon Leadership Principles into a focused interview story bank. Each principle includes two concise Situation, Task, Action, and Result examples for later review and revision.
1. Customer Obsession
Customer Obsession means starting from the person who must use the result, then working backward instead of treating implementation as the finish line. In my experience, the closest equivalent is serving learners, collaborators, and maintainers: publishing NoteNextra before the larger platform was complete, responding to a reader-reported mathematical error, and building SophiasPath around what a teammate needed to publish rather than around the backend I happened to want to build.
Lecture Note-Sharing Site
- Situation: I initially planned to build a feature-rich full-stack note-sharing platform for my classmates.
- Task: After talking with them, I realized what they actually needed was fast and reliable access to updated lecture notes.
- Action: I launched a lightweight static site first with continuous updates after each lecture while developing more advanced features separately.
- Result: My classmates could immediately use the notes for daily review and exams, while their feedback helped me quickly correct errors.
EV Charging Reliability Dashboard
- Situation: In a 72-hour data-science project, I was asked to diagnose systematic charging failures despite having sparse instructions and no definition of “systematic.”
- Task: I needed to turn the raw data into information that would actually help managers decide who should respond to each problem.
- Action: I classified failures by actionable causes, such as firmware issues for software teams and site-level problems for engineering teams, and built metrics around them.
- Result: I delivered the dashboard on time with daily reports that translated technical failures into operationally useful categories.
2. Ownership
Ownership means accepting responsibility for the outcome beyond the narrow boundary of an assigned role. I have most clearly practiced it when a project lacked coordination: in the MTA Strategy Optimizer I established shared contracts without formal authority, and in Chinese Groundbreakers I continued proposing events, maintaining resources, and helping students when the club's senior leadership had less capacity.
MTA Shared Data Model
- Situation: We were building a system to reconstruct advertising journeys and divide conversion and revenue credit among the campaigns, channels, and ad groups that appeared before a purchase. Because client data was unavailable, separate teams were also creating synthetic inputs and attribution components from conflicting interpretations of the path schema.
- Task: Although my primary responsibility was optimization, I recognized that leaving the inconsistency unresolved would create major integration problems later.
- Action: I proactively aligned assumptions with team members and created a shared data model, interfaces, and documentation.
- Result: The common structure reduced future rework and allowed independently developed components to integrate more reliably.
CS Club
- Situation: Washington University Chinese Groundbreakers grew from a small founding group into a community serving more than 300 students. At that scale, many incoming students still lacked reliable information about CS courses, research opportunities, and people they could approach for guidance.
- Task: I wanted to address that gap instead of assuming individual students or the department would solve it themselves.
- Action: I helped build a CS community that organized networking, course-information sessions, research seminars, and project sharing.
- Result: Members expanded their networks and several were able to pursue research opportunities they discovered through the community.
3. Invent and Simplify
Invent and Simplify is not novelty for its own sake; it is finding a smaller, clearer system that removes recurring friction. My projects repeatedly move in this direction: I replaced incompatible data-generation work with one reproducible contract in the MTA project, and separated the immediately useful static NoteNextra archive from the more ambitious Notechondria platform so that complexity would not block delivery.
Modular MTA Simulation Pipeline
- Situation: The MTA project needed to assign conversion and revenue credit across the sequence of advertising touchpoints preceding a purchase, then use that evidence to seed campaign and ad-group budgets. Client data was unavailable, and each team was independently producing incompatible synthetic paths and schemas.
- Task: I needed to give the algorithm team a simple and reusable way to test attribution models without waiting for every upstream decision.
- Action: Within one week, I built a modular data-generation pipeline with standardized interfaces, documentation, and adapters.
- Result: The pipeline unblocked algorithm testing immediately while reducing the amount of custom integration and future rework.
Simplifying the Notes Platform
- Situation: I initially used a full-stack application to distribute lecture notes even though most classmates only needed dependable access to the content.
- Task: I wanted to remove unnecessary complexity without sacrificing the value students actually cared about.
- Action: I replaced the immediate delivery path with a simple static site that could publish updated notes directly after each lecture.
- Result: Students received faster and more reliable access while I could respond to errors and feedback much more quickly.
4. Bias for Action
Bias for Action means moving when delay is more expensive than a reversible mistake, while preserving a way to test and correct the decision. I demonstrated this by producing the first reproducible MTA simulation baseline in two days and by publishing NoteNextra as a useful static archive instead of waiting for the complete platform. My best version of speed is an inspectable first step, not an irreversible shortcut.
72-Hour Reliability Project
- Situation: I had only 72 hours to build a reliability dashboard from sparse instructions with no agreed definition of systematic failure.
- Task: I needed to make useful progress without waiting for every ambiguity to be resolved.
- Action: I chose an actionable definition based on which organizational function could resolve each failure type and immediately built the analysis around it.
- Result: I completed the dashboard within the deadline and produced daily systematic-failure reports despite the initial ambiguity.
MTA Under Changing Requirements
- Situation: The MTA project was behind schedule, client journey data was unavailable, and the data-science and algorithm teams were still changing how touchpoints, paths, conversions, and revenue should be represented.
- Task: I needed to unblock model development without committing the team to assumptions that might soon become obsolete.
- Action: I moved ahead with a modular simulation architecture whose adapters allowed later requirements to be incorporated without redesigning the core pipeline.
- Result: The algorithm team could begin testing earlier while later data requirements were added with substantially less disruption.
5. Learn and Be Curious
Learn and Be Curious describes the habit of following a question beyond the knowledge already required by a role or course. My mathematical research pushed me across probability, geometry, and quantum information, while projects such as Mon3tr forced me to connect diffusion models with 3D reconstruction. I tend to learn by building enough of the surrounding system to discover where my understanding actually breaks.
Mathematics Research
- Situation: In my summer mathematics research, we investigated whether a theorem motivated by quantum physics could extend to a more general mathematical setting.
- Task: I needed to understand unfamiliar concepts deeply enough to determine which assumptions were essential before attempting a proof.
- Action: I systematically studied the underlying definitions, tested examples computationally, and used weekly meetings with my mentor to challenge my understanding.
- Result: That foundation allowed me to explore the generalized problem rigorously and eventually develop the work into my thesis.
Self-Taught Infrastructure
- Situation: Since high school, I wanted to operate my own online services despite initially having little knowledge of production infrastructure.
- Task: I needed to learn the technologies required to make those services reliable and maintainable.
- Action: I taught myself reverse proxies, containers, networking, deployment, and infrastructure management by repeatedly building and improving the system.
- Result: Over several years, I developed a reliable multi-service infrastructure while gaining practical systems knowledge far beyond my original web-development experience.
6. Hire and Develop the Best
For my experience, this principle is better understood as raising the capability of the people around me, since I have not yet owned a formal hiring process. I have led junior developers on Gray-75, helped students plan courses through Chinese Groundbreakers, and tried to make team contributions easier through documentation and shared interfaces. The evidence is strongest in mentoring and enablement, not hiring decisions.
Developing Students Through the CS Club
- Situation: In a club that had expanded from a small founding group to more than 300 members, many newer CS students still lacked both professional networks and knowledge about available academic and research opportunities.
- Task: I wanted the club to help students develop rather than simply organize social activities.
- Action: I connected experienced students with newer members through research seminars, course sessions, project sharing, and networking opportunities.
- Result: Members developed stronger networks and several pursued research opportunities they learned about through the community.
Developing MTA Team Members
- Situation: The MTA system had to connect synthetic journey generation, attribution models that divided conversion and revenue credit among touchpoints, and a budget-seeding module. Several members owned isolated pieces and had limited experience integrating them into one reproducible system.
- Task: I wanted to help them contribute effectively while ensuring that knowledge would remain available to future team members.
- Action: I held one-to-one discussions to understand their blockers, shared relevant technical resources, and documented the architecture and integration process in detail.
- Result: Existing members could integrate their work more effectively and new members had documentation that allowed them to catch up much faster.
7. Insist on the Highest Standards
High standards mean making correctness, reproducibility, and maintainability concrete rather than merely asking people to care more. I express this through typed schemas, validation, tests, documented contracts, and visible correction mechanisms. The MTA project and NoteNextra also taught me that standards include acknowledging limitations and repairing errors, not hiding them behind a polished presentation.
MTA Engineering Standards
- Situation: The MTA project initially consisted of independently developed synthetic datasets, attribution models, and strategy code. Individual pieces ran, but their incompatible path definitions and outputs could not yet support a reproducible comparison or budget recommendation.
- Task: I wanted the project to produce reproducible and dependable results rather than merely demonstrate that each individual component worked.
- Action: I aligned the teams, integrated their components into a common repository, standardized interfaces, and created detailed documentation.
- Result: The project became a more reproducible and maintainable system with fewer hidden integration assumptions and a clearer standard for future development.
Reinforcement-Learning Parking Project
- Situation: In our autonomous trailer-parking project, the reinforcement-learning model initially showed acceptable metrics that could have been sufficient for the assignment.
- Task: I wanted to verify that those metrics represented genuinely useful learned behavior rather than simply presenting a successful-looking result.
- Action: I inspected the trajectories and training behavior, discovered substantial environment overfitting, and investigated the issue with my teammates and related literature.
- Result: We documented the limitation in our ablation analysis and identified trajectory planning as an important direction for improving the system rather than overstating the RL results.
8. Think Big
Think Big means choosing an architecture or direction that can outlast the first deliverable while still grounding it in useful work today. My personal infrastructure grew from a website into a portable self-hosted data and service layer, while NoteNextra evolved toward Notechondria's broader idea of a personal context gateway. These projects reflect my tendency to see individual tools as parts of longer-lived systems.
Generalizing the MTA Platform
- Situation: The initial requirement was to take one advertising-journey dataset, assign conversion and revenue credit to its touchpoints, and use that evidence to initialize budgets. A pipeline tailored to one provider and schema could have satisfied that immediate demonstration.
- Task: I wanted to create a foundation that could eventually support different providers, campaigns, regions, and changing business requirements.
- Action: I designed modular provider adapters and extensible data models so new dimensions and attribution methods could be added without rebuilding the system.
- Result: The architecture supported later requirements with much less rework and turned a one-off pipeline into a foundation for broader attribution and optimization experiments.
Building a CS Community
- Situation: A small founding group had grown into a 300+ member student community, but information about courses, research, and projects still moved through fragmented personal connections. Helping one student at a time would not make that knowledge reusable at the club's new scale.
- Task: I wanted to create an environment where students could continuously help one another discover resources and opportunities.
- Action: I helped build a club that connected students through recurring research seminars, course guidance, project sharing, and networking.
- Result: Instead of helping only a few individuals, the community became a reusable network through which many students could expand their connections and pursue new opportunities.
9. Are Right, A Lot
Being right a lot depends less on defending an initial intuition than on testing assumptions, examining contrary evidence, and revising the model when it fails. My strongest examples are negative results: ATTPDRL did not solve the full steering problem, and Mon3tr produced unusable geometry despite a runnable pipeline. In both cases, inspecting the failure honestly produced a better conclusion than presenting partial execution as success.
EV Charging Reliability Case
- Situation: In the 72-hour charging-reliability project, there was no labeled definition of systematic failure and several reasonable ways to interpret the problem.
- Task: I needed to choose a definition that would produce useful conclusions despite incomplete information.
- Action: I examined the available data and reframed systematic failures around shared causes and which operational team could actually resolve them.
- Result: That reasoning gave me a consistent classification framework and allowed me to deliver an actionable daily reliability dashboard on time.
MTA Model Decisions
- Situation: The MTA system had to decide how to divide conversion and revenue credit across touchpoints in a customer's path. Team members proposed different schemas and attribution approaches—including uniform, Markov removal-effect, and path-level Shapley models—without enough evidence to determine which behavior was more defensible.
- Task: I needed to help the team make decisions without relying only on personal preference.
- Action: I clarified the assumptions behind each approach, implemented alternatives when practical, and compared their behavior using reproducible experiments.
- Result: We could make technical decisions based on evidence while preserving useful ideas from multiple approaches.
10. Frugality
Frugality is the discipline of extracting capability from limited resources rather than treating more infrastructure, money, or people as the default answer. My self-hosted platform relies on open-source and portable components, circtime experiments with backend-free scheduled monitoring, and several public sites use static deployment where a permanent server would add little value. Constraints often force me to make the system simpler and more transferable.
Modular MTA Simulator
- Situation: Without client data, the MTA team needed synthetic customer journeys to test algorithms that distributed conversion and revenue credit among advertising touchpoints. We did not have the time or resources to build a separate simulator for every provider, path schema, and experiment.
- Task: I needed to support many experiments without repeatedly rebuilding the data-generation system.
- Action: I created one modular simulator with reusable interfaces and adapters that could represent different providers and additional features.
- Result: The team could test multiple scenarios using the same infrastructure while reducing duplicated development and future maintenance.
Lecture Notes Site
- Situation: I originally planned a full-stack application even though my classmates mainly wanted reliable access to lecture notes.
- Task: I wanted to deliver the useful part of the product without spending unnecessary development effort on features they did not yet need.
- Action: I used a lightweight static site and automated deployment instead of making the full application a prerequisite for publishing content.
- Result: I delivered the service much earlier with substantially less complexity while continuing advanced development only where it added value.
11. Earn Trust
Earn Trust is built through accurate claims, visible limits, and work that other people can inspect. In my projects, that means crediting reader corrections, documenting negative experimental results, preserving confidentiality boundaries, and distinguishing a working prototype from a validated production system. I have learned that reliability and candor matter more than sounding certain, especially when collaborators depend on my interfaces or conclusions.
MTA Team Integration
- Situation: Team members were separately building journey data, attribution models, and budget logic, with different technical backgrounds and assumptions about path fields, model outputs, and how conversion credit should flow into recommendations.
- Task: I needed to create enough transparency and shared understanding for people to rely on one another's work.
- Action: I held individual discussions to understand their needs, documented interfaces and decisions carefully, and made my own pipeline easy for others to inspect and reproduce.
- Result: Team members could integrate their components more confidently, and the documentation made project knowledge accessible even when membership changed.
CS Club
- Situation: As the club expanded from a small founding group to more than 300 members, informal founder-to-friend communication no longer gave every new student a clear person to approach for reliable advice about courses, projects, or research.
- Task: I wanted the club to become a community where students felt comfortable asking for help and sharing information.
- Action: I regularly connected newer students with experienced members and organized sessions where people openly shared their experiences and available resources.
- Result: Members increasingly used the community to expand their networks and pursue academic and research opportunities.
12. Dive Deep
Dive Deep means tracing an outcome through the underlying data, implementation, and assumptions rather than stopping at a dashboard or summary metric. The reliability case study required separating weekday demand, station history, peer behavior, and factor enrichment; my infrastructure work required understanding routing, storage, migration, and recovery together. I am most useful when I can move between the system-level picture and the exact mechanism producing it.
EV Charging Reliability Analysis
- Situation: The charging dataset contained many apparent failures, but aggregate error rates alone could not distinguish isolated station problems from genuinely systematic issues.
- Task: I needed to determine what was actually driving abnormal reliability rather than simply flagging stations with high failure counts.
- Action: I examined station-day behavior against historical baselines and then investigated shared dimensions such as firmware, reader type, and site-level patterns.
- Result: The analysis separated independent anomalies from broader systematic patterns and produced more useful diagnostic information for the dashboard.
Reinforcement-Learning Parking
- Situation: Our autonomous-parking model produced improving reward metrics that initially suggested the reinforcement-learning approach was working.
- Task: I wanted to understand what behaviors the model had actually learned rather than trusting the aggregate score.
- Action: I examined trajectories and training behavior in detail and discovered that the agent was repeatedly exploiting limited forward-driving patterns instead of learning robust parking.
- Result: We identified environment overfitting that the headline metrics concealed and used that insight to refine our conclusions and future-work direction.
13. Have Backbone; Disagree and Commit
This principle means raising a reasoned objection when the evidence or architecture points elsewhere, then supporting the final direction once a decision is made. My experience appears in narrowing projects after failed experiments, resisting incompatible one-off implementations in favor of shared contracts, and retaining a proven production monitor while circtime remained unvalidated. I try to make disagreement specific and testable rather than personal.
Challenging the MTA Data Process
- Situation: The MTA project needed one path from synthetic customer journeys to attribution and initial budget allocation, but the existing workflow allowed every group to define its own touchpoints, conversions, revenue fields, and mock datasets independently.
- Task: I believed continuing that approach would create serious integration and reproducibility problems even though changing it required additional work outside my immediate task.
- Action: I raised the issue with the team, explained the downstream risks, and pushed for a shared data contract and reproducible pipeline while incorporating feedback into the final design.
- Result: Once we agreed on the direction, I committed to implementing the shared infrastructure and helped the teams move forward under the common model.
Resolving Competing Technical Approaches
- Situation: We disagreed about concrete MTA choices: how to represent advertising paths, which attribution model should divide conversion credit, and how model outputs should feed the initial budget seed. Choosing by preference risked delaying integration or discarding a useful approach.
- Task: I needed to express my technical concerns clearly while still keeping the team moving toward a shared decision.
- Action: I stated my assumptions, challenged the alternatives with specific technical questions, and where feasible tested both approaches so the evidence could resolve the disagreement.
- Result: After the decision was made, I supported the selected approach and focused on integrating the strongest parts into the final system.
14. Deliver Results
Deliver Results means producing the outcome that matters under the actual constraints, not merely completing activity that resembles progress. My strongest examples have concrete endpoints: a deployed archive, a playable game, an integrated data contract, a daily reliability report, or a migration that can be repeated in about 30 minutes. I also distinguish delivery from success when a pipeline runs but the scientific or operational result is still inadequate.
72-Hour EV Reliability Dashboard
- Situation: I received a 72-hour case study requiring a complete reliability analysis, dashboard, visualizations, and reusable detection function from an unfamiliar charging dataset.
- Task: I needed to turn an ambiguous problem into a reviewable end-to-end result within the fixed deadline.
- Action: I worked backward from the required dashboard, established the definitions and metrics first, completed the detection algorithms next, and reserved the final stage for validation and documentation.
- Result: I delivered the complete dashboard and daily reliability analysis within the 72-hour window.
MTA First-Week Pipeline
- Situation: The MTA algorithm team needed to test whether uniform, Markov removal-effect, Shapley, and learned models assigned sensible conversion and revenue credit across advertising paths, but the project had no reproducible input journeys.
- Task: I needed to remove that dependency quickly so algorithm development could continue.
- Action: I prioritized the essential interfaces and built the first modular data-generation pipeline within one week rather than waiting for every future requirement to be finalized.
- Result: The algorithm team could immediately begin validating its models while the pipeline continued evolving to support more sophisticated requirements.
15. Strive to be Earth's Best Employer
I interpret this principle through the smaller teams and communities I have actually participated in: creating conditions where people can learn, contribute, and ask for help without unnecessary friction. Supporting junior developers, offering personalized course guidance, writing integration documentation, and responding constructively to corrections are modest but relevant examples. I would not claim organization-scale people leadership; my evidence is at the teammate and community level.
Developing MTA Team Members
- Situation: Several team members owned isolated parts of a pipeline spanning journey simulation, attribution, model comparison, and deterministic budget seeding. With limited integration experience, they sometimes struggled to see the contracts around their component.
- Task: I wanted them to become more independent contributors rather than simply taking their components and integrating everything myself.
- Action: I held one-to-one conversations about their blockers, shared learning resources, explained the surrounding architecture, and documented common workflows.
- Result: Team members had clearer paths for contributing independently, while future members could use the same documentation to onboard more quickly.
CS Club Community
- Situation: The club had expanded from a small founding group to more than 300 members, but new CS students still entered the university without the networks or institutional knowledge that experienced members already had.
- Task: I wanted to create an environment where access to opportunities depended less on whom someone happened to know.
- Action: I organized information sessions, research discussions, project sharing, and connections between incoming and experienced students.
- Result: Students gained broader access to knowledge and networks, and some members used those connections to pursue research opportunities.
16. Success and Scale Bring Broad Responsibility
This principle recognizes that a system's obligations expand as more people, data, or infrastructure depend on it. My work reflects this through privacy boundaries in the reliability study, correction and attribution mechanisms in public educational material, and security, backup, and migration planning in personal infrastructure. Even at small scale, publishing or operating a system creates responsibilities that do not exist in a private prototype.
Maintaining Shared MTA Infrastructure
- Situation: Journey generation, Markov and Shapley attribution, model comparison, and deterministic budget seeding increasingly depended on the same shared path contracts. A change to my pipeline could therefore alter results across the entire team.
- Task: I needed to treat the pipeline as shared infrastructure rather than optimizing only for my own development speed.
- Action: I introduced stable interfaces, reproducible generation, documentation, and modular adapters so future changes could be made without unexpectedly breaking downstream users.
- Result: As the project expanded, the common infrastructure remained easier to extend and reduced the risks that came from increased dependency on a single pipeline.
Long-Term Self-Hosted Infrastructure
- Situation: What began as personal experimentation with web services gradually grew into infrastructure that I depended on for multiple applications and information-sharing workflows.
- Task: As its scope increased, I needed to consider reliability, maintainability, security, and the consequences of failures rather than treating it as a hobby deployment.
- Action: I progressively adopted containers, reverse proxies, monitoring, backups, and more maintainable deployment practices while migrating workloads to managed services when self-hosting no longer justified the operational cost.
- Result: I learned to evaluate infrastructure not only by whether I could build it, but by whether I could responsibly maintain it as its usage and dependencies grew.