DoorDash Senior Data Analyst Interview Preparation Guide
DoorDash's Data Analyst interview process is structured around evaluating SQL proficiency, statistical reasoning, business analytics capabilities, and the ability to translate complex data into actionable recommendations. The process spans 4-6 weeks and includes recruiter screening, technical assessments, case study exercises, and a virtual onsite consisting of multiple 45-minute rounds. For Senior-level candidates, emphasis is placed on complex problem-solving, strategic thinking, cross-functional influence, and demonstrated ability to drive business impact through data-driven insights.
Interview Rounds
Recruiter Screening
What to Expect
Initial phone call with a DoorDash recruiter lasting approximately 30 minutes. The recruiter will assess your general background, career trajectory, and initial fit for the role. You'll discuss your experience with data analytics, motivation for joining DoorDash, compensation expectations, and work authorization. The recruiter will also provide an overview of the role, team structure, and interview timeline. For Senior-level candidates, the recruiter will probe deeper into your leadership experience, impact on previous analytical initiatives, and comfort with influencing cross-functional teams.
Tips & Advice
Be concise and conversational. Articulate your interest in DoorDash's specific mission and how it connects to your career goals. Prepare a 2-3 minute summary of your most impactful analytics project for Senior level. Ask thoughtful questions about the team structure, data infrastructure, and types of problems they're solving. Avoid generic answers—reference specific things you know about DoorDash (e.g., market expansion strategy, multi-vertical growth). Confirm your availability for subsequent interview rounds.
Focus Topics
Logistics & Availability
Confirm work authorization, availability for interview schedule, any scheduling constraints, and timeline expectations for joining.
Practice Interview
Study Questions
High-Impact Analytics Project (Senior)
A concise narrative (2-3 minutes) describing a significant analytical project where you drove business impact, influenced decisions across teams, and potentially mentored others. Should include scope, challenge, methodology, and quantifiable outcome.
Practice Interview
Study Questions
Motivation & Company Fit
Why you're interested in DoorDash specifically (not just 'a data role'), what attracts you to the company's mission, and how your values align with DoorDash's culture of 'bias for action' and 'one team, one fight'. For Senior: Show understanding of DoorDash's market position, multi-vertical strategy, and how you want to contribute strategically.
Practice Interview
Study Questions
Background & Career Trajectory
Your professional journey, evolution as a data analyst, and progression to Senior level. For Senior candidates: emphasis on growth trajectory, progressive responsibility in owning complex projects, and evolution of technical skills paired with business acumen.
Practice Interview
Study Questions
Technical Phone Screen: SQL & Statistics
What to Expect
A 60-minute technical phone interview covering SQL query writing and statistical reasoning. You'll be given a live coding environment (typically a shared SQL pad) and asked to write 2-3 SQL queries using sample DoorDash-like tables (orders, customers, dashers). Queries will test core data manipulation skills including filtering, aggregation, joins, and window functions. You'll then answer 2-3 conceptual statistics questions (e.g., hypothesis testing, A/B test design, handling missing data). The interviewer evaluates correctness, query efficiency, clarity of thinking, and ability to explain your approach.
Tips & Advice
Write clean, readable SQL with clear variable names and comments. Think aloud—explain your approach before coding to catch errors early. Test edge cases (NULLs, empty result sets, etc.). For window functions, be prepared to discuss PARTITION BY and ORDER BY clauses in context. On statistics questions, don't jump to formulas; first define the problem clearly (e.g., null hypothesis, significance level, sample size). For Senior level, discuss trade-offs: speed vs. accuracy, sample sizes required for statistical power, and limitations of approaches. If stuck, acknowledge it, propose alternative approaches, and move forward—interviewers value resilience and communication over perfection.
Focus Topics
Handling Missing & Incomplete Data
Identifying missing data patterns (MCAR, MAR, MNAR), assessing impact on analysis, choosing mitigation strategies (deletion, imputation, sensitivity analysis). Understanding when to flag data quality issues vs. when to proceed pragmatically.
Practice Interview
Study Questions
A/B Testing Fundamentals
Experiment design (test design, control/treatment groups, randomization, sample size calculation), metric selection, interpreting results (confidence intervals, statistical significance vs. practical significance), and identifying confounding variables. Ability to spot flawed experimental designs.
Practice Interview
Study Questions
Hypothesis Testing & Statistical Significance
Concepts of null hypothesis, Type I/II errors, p-values, statistical power, and choosing between parametric/non-parametric tests. Understanding when to use t-tests, chi-square tests, or other methods. Practical interpretation of results.
Practice Interview
Study Questions
Advanced SQL: Joins & Aggregations
Complex queries involving INNER/LEFT/FULL OUTER joins across multiple tables, GROUP BY with HAVING clauses, subqueries, and common table expressions (CTEs). Ability to write efficient queries that correctly handle NULL values and edge cases.
Practice Interview
Study Questions
SQL Window Functions
ROW_NUMBER, RANK, DENSE_RANK, LAG, LEAD, SUM/AVG OVER (PARTITION BY ... ORDER BY ...). Use cases include ranking customers by order value, calculating running totals, and comparing current vs. previous period metrics.
Practice Interview
Study Questions
Analytics Case Study Exercise
What to Expect
A 90-minute asynchronous or video-based case study where you analyze a realistic DoorDash business scenario and deliver findings through written slides or a presentation. You're given sample data and asked to identify trends, segment customers/orders, and recommend business actions. The scenario might involve analyzing Dasher performance across cities, diagnosing a dip in order volume, or evaluating the impact of a feature rollout. You'll use tools available on your machine (SQL, Python, Tableau/Excel). The output is typically a 5-10 slide deck with visualizations, insights, and recommendations. Evaluation focuses on problem-framing, analytical rigor, visualization clarity, and business judgment.
Tips & Advice
Start by clarifying the business question and defining success metrics. Spend 5-10 minutes scoping before diving into analysis. Create a hypothesis before exploring data. Use visualizations strategically—every chart should tell a story and support a recommendation. For Senior level, go beyond identifying 'what happened' to answering 'why' and 'so what'—connect findings to business impact (revenue, retention, operational efficiency). Anticipate follow-up questions from stakeholders. Document your assumptions and limitations clearly. Use clear titles, annotations, and legends on all charts. End with 2-3 concrete, prioritized recommendations with supporting evidence. Time management is critical—it's better to deliver strong insights on 80% of questions than incomplete analysis on 100%.
Focus Topics
Handling Ambiguous Requirements
Comfortable with underspecified problems. Ability to ask clarifying questions, make reasonable assumptions, document them explicitly, and adapt if new information emerges. Confidence to proceed without perfect clarity.
Practice Interview
Study Questions
Business Recommendation Synthesis
Moving beyond data observation to actionable recommendations. Must connect findings to business impact, consider trade-offs, prioritize recommendations by impact/effort, and anticipate implementation challenges. Recommendations should be specific and measurable.
Practice Interview
Study Questions
Exploratory Data Analysis (EDA)
Systematic data exploration to understand distributions, identify outliers, spot patterns, and formulate hypotheses. Techniques include descriptive statistics, segmentation, trend analysis, and correlation analysis. Ability to ask 'what if' questions and drill down into subgroups.
Practice Interview
Study Questions
Data Visualization & Storytelling
Creating clear, professional visualizations (line charts for trends, bar charts for comparisons, scatter plots for correlations, heatmaps for multi-dimensional data). Every visualization should have clear title, axis labels, and legend. Ability to craft a narrative that leads stakeholders from problem to recommendation.
Practice Interview
Study Questions
Real-World Case Study Analysis
Ability to tackle open-ended business problems with ambiguous requirements. Includes scoping the problem, forming hypotheses, designing analytical approach, and executing analysis. Must balance depth with time constraints.
Practice Interview
Study Questions
Onsite Round 1: Product Metrics & Data Deep-Dive
What to Expect
A 45-minute video interview where you work through a DoorDash product analytics problem. You're given DoorDash-like tables and asked to compute key metrics (e.g., order frequency, Dasher reliability, restaurant performance, AOV trends by city/vertical) and segment the data to surface insights. The interviewer is typically a mid-to-senior data analyst or product analyst. They assess your ability to write complex SQL (joins, window functions, CTEs), define metrics correctly, catch data quality issues, and interpret results in business context. Questions might include 'Which cities show strongest growth?' or 'How does AOV vary by customer tenure and vertical?'
Tips & Advice
This is your strongest technical showcase. Before writing SQL, verbally walk through your approach and confirm the interviewer agrees. For Senior level, discuss data quality assumptions upfront (e.g., are test orders filtered? How do refunds affect AOV?). Write SQL that's readable and efficient—avoid overly complex nested subqueries if a CTE is clearer. When presenting results, connect them to business implications. If you find unexpected patterns (e.g., one city with unusually high AOV), dig into root causes rather than moving on. Ask clarifying questions on metrics definitions—does 'user retention' mean 30-day, or 90-day? Discuss trade-offs in metric choices. For Senior candidates, consider mentoring angle: 'If I were coaching a junior analyst on this metric, I'd emphasize...'
Focus Topics
Data Quality & Assumptions Documentation
Identifying and flagging data quality issues: NULL values, duplicates, outliers, schema inconsistencies, timing misalignments. Documenting key assumptions explicitly (e.g., 'Analysis excludes test orders,' 'Refunds subtract from AOV'). Assessing impact on conclusions.
Practice Interview
Study Questions
Product Impact Analysis
Evaluating the causal effect of a feature launch, pricing change, or operational update on key metrics. Approaches include pre/post analysis (controlling for seasonality), cohort analysis (comparing exposed vs. unexposed users), and difference-in-differences. Understanding confounds and limitations.
Practice Interview
Study Questions
Multi-Dimensional Segmentation & Analysis
Ability to slice data across dimensions: time (daily/weekly/monthly/cohort), geography (city, region), customer segments (new/repeat, LTV tiers, frequency bands), product vertical (food, grocery, etc.), Dasher tiers, restaurant categories. Identifying segments with divergent behavior and digging into reasons.
Practice Interview
Study Questions
DoorDash-Specific KPIs & Metrics
Understanding key business metrics unique to DoorDash and similar logistics/marketplace platforms: Order frequency, AOV, customer lifetime value (LTV), Dasher reliability/ratings, restaurant partner performance, time-to-delivery, repeat order rate, new customer acquisition cost, city-level penetration, vertical performance (food, grocery, alcohol). How these metrics interconnect and drive overall business health.
Practice Interview
Study Questions
Complex SQL: Joins, Window Functions & CTEs
Advanced query techniques to compute metrics across multiple dimensions. Includes multi-table joins (orders, customers, dashers, restaurants), window functions for cohort analysis and period-over-period calculations, CTEs for readability, and efficient filtering. Writing queries that run fast on large datasets.
Practice Interview
Study Questions
Onsite Round 2: Experimentation & Strategic Insights
What to Expect
A 45-minute video interview where you demonstrate mastery of experimentation and strategic thinking. The interviewer (often a senior data scientist or analytics lead) presents a business problem involving A/B testing or observational analysis—e.g., 'We rolled out surge pricing. How do we measure its impact on Dasher supply and customer demand?' or 'Our retention cohorts are declining. Analyze the underlying drivers.' You'll discuss experiment design, metric selection, statistical approach, and interpretation. For Senior level, the bar is high: propose robust experimental design, anticipate confounds, discuss power analysis, and connect findings to strategic recommendations. The interviewer probes your reasoning and explores alternatives.
Tips & Advice
Start by clearly defining the business problem and success criteria. For experimentation: discuss randomization strategy, sample size calculation, treatment duration, and key metrics to monitor. Address potential confounds head-on. For observational analysis: think about what data would be ideal, propose proxies given real-world constraints, and discuss residual biases. On statistics, don't hide behind formulas—explain conceptually why you're using a particular test. For Senior level: show strategic thinking by connecting statistical findings to business decisions and next steps. Discuss trade-offs: 'If we need results faster, we'd accept lower power, but that risks Type II errors in a low-effect scenario.' Anticipate follow-ups by flagging limitations. If unsure on a technical detail, acknowledge it and propose how you'd validate (e.g., 'I'd run a sensitivity analysis to confirm').
Focus Topics
Observational Data Analysis & Causal Inference
Techniques for extracting causal insights from observational (non-experimental) data: matching, propensity score adjustment, instrumental variables, difference-in-differences, regression discontinuity. Understanding limitations (residual confounding) and communicating uncertainty. Knowing when observational analysis is sufficient vs. when experiment is necessary.
Practice Interview
Study Questions
Strategic Recommendation Making & Stakeholder Alignment
Moving from analysis to business decision: weighing evidence, considering organizational constraints, and proposing specific actions with clear trade-offs. Anticipating stakeholder concerns and building buy-in. Communicating recommendations at different levels of detail for executives vs. operational teams.
Practice Interview
Study Questions
Business Problem Framing & Strategic Thinking
Ability to translate vague business questions into analytically crisp problems. Understanding trade-offs and strategic implications: speed vs. accuracy, short-term gains vs. long-term health, cost of being wrong. Connecting analytical findings to business levers and next-step decisions. Communicating uncertainty appropriately to non-technical stakeholders.
Practice Interview
Study Questions
A/B Testing Design & Implementation
End-to-end experiment design: problem framing, hypothesis formation, choosing primary/secondary metrics, sample size calculation (power analysis), randomization unit, experiment duration, guardrail metrics to prevent negative outcomes. Ability to spot flawed designs (e.g., time-dependent confounds, selection bias). Implementation considerations like holdout management and data logging.
Practice Interview
Study Questions
Statistical Hypothesis Testing & Significance
Rigorous understanding of p-values, confidence intervals, Type I/II error rates, statistical power, and multiple comparison corrections. Practical interpretation: when results are 'significant' vs. just noisy fluctuations. Understanding assumptions of different tests (normality, independence) and when to use non-parametric alternatives. Sensitivity analysis to validate conclusions robustness.
Practice Interview
Study Questions
Onsite Round 3: Complex Data Problem Solving & Technical Depth
What to Expect
A 45-minute video interview focused on technical depth and pragmatism under constraints. You're presented with a complex, ambiguous data problem: e.g., 'Build a real-time Dasher availability model using incomplete GPS and order data' or 'Design an anomaly detection system for restaurant delivery times that accounts for seasonality and external factors.' You'll discuss data pipeline design, handling incomplete data, scalability, and trade-offs. The interviewer (often a senior analyst or data engineer) probes your understanding of data infrastructure, ETL concepts, and optimization strategies. For Senior level, you're expected to propose production-ready approaches, discuss operational considerations, and mentor junior analysts on best practices.
Tips & Advice
Acknowledge the complexity upfront and scope the problem. Propose a phased approach: MVP first (get something working), then refinements (optimization, robustness). For data pipeline questions, think end-to-end: data collection, storage, processing, freshness requirements. Discuss trade-offs openly: 'For this anomaly detector, we could use a Bayesian approach for best accuracy, but a simpler ARIMA model would be easier to maintain and faster to deploy. Given our constraints, I'd start with ARIMA.' For Senior level, discuss operational aspects: monitoring, alerting, retraining strategy, and failure modes. If asked about unfamiliar tools (e.g., specific databases), demonstrate you can reason about tradeoffs and learn quickly. Ask clarifying questions on scale (daily volume? real-time requirements?) and accuracy requirements. Reference production systems you've built or learned from.
Focus Topics
Pragmatic Trade-offs & Bias-for-Action
Balancing perfect with good-enough. Deciding between quick wins (80% solution in 1 day) vs. comprehensive analysis (95% solution in 2 weeks). Communicating limitations and when to revisit. Fast iteration and learning under uncertainty. Resilience when facing incomplete information or limited data.
Practice Interview
Study Questions
Data Pipeline & ETL Concepts
Designing reliable data pipelines: data sources, extraction, transformation, loading, incremental vs. full refreshes, error handling, and monitoring. Trade-offs: batch vs. streaming, latency vs. cost, redundancy vs. simplicity. Experience with tools like Airflow, dbt, Spark, or cloud data warehouses. Understanding data quality checks and validations.
Practice Interview
Study Questions
Handling Missing & Incomplete Data at Scale
Strategies for working with incomplete data in production: detecting missingness patterns, imputation methods (mean, forward-fill, model-based), sensitivity analysis, documenting assumptions. When to stop data quality work vs. push forward. Differentiating between MCAR, MAR, MNAR and implications.
Practice Interview
Study Questions
Performance Optimization & Scalability
Techniques for working with large datasets: query optimization, data partitioning, caching, sampling for faster iteration, approximation algorithms. Understanding computational complexity and when to optimize. Profiling and identifying bottlenecks.
Practice Interview
Study Questions
Advanced SQL for Complex Problems
Using SQL beyond standard analytics: recursive CTEs for graph traversal, JSON/array manipulation, complex window functions for feature engineering, efficient aggregations on large datasets. Optimization techniques: query plans, indexing strategies, partitioning. Understanding when to push computation to SQL vs. when to move to Python/Spark.
Practice Interview
Study Questions
Onsite Round 4: Behavioral & Senior-Level Leadership
What to Expect
A 45-minute video interview assessing cultural fit, communication, and senior-level leadership capabilities. The interviewer (typically a senior manager, team lead, or HR partner) asks behavioral questions exploring your track record of influence, collaboration, mentoring, and driving decisions with incomplete information. Expected questions: 'Describe a time you disagreed with stakeholders on data interpretation and how you resolved it,' 'Tell us about a junior analyst you mentored and their growth,' 'Give an example of using data to influence a major business decision,' and 'How do you incorporate feedback into your work?' For Senior level, interviewers assess your ability to work across functions, influence without authority, mentor team members, and navigate organizational complexity. The interview also explores cultural alignment with DoorDash values: bias for action, one team one fight, mission-driven impact.
Tips & Advice
Use STAR method (Situation, Task, Action, Result) consistently. For Senior-level questions, emphasize scope and impact: 'I led a project that directly influenced a $5M decision' or 'I mentored two junior analysts who each grew into strong individual contributors.' Highlight cross-functional influence: how you worked with Product, Operations, Finance, and other teams. Show resilience: examples of navigating ambiguity, handling disagreement professionally, and learning from failure. Be specific about what you learned and how you evolved. Mention concrete outcomes, not just activities. For mentoring examples, discuss specific skills you taught and growth trajectory. Relate your values to DoorDash's mission: 'I'm drawn to DoorDash's goal of empowering local commerce because [specific reason].' Prepare 2-3 strong stories that highlight different aspects of Senior leadership: influence, mentoring, bias for action, and learning. Practice telling them concisely (2-3 minutes each). Be genuine—avoid overly polished narratives that sound rehearsed.
Focus Topics
DoorDash Mission & Values Alignment
Understanding DoorDash's mission (empowering local commerce), core values (bias for action, one team one fight, get it done), and business model (multi-vertical, market expansion). Personal motivation for joining. How your work style and values align with DoorDash culture. Examples of acting in alignment with these values in past roles.
Practice Interview
Study Questions
Mentoring & Elevating Team Capability
Evidence of growing junior analysts: teaching technical skills (SQL, statistics), modeling analytical rigor, providing feedback and coaching, creating learning opportunities. Examples of analysts you mentored and their growth trajectory. Ability to scale your impact through the team. Contributions to team culture and best practices.
Practice Interview
Study Questions
Handling Ambiguity & Building Confidence
Comfort navigating incomplete information, unclear requirements, and high uncertainty. Ability to propose direction despite ambiguity, validate assumptions as you go, and pivot if needed. Building stakeholder confidence through clear communication of uncertainty ranges and sensitivity analyses. Examples of making high-stakes decisions with imperfect data.
Practice Interview
Study Questions
Data-Driven Decision Making Impact
Track record of using data to drive significant business decisions: feature launches, pricing changes, market expansion, operational improvements. Ability to connect analytical recommendations to business outcomes (revenue, retention, efficiency). Examples where your analysis directly changed strategy or prevented costly mistakes. Quantifiable business impact.
Practice Interview
Study Questions
Cross-Functional Collaboration & Influence
Demonstrated ability to partner effectively with Product, Operations, Engineering, Finance, and Business teams. Leading analytical initiatives that require buy-in from multiple stakeholders. Building relationships and influencing decisions through data and persuasion, not authority. Handling disagreement and finding common ground. Examples of complex projects requiring coordination across teams.
Practice Interview
Study Questions
Frequently Asked Data Analyst Interview Questions
You're handed a one-line request from a product manager: 'Show me why conversion dropped last week.' As a data analyst, list the clarifying questions you would ask to turn this into a scoped analysis. Include stakeholders to involve, data sources, metric definitions, precise time windows, acceptable assumptions, and what success looks like for the deliverable.
Sample Answer
Clarifying questions
- Which specific "conversion" metric do you mean (purchase rate, sign-up, trial->paid, funnel step)?
- Which segment/s (all users, new vs returning, geo, channel, device, cohort)?
- Exact baseline: which week is "last week" and what comparison period do you want (previous week, same week last month, 4-week average, seasonal baseline)?
- Is this overall site/app or a particular flow/page/campaign?
- Any product changes, experiments, releases, or marketing campaigns deployed in that window?
- Are there known data quality issues, tracking changes, or outages?
- How fast do you need results and what format (slide deck, dashboard, SQL + notebook)?
Stakeholders to involve
- PM (requester) for business context and priority
- Product/Engineering for releases and telemetry changes
- Marketing for campaign timing and spend shifts
- Analytics/Tracking owner for event schema or instrumentation changes
- Customer support/ops for incident reports
Data sources
- Event/BE logs (clicks, conversions), data warehouse (user, orders tables)
- A/B test platform, release/deploy calendar, marketing analytics (ad platforms), CDN/infra monitoring, error logs, customer complaints
Metric definitions
- Precise numerator and denominator (e.g., conversions = purchases post-checkout; rate = purchases / sessions or unique users)
- Attribution rules (last-click? session-based?)
- Filtering rules (bots, internal traffic)
Time windows & granularity
- Primary window: last week (Mon–Sun) vs previous week and vs 4-week rolling mean
- Daily/hourly granularity for anomaly detection; cohort lookback for retention effects
Acceptable assumptions
- If instrumentation gaps exist, state assumptions (e.g., assume no major tracking loss if infra logs show uptime >99.9%)
- Use sessions as denominator if user IDs unknown, but note bias
What success looks like
- Clear, reproducible explanation for the drop: root cause identified (e.g., campaign paused, checkout error, tracking bug, traffic mix shift) with evidence and metrics
- Actionable recommendations and next steps (rollback, fix, deeper analysis)
- Deliverable: short executive summary + supporting dashboard/queries and reproducible notebook/SQL within agreed SLA.
Beyond CUPED, list the other variance-reduction techniques commonly used in online experiments: stratified (blocked) randomization and covariate or regression adjustment. For each technique, explain when it is applicable, the intuition for how it reduces variance, and its expected effect on required sample size or power. For an experiment spanning multiple countries with very different baseline conversion rates, explain concretely how you would implement stratification and how it changes the analysis.
Sample Answer
Direct answer
Beyond CUPED (using a pre-experiment covariate to residualize the outcome), the two other standard variance-reduction levers are stratified (blocked) randomization, which forces balance on a known factor at assignment time instead of hoping random chance balances it, and covariate or regression adjustment, which is the general case of "adjust for a predictive covariate" that CUPED is one specific, pre-experiment-only instance of. Both work by removing a source of outcome variance that is not related to treatment, so the same true effect becomes easier to distinguish from noise; both reduce required sample size roughly in proportion to how much outcome variance the factor explains, and neither invents a new number, they trade a known, explainable source of variance for a smaller residual.
Structured elaboration
Stratified (blocked) randomization
Instead of randomizing the whole population as one pool, split the population into strata on a factor known before assignment (country, device type, new vs. returning user), then randomize independently within each stratum so each arm gets a matched share of every stratum. This removes between-stratum variance from the treatment-effect estimator's variance, because the strata are balanced by design rather than by luck: with plain randomization on a highly imbalanced population, an unlucky split (e.g., treatment skewing toward the low-baseline country) inflates the observed variance of the effect estimate even though the true effect is unaffected.
It is applicable whenever you have a discrete, pre-assignment factor that is known to correlate with the outcome and is stable at randomization time. It differs from covariate adjustment in when the correction happens: stratification acts at assignment time (balance is enforced), while regression adjustment acts at analysis time (balance is estimated and subtracted after the fact). The two are complementary, not substitutes: stratify at assignment for the factors you can, and adjust for continuous covariates at analysis.
Covariate / regression adjustment
This is the general technique of fitting a model for the outcome on one or more covariates (not restricted to pre-experiment-only, unlike CUPED) and using the model to remove predictable variance from the outcome before comparing arms, most simply via ANCOVA (analysis of covariance), a linear regression of Y on the treatment indicator and covariates that removes the variance those covariates explain from the comparison, the same variance-reduction logic as CUPED and stratification, just carried out as a regression rather than a pre-experiment covariate or a balanced split. It is applicable whenever you have covariates, pre-experiment or otherwise as long as they cannot themselves have been affected by treatment, that are predictive of the outcome. CUPED is the special case where the covariate is restricted to a pre-experiment value of the outcome metric itself; regression adjustment generalizes this to any number of eligible covariates and lets you combine several weak predictors into one stronger adjustment.
Effect on sample size and power
For both techniques, if the factor being controlled for explains a fraction R2 of the outcome's variance, the variance of the treatment-effect estimator shrinks by roughly that same factor, and required sample size for a fixed target precision shrinks proportionally, since sample size for a fixed effect and power scales with the variance of the metric. A factor that explains little of the outcome variance buys little; a strong, well-chosen factor can meaningfully shorten the required test duration for the same statistical bar.
Worked example: stratifying a multi-country test
A test is planned across three countries with very different baseline conversion rates: Country A at 4%, Country B at 12%, Country C at 22%, in roughly equal traffic shares (each about one third of total users). Without stratification, plain randomization can by chance send more of one country's traffic to one arm, and even without that bad luck, the pooled outcome variance includes the between-country spread of baseline rates as extra noise the estimator has to average out.
Using the law of total variance, the overall variance of the outcome decomposes as:
Var(Y)=within-country varianceE[Var(Y∣country)]+between-country varianceVar(E[Y∣country])
Stratifying by country and analyzing as a weighted average of within-country treatment effects removes the second (between-country) term from the treatment-effect estimator's variance, since each stratum is separately balanced and the between-stratum spread no longer contributes noise to the comparison. Concretely: with baseline rates of 4%, 12%, 22% and equal stratum weights, the between-country component of variance is
pˉ=30.04+0.12+0.22=0.1267
Var(pˉ)=31[(0.04−pˉ)2+(0.12−pˉ)2+(0.22−pˉ)2]=31(0.00751+0.0000445+0.00871)=0.00542
That 0.00542 is exactly the between-country variance component the stratified analysis removes from the pooled estimator's variance, computed directly from the three stated baseline rates, not asserted; how large a share of total variance that is depends additionally on the within-country binomial variance at each rate, which you would combine with this term using the same decomposition to get the full picture before quoting an overall percentage reduction.
Implementation for the multi-country case
- Assign the stratum at randomization time using the same deterministic hash-bucketing approach as the overall unit assignment, but nest it: hash within each country separately (or include country in the hash key) so each country independently hits its target split ratio.
- At analysis time, estimate the treatment effect within each country and combine as a weighted average (weighted by stratum size or by inverse variance), rather than pooling raw counts across countries, which is what actually realizes the variance reduction shown above.
Trade-offs and pitfalls
- Stratifying on too many dimensions at once shrinks individual strata until some contain too few units to balance meaningfully, and can create empty or near-empty cells, especially when crossing multiple categorical factors (country times device times cohort).
- A stratification factor chosen because it is convenient rather than because it is predictive buys little variance reduction while adding real implementation complexity; check the factor's explanatory power on historical data before committing the assignment pipeline to it.
- Regression adjustment on covariates measured close to, but not strictly after, the treatment start needs the same scrutiny as CUPED's pre-experiment-only requirement: any covariate that could plausibly be influenced by treatment invalidates the adjustment's unbiasedness, not just its efficiency.
Someone you mentor made a mistake that had real, visible consequences for the team or the product. How did you handle the conversation and the follow-up with them?
Sample Answer
Direct answer
The conversation matters less than the sequence: separate stabilizing the consequence from the coaching conversation, then run the retrospective as blameless (focused on the system and process, not the individual) so the mentee stays engaged rather than defensive, and turn what's learned into a durable safeguard, not just a one-time talk.
Sequence: stabilize, then convene
- First, contain the actual consequence, ideally with the mentee involved rather than sidelined; solving it together protects both the outcome and their sense of ownership.
- Only after that, run the retrospective. Doing it while still firefighting mixes urgency with reflection and makes the mentee defensive.
The blameless postmortem as the concrete framework
- Ground rules stated up front: the goal is understanding the system and sequence of events, not assigning blame to the individual who happened to be the one who made the change.
- A neutral facilitator, or a rotating one across the team so it isn't always the same person in that role, helps keep the conversation from drifting toward blame, especially when the mentor is also the mentee's manager.
- Reconstruct a factual timeline first, before any discussion of what should have happened differently; jumping to "here's what you should have done" before the facts are laid out reads as judgment, not diagnosis.
- Sensitive details (who wrote the specific line, private context) get anonymized in the written artifact where possible, since the point is the process, not the person.
- The output is a written root-cause artifact with concrete action items, not just a conversation that ends when the meeting does.
Coaching the mentee specifically
- Ask them to walk through their own reasoning at each decision point, rather than you narrating what went wrong; this builds their own diagnostic skill for next time instead of just transmitting your conclusion.
- Separate the mistake from their competence explicitly, out loud; the message is "the system let this happen too easily," not "you're bad at this."
When the mistake isn't just one person's
- Sometimes the visible consequence comes from multiple people's individually reasonable changes interacting badly (a cross-team or cascading failure), not one person's error. The blameless frame matters even more here: the postmortem needs to surface the interaction, not scapegoat whichever team's change happened to be the trigger. The coaching conversation with your mentee shifts from "what would you do differently" to "how do you think about the blast radius of a change you don't fully control," since the lesson is about system boundaries, not individual judgment.
Worked example
A mentee I was supporting shipped a change that caused a visible, customer-facing issue. The first move was working alongside them to stabilize it, not taking over and pushing them out of the loop. Once it was stable, I ran a blameless postmortem with the mentee, a couple of the affected team members, and a neutral facilitator: we built a timeline from logs and commits before discussing anything about what should have happened, and the mentee walked through their own reasoning at each step rather than me presenting conclusions.
The root cause turned out to be a gap in the pre-merge checks, not a lapse in the mentee's judgment; the change was reasonable given what the tooling surfaced at the time. The written follow-up had concrete items (a new check added to the pipeline, an update to the review checklist) rather than just "be more careful." A few weeks later, in a separate incident, another engineer's change was caught by that new check before it shipped, which is the kind of signal that the fix generalized rather than just patching one person's blind spot.
Trade-offs and pitfalls
- The common junior mistake is either being too harsh in the moment (public correction, visible frustration), which teaches the mentee to hide mistakes next time, or being too soft and skipping the structured retrospective entirely, which loses the systemic fix.
- Blameless doesn't mean consequence-free; if the pattern repeats after a genuine fix and support, that's a different, harder conversation about capability or fit, not a postmortem.
- Anonymizing sensitive details in the artifact protects psychological safety (people's sense that they can admit a mistake without fear of punishment), but overdoing it (scrubbing so much nobody can learn the specific mechanism) makes the postmortem useless as a teaching tool. The balance is protecting the person while keeping the mechanism specific.
Medium: How would you design guardrail metrics and acceptance criteria for a feature that shortens checkout flow but might increase fraud? Provide at least 4 guardrail metrics and their alert thresholds rationale.
Sample Answer
Approach: define primary success metrics (conversion, time-to-complete) and safety guardrails tied to fraud signals. Use historical baselines, statistical significance, and both absolute and relative thresholds; monitor with daily/weekly windows and automated alerts plus escalation playbook.
Guardrail metrics (with thresholds and rationale):
-
Chargeback rate (chargebacks / settled orders) — Alert if > 0.5% absolute OR +50% relative vs baseline week for 3 consecutive days.
Rationale: chargebacks are high-cost, lagging fraud signal. Use both absolute and relative to catch spikes from low-baseline categories. -
Fraud acceptance rate (confirmed frauds / approved orders) — Alert if > 0.2% absolute OR +3σ above 30-day rolling mean.
Rationale: direct measure of fraudulent approvals; sigma-threshold reduces false alarms from noise. -
New-account purchase conversion & fraud mix — Alert if new-account conversion increases >30% while new-account fraud share >25% of total fraud for 7 days.
Rationale: simplified flow may be abused by fake accounts; combining conversion and fraud share avoids punishing healthy growth. -
Velocity anomalies (payments per IP/device per hour) — Alert if count from a single IP/device > 10x historical 95th percentile or sudden increase in distinct cards per IP.
Rationale: automated attacks show high velocity; percentile-based threshold adapts to normal variability.
Implementation notes: backtest thresholds over historical A/B-split data, apply segmentation (country, payment method), surface alerts in dashboards + Slack, and require immediate rollback criteria (e.g., chargeback or fraud acceptance breach sustained for 72 hours).
Explain revenue decomposition for an online marketplace. Write a formula that breaks total revenue into its component drivers. For each term, describe what you would measure to track it and one practical risk in measuring that term reliably.
Sample Answer
Direct answer
For an online marketplace, the platform's own revenue is gross merchandise value (GMV, the total value of transactions flowing through the platform) multiplied by the take rate the platform keeps as commission; GMV itself decomposes into how many customers are active, what share convert, how much they spend, and how often. Each term in that chain has its own measurement approach and its own way of quietly going wrong.
Structured elaboration
Platform Revenue=GMV×Take Rate
GMV=Nactive×CR×AOV×F
where $N_{active}$ is active customers, $CR$ is conversion rate, $AOV$ is average order value, and $F$ is purchase frequency over the period. Separating platform revenue from GMV matters specifically for a marketplace: the buyer's total spend and the platform's actual take are different numbers, and conflating them overstates what the business itself earns.
| Term | What to measure | Practical risk |
|---|---|---|
| Active customers ($N_{active}$) | Distinct users with a qualifying session or login in the period | Identity fragmentation: a guest checkout and a logged-in return visit from the same person can be double-counted or split across device and cookie |
| Conversion rate (CR) | Purchases divided by active/eligible visitors | Attribution mismatch when a purchase completes through a different channel or after a delay than the one that gets counted |
| Average order value (AOV) | Total order value divided by number of orders | Refunds and chargebacks arriving after the period closes bias AOV unless they are backfilled into the right period |
| Purchase frequency (F) | Orders per active customer over the period | Retried or duplicate orders inflate the count unless deduplicated by an order identifier |
| Take rate | Commission collected divided by GMV, tracked per category or seller tier | A blended take rate can look stable while masking a shift toward categories or promotions with materially lower commission |
Worked example
Suppose, for one period: 10,000 active customers, a 4% conversion rate, $60 average order value, and 1.5 orders per active customer.
GMV=10,000×0.04×$60×1.5
Working left to right: $10{,}000 \times 0.04 = 400$ converting customers; $400 \times $60 = $24{,}000$; $$24{,}000 \times 1.5 = $36{,}000$.
GMV=$36,000
If the platform's blended take rate on this category is 15%:
Platform Revenue=$36,000×0.15=$5,400
The buyers collectively spent $36,000 through the marketplace, but the platform itself only earned $5,400 of that; a decomposition that stops at GMV and calls it "revenue" overstates the business's actual earnings by more than six times in this example.
Trade-offs & pitfalls
The multiplicative decomposition assumes the four GMV terms move independently, but they often do not: a promotion that raises conversion rate frequently lowers average order value at the same time (customers converting on smaller, promo-priced baskets), so a healthy-looking conversion number can mask a shrinking GMV if AOV is not checked in the same breath. Take rate is the term most often left out of a customer-facing decomposition entirely, which is the core risk for a marketplace specifically: reporting buyer GMV growth as if it were platform revenue growth misrepresents the business, especially when take rate itself is drifting down due to a mix shift toward lower-commission categories or negotiated seller discounts. Finally, purchase frequency and active-customer counts both depend on identity resolution; if that resolution logic changes (a new login system, say), every term in the decomposition can shift for reasons that have nothing to do with real buyer or seller behavior.
Given sample revenue per user values [50, 55, 60, 5000], describe two statistical methods to detect outliers and apply them to flag which values are outliers using the IQR rule and a Z-score threshold of 3. Explain how flagged outliers would affect mean and median reporting and one remediation strategy.
Sample Answer
On the sample [50, 55, 60, 5000], neither the IQR rule (1.5 times IQR beyond Q1/Q3) nor a Z-score threshold of 3 actually flags 5000 as an outlier, which is a useful lesson on its own: both rules can miss an obvious outlier when the sample is this small, because a single extreme value distorts the very statistics (IQR, mean, standard deviation) used to detect it. The bigger practical point is that the mean (1291.25) is not a trustworthy summary of this data, while the median (57.5) is.
Structured elaboration
Method 1: IQR rule
Sort the data, split into halves, and take the median of each half as Q1 and Q3:
IQR=Q3−Q1
outlier if x<Q1−1.5IQR or x>Q3+1.5IQR
Method 2: Z-score
z=sx−xˉ
flag any point with the absolute value of z at least 3 (using the sample or population standard deviation; both are shown below, and they agree on the conclusion here).
Worked example
Data sorted: [50, 55, 60, 5000].
IQR rule:
- Q1 = median(50, 55) = 52.5
- Q3 = median(60, 5000) = 2530
- IQR = 2530 - 52.5 = 2477.5
- Bounds: [52.5 - 1.5(2477.5), 2530 + 1.5(2477.5)] = [-3663.75, 6246.25]
- 5000 is inside [-3663.75, 6246.25], so the IQR rule does not flag it.
Z-score rule:
- Mean = (50+55+60+5000)/4 = 1291.25
- Population standard deviation is about 2141.25 (sample standard deviation is about 2472.50)
- z(5000) = (5000 - 1291.25) / 2141.25, which is about 1.73 with the population standard deviation, or about 1.50 with the sample standard deviation
- Neither exceeds the threshold of 3, so the Z-score rule with threshold 3 also does not flag it.
(all values verified with python3's statistics module: mean 1291.25, population standard deviation 2141.25, sample standard deviation 2472.50, z(5000) with population standard deviation is 1.732)
Both rules fail here because n = 4 is far too small for either method's underlying assumptions. Q3 itself is contaminated by the outlier since it is the median of {60, 5000}, and the mean and standard deviation are both dragged upward by the same point that inflates them, making the z-score understate its own extremity.
Impact on mean vs median, and remediation
- Mean (1291.25) is wildly unrepresentative: it is more than 20 times any of the other three values.
- Median (57.5) reflects the typical value well and is unaffected by 5000's magnitude, only its rank.
- Remediation: investigate 5000 first (a data entry error versus a genuinely high-value customer). If it is legitimate but unrepresentative for a "typical revenue per user" metric, report the median or a trimmed mean alongside the full mean, or winsorize (cap) extreme values above a chosen percentile, and call out large accounts separately rather than letting them silently dominate an average.
Trade-offs & pitfalls
- Both rules are much less reliable at small n; with only 4 points, one extreme value can shift Q3 or the standard deviation enough to mask itself. Neither rule "failing" here means the value is not actually anomalous. It means the tools were not built for n = 4.
- The IQR rule is robust to the outlier's magnitude (it depends on ranks) but not to a small sample where the quartiles themselves are computed from very few points.
- The Z-score rule is directly vulnerable to the outlier: the outlier itself inflates the standard deviation used to judge it, which can hide even large true outliers (masking).
- Silently dropping a flagged, or even an unflagged but suspicious, value without investigating whether it is a data error or a real, important case risks deleting real signal (a legitimate enterprise customer) rather than noise.
An analytics events table stores a JSON payload column that many ad-hoc queries need to reach into, and those queries are slow. Discuss the strategies available to speed this up: schema-on-read versus schema-on-write, extracting frequently-used fields into derived columns, and converting to Parquet with explicit typed columns, with the trade-offs of each.
Sample Answer
A JSON payload column being slow for ad-hoc queries usually means the engine has to parse and traverse the semi-structured value for every row on every query that reaches into it, work that a typed, columnar layout would have already done once at write time; the fix generally means moving that parsing cost from query time to write time, at whatever level of commitment the workload can tolerate.
Schema-on-read versus schema-on-write
Schema-on-read (the current state, presumably) keeps the flexibility to store any JSON shape without an upfront schema decision, at the cost of every query paying the JSON-parsing overhead fresh, and getting no benefit from columnar compression or predicate pushdown (the engine applying a WHERE filter down at the storage layer, skipping unneeded data before it is even read into memory, instead of reading everything into memory and filtering afterward) on the fields buried inside the payload, since the storage layer only sees one opaque blob column, not the individual fields within it. Schema-on-write commits to a known structure ahead of time, letting the engine store and compress each field independently and apply the same pushdown/pruning optimizations to them as any other column, at the cost of needing to know (and re-migrate, if it changes) the schema in advance.
Extracting frequently-used fields into derived columns
A middle ground: identify the specific JSON fields that ad-hoc queries actually filter or aggregate on most often (from query logs), and materialize just those as proper typed columns alongside the original JSON blob, computed once at write time (or as a scheduled backfill/incremental job). Queries touching only those hot fields get full columnar-storage benefits; queries needing a rarely-accessed field can still fall back to parsing the original JSON blob, so you are not forced to fully commit to a schema for fields nobody queries yet.
Converting to Parquet with explicit typed columns
For a payload whose shape has genuinely stabilized, converting it fully into explicit typed Parquet columns (via a nightly or streaming transformation job) gets the full benefit, columnar compression, predicate and projection pushdown, statistics-driven pruning, on every field, not just the hottest ones, at the cost of committing to that schema and needing a migration path whenever the JSON payload's shape legitimately evolves.
Trade-offs and pitfalls
The derived-columns approach is attractive because it is incremental and low-risk (nothing about the original JSON blob's flexibility is lost), but it can accumulate an ever-growing set of ad-hoc extracted columns if nobody periodically reviews which ones are still actually used, becoming its own maintenance burden. A full Parquet conversion is the most performant long-term answer but is the wrong first move for a payload whose shape is still actively evolving, since a schema migration on every shape change can become more disruptive than the JSON-parsing cost it was meant to eliminate; match the level of commitment to how stable the payload's shape actually is.
A launch depends on a partner company or external vendor, and they are missing deadlines that put your roadmap at risk. You do not have direct authority over them. What would you do in the first week to protect the launch, rebuild alignment, and decide whether the original plan is still realistic?
Sample Answer
In the first week, I would focus on protecting the launch while testing whether the plan is still realistic.
Day 1 and 2: I would get the facts. What is late, what is truly on the critical path, and which milestones depend on the partner. I would also ask for a written status update so there is one shared view of the problem.
Day 3 and 4: I would reset alignment with the partner and internal leaders. I would make the risk visible, propose a recovery plan, and define what needs to happen by when. If needed, I would narrow scope, add internal backup work, or create a phased launch so the entire roadmap is not blocked by one dependency.
Day 5: I would decide whether the original date is still credible. If the partner has recovered, I keep the plan. If not, I recommend a revised timeline with clear trade-offs, rather than hoping the delay disappears.
The key is to avoid passive waiting. Even without direct authority, I can protect the launch by clarifying ownership, escalating early with options, and keeping leadership informed with facts instead of optimism.
For example, in a case like this, the launch depended on a third-party payments provider delivering a new API endpoint that a checkout redesign needed to go live. On Day 1, the written status update from the vendor's account manager revealed the endpoint was not late by a day or two, it was still in the vendor's own internal QA with no committed date, three weeks past their original commitment. By Day 3, resetting alignment meant a joint call with the vendor and internal engineering leadership where the risk was made explicit: without the endpoint, the full checkout redesign could not ship on the original date. The recovery plan split the work: internal engineering built a fallback that used the vendor's existing, older endpoint for most transaction volume, while the new endpoint's remaining edge cases, a smaller set of international payment methods, were scoped out of the initial launch and phased in once the vendor delivered. On Day 5, the vendor still had no firm delivery date for the new endpoint, so the recommendation was to launch on the original date with the phased fallback rather than slip the whole roadmap, with a follow-up launch for the remaining payment methods once the vendor's endpoint actually shipped.
You're building a data-driven pitch for a heavily regulated industry (for example finance or healthcare). Explain how you would adapt your storytelling and delivery: which regulatory constraints affect what you can show, what anonymization or de-identification you would apply, what documentation a regulator or auditor would expect to see, and how you would present the trade-off between compliance and business insight to an executive who wants the fuller picture.
Sample Answer
Direct answer
In a regulated industry the story changes in three ways before you ever open a slide deck: what you're allowed to show gets filtered by regulation first, every number needs a documented trail back to its source, and the audience usually includes someone whose job is to say no. The craft is presenting a defensible, compliant insight that is still genuinely persuasive, not a watered-down one.
Structured elaboration
1. Filter the insight through the regulatory constraint before you design the story.
Start by asking what you are legally or contractually allowed to surface, not what would make the best slide. In healthcare this typically means de-identification requirements in the style of HIPAA (the Health Insurance Portability and Accountability Act, the US healthcare privacy law) (removing or generalizing direct identifiers, applying k-anonymity style aggregation so no small cell size can be re-identified); in finance it often means restrictions on disclosing individual customer positions, fair-lending constraints on which variables can drive a decision, and model-risk-management documentation requirements. The constraint is not a formatting afterthought, it determines which findings you can even lead with. A finding that is only compelling at the individual-customer level may need to be re-cut at a cohort or segment level to be shshowable at all.
2. Choose an anonymization or aggregation method proportionate to the risk, and say so explicitly.
Common options, roughly in order of how much detail they preserve: generalization/binning (age becomes a 10-year band), suppression of small cells (any group below a stated threshold, for example n<10, is not reported individually), k-anonymity (restructuring the data so every individual is indistinguishable from at least k-1 others) or differential privacy (adding carefully calibrated statistical noise so no single record can be reverse-engineered from the released numbers) for released datasets, and full aggregation to segment or cohort level for anything leaving the compliance boundary. State which one you used and why in the deck itself, not just in a footnote; a compliance-literate audience will ask, and pre-empting the question builds trust.
3. Build the documentation trail the regulator or auditor would expect.
At minimum: a data lineage note (where the data came from, what was excluded and why), the exact aggregation/anonymization method applied, the population definition, and any known limitations or exclusions. In a bank this is close to what model-risk-management documentation already requires; in healthcare it is close to what a compliance or privacy officer would ask for before approving external use of a dataset. Producing this alongside the insight, not after someone asks for it, is what separates a defensible story from an accidental disclosure.
4. Present the compliance-versus-insight trade-off to the executive directly, instead of hiding it.
An executive who wants the fuller, more granular picture needs to understand that the constraint is not analyst caution, it is a hard requirement with real penalties for the organization. Frame it as: here is the insight we can show at the compliant aggregation level, here is what more granular view would add, and here is why we cannot show that view without additional legal/privacy sign-off (and what that sign-off would require, e.g., a data use agreement, approval from an institutional review board (the ethics body that approves research involving people's data), legal review). This turns a limitation into a scoped, honest recommendation rather than a vague 'we can't share that.'
Worked example
A healthcare analytics team wants to show a hospital system that a proposed care-pathway change reduces 30-day readmissions. The raw finding is a 2.1 percentage point reduction (from a baseline of 15.0% to 12.9%) in a cohort of 640 patients. Because the cohort includes some very small subgroups (for example, a specific rare-diagnosis subgroup of 6 patients), the team cannot report readmission rates by that subgroup without violating a small-cell suppression rule (commonly a minimum reportable cell size, e.g. n>=11, used across many healthcare reporting standards). The story that ships: the top-line reduction at the full-cohort level (which is well above the suppression threshold and safe to report), a note that subgroup-level results are directionally consistent but suppressed below n=11 per data governance policy, and an explicit statement that a follow-up analysis with a larger sample is planned before subgroup-level claims can be made. The executive sees the real result, understands exactly why the subgroup cut is withheld, and knows what it would take to get it.
Trade-offs and pitfalls
- The biggest pitfall is aggregating so heavily to stay 'safe' that the insight becomes too vague to act on; the discipline is finding the least aggregated view that is still compliant, not the most conservative one available.
- A second common mistake is treating the regulatory constraint as something to mention once in an appendix; a compliance-savvy stakeholder will judge you on whether the constraint shaped the analysis from the start, not whether you disclosed it at the end.
- Do not let 'the regulation requires it' become an excuse for skipping normal storytelling discipline (headline, evidence, recommendation); the compliant version of the insight still needs to lead with the so-what, it just has a narrower evidentiary base.
- When in doubt about whether a cut of the data is disclosable, the right escalation path is your privacy/compliance/legal function, not an individual judgment call, and that escalation itself is worth naming as part of your process when a stakeholder pushes for more granularity.
What does an in-warehouse transformation tool like dbt actually give you that hand-written SQL scripts scheduled by cron don't? Ground your answer in specific capabilities (not just 'it's more organized').
Sample Answer
An in-warehouse transformation tool like dbt gives you three things a scheduled cron script does not: version-controlled, testable SQL; a dependency graph the tool builds and executes for you; and documentation that stays attached to the code instead of living in a separate wiki.
Concretely, what you get
- Modularity and dependency management. Each model is a
.sqlfile that references other models withref(). dbt parses those references into a DAG (directed acyclic graph) and runs models in the right order automatically, so you never hand-maintain "run script B after script A finished." - Testing as a first-class citizen. You declare assertions in YAML next to the model (uniqueness, not-null, accepted values, referential integrity to another model) and dbt runs them as part of the pipeline, not as an afterthought someone has to remember to write.
- Documentation and lineage for free. dbt generates a browsable docs site from your model definitions and column descriptions, and a lineage graph showing exactly what feeds what. A cron-scheduled SQL script has none of this unless someone builds it by hand and keeps it in sync.
- Git-native change management. Because everything is plain text SQL and YAML, you get code review, branching, and CI the same way you would for application code, which a stored procedure buried in a scheduler typically does not.
Where this actually helps day to day
A change to an upstream source column shows up as a broken test or a documented lineage edge before it silently corrupts three downstream marts. Onboarding a new analyst is "clone the repo and read the docs site" instead of "ask around for who owns which script." A bad model can be reverted with git revert instead of hand-reconstructing what the SQL used to say.
What it does not replace
dbt only transforms; it does not extract or load data (you still need a connector or CDC (Change Data Capture) tool to get data into the warehouse), and it does not orchestrate anything outside the warehouse (you still need something like Airflow to trigger dbt run on a schedule and coordinate it with non-dbt tasks).
Search Results
DoorDash Data Analyst Interview in 2025 (Leaked Questions)
3.3 Behavioral Questions · Describe a time you used data to influence a product or business decision. · How do you approach balancing multiple ...
DoorDash Data Analyst Interview: Analytics Exercise, Case Study ...
Describe a data project you worked on. · How have you made complex data or analyses more accessible to non-technical partners? · What would your ...
Ace the DoorDash Data Scientist interview: Proven 2025 guide
Interview Questions · How do you analyze if a product is successful? · What are the most important metrics for DoorDash? · How do you measure revenue and cost?
8 DoorDash SQL Interview Questions (Updated 2025) - DataLemur
SQL Question 1: First 14-Day Satisfaction · SQL Question 2: Analyze DoorDash Delivery Performance · SQL Question 3: Can you explain what an index ...
DoorDash SQL Interview Question for Data Scientists ... - YouTube
Solution and walkthrough of a real SQL interview question for Data Scientist and Data Analyst technical coding interviews.
DoorDash Data Analysis Interview Questions (Updated 2025)
Review this list of DoorDash data analysis bizops & strategy interview questions and answers verified by hiring managers and candidates.
This interview preparation guide was generated using AI-powered research from the sources listed above. While we strive for accuracy, we recommend verifying critical information from official company sources.
Want to create your own tailored preparation guide using our deep research?
Get Started for FreeInterview-Ready Courses
Visual-first, interactive, structured learning paths