Dream11 Data Science Interview Questions & Answers
Curated interview practice questions with answers. These are practice scenarios, not a verified list of past interview questions.
About Dream11 hiring for Data Science roles
Dream11 is an Indian sports technology platform and the flagship brand of Dream Sports, which also includes FanCode and other businesses. Its engineering and analytics teams build systems that handle very high traffic during live matches. It hires for software engineers, SDETs, data engineers, data analysts and data scientists.
For Data Science roles, this Dream11 practice set focuses most on Machine Learning (10), Statistics and Probability (6), SQL for Data Science (4), MLOps and Model Deployment (4). It has 1 easy, 28 medium, 11 hard questions, so you can start easy and work up to the harder ones.
Company type
Product
Headquarters
Mumbai, India
Main India offices
Mumbai
Dream11 Data Science interview process
Online assessment or assignment
Technical round 1
Technical round 2 (design or case)
Hiring manager round
Culture fit round
Typical pattern based on public candidate experiences. Rounds vary by role, team and year.
Solved for Dream11Start practicing
3 QUESTIONS FREESign up to unlock the full question bank and track your progress.Unlock every question and answer, then continue practising company-wise and package-wise.
Use internal metrics: the silhouette score compares how close a point is to its own cluster versus the nearest other cluster, and the Davies-Bouldin index measures cluster overlap. The elbow method looks at within-cluster variance. But the real test is usefulness: are clusters stable across random seeds and samples, can the business describe them, and do they behave differently on outcomes like spend or churn?
L1 (Lasso) adds absolute weights and can shrink some to zero, giving feature selection. L2 (Ridge) adds squared weights and shrinks them smoothly without removing features.
04
Tell me about a time you had to deliver data under an urgent deadline.
Situation: the leadership team needed festive-sale numbers by city for a 9 am review, and the dashboard pipeline had failed overnight. Task: deliver accurate numbers in three hours. Action: I queried the raw orders tables directly, reused validated logic from the dashboard SQL, cross-checked totals with finance's daily figure and flagged two cities with partial data. Result: the review went ahead on time, and I later added pipeline failure alerts.
05
Your random forest is accurate but too slow at prediction time for a real-time API. What do you do?
First measure where the time goes. Then reduce trees and maximum depth and check the accuracy loss. Switch to a gradient boosting model, which often needs fewer, smaller trees. Compile the model with tools like ONNX Runtime or Treelite. Cache features or precompute scores for known users. If accuracy allows, a simpler logistic regression may meet the latency budget easily. Always compare options on the same validation set.
06
After joining orders with a promotions table, total revenue doubled. What went wrong?
The join created duplicate order rows, because some orders match more than one promotion row, so each amount is counted several times. Check by comparing COUNT(*) with COUNT(DISTINCT order_id) after the join. Fix it by aggregating the promotions table to one row per order first, picking one promotion with ROW_NUMBER, or summing revenue before the join. Always check row counts after every join.
07
Write Python code to calculate the sample size per group needed to detect a lift from 5 percent to 5.5 percent conversion.
Effect size measures how large a difference is, for example the absolute lift in conversion or Cohen's d for means. A p-value only says whether the difference is likely due to chance. With millions of users, a 0.01 percent lift can be significant yet useless for the business. Reporting effect size with a confidence interval tells decision makers both whether the effect is real and whether it is worth acting on.
Use grid search, random search or Bayesian optimisation with cross-validation, starting with a coarse random search and narrowing the promising ranges.
10
What is statistical power and how can you increase it?
Power is the probability of detecting a real effect. Increase it with a larger sample, a bigger effect size, lower noise or a higher significance level.
11
Your dataset is highly imbalanced (2% positives). How do you handle it?
Use stratified splits, class weights, resampling (SMOTE or undersampling) and threshold tuning, and judge the model with PR-AUC or F1 instead of accuracy.
12
How do you handle personal data when sending customer text to an external LLM API?
First check the data processing agreement, data residency and retention terms, and India's DPDP Act requirements with legal. Minimise what is sent: mask or tokenise names, phone numbers, Aadhaar and card numbers before the call, and restore them afterwards if needed. Use enterprise endpoints with no training on your data, log access, and consider a self-hosted open model for highly sensitive workloads.
13
Your model performance degrades every few months. Would you retrain on a fixed schedule or based on triggers?
Scheduled retraining, like monthly, is simple and predictable but may be too late after a sudden change or wasteful when nothing changed. Trigger-based retraining runs when monitoring shows drift or a performance drop, which reacts faster but needs reliable monitoring. Many teams combine both: a regular schedule plus triggers for big shifts. Either way, a retrained model must pass the same evaluation gate before replacing the current one.
14
Tell me about a time you stopped a team from shipping a change based on a flawed experiment.
Situation: a team wanted to launch a feature after a test showed a 6 percent lift. Task: as the reviewing data scientist, validate it. Action: I found that assignment was triggered after users clicked into the feature, so treatment had only engaged users. I explained the selection bias simply, proposed assigning at app open, and helped rerun it. Result: the true lift was under 1 percent, and we added assignment checks to the review template.
15
Your test shows a 2 percent lift in conversion, but revenue per user went down. What do you do?
Do not ship on conversion alone. Check whether the change shifted buyers to cheaper items, increased discount usage or pulled in low-value orders. Break down revenue into conversion times average order value, look at item mix, and confirm the revenue drop is statistically meaningful rather than noise. Then go back to the agreed primary metric and guardrails; if revenue is the business goal, it should guide the decision.
16
A feature works well offline but is not available at prediction time in production. How do you handle this?
This is training-serving skew. The feature might be computed from data that arrives later, like final order status. First confirm exactly when each feature is available in production. Rebuild the training set using point-in-time values, as they were at prediction time, or drop the feature. A feature store with point-in-time joins and the same feature code for training and serving prevents this. Expect offline scores to drop, but they become honest.
17
Your credit model has good overall AUC but performs much worse for applicants from one region. What do you do?
First confirm with per-segment metrics and enough samples, since small groups are noisy. Then check why: fewer training examples from that region, different feature distributions, missing data or labels that reflect past biased decisions. Fixes include collecting more data, reweighting, segment-aware features or a separate calibration. Also review fairness and regulatory requirements, and agree with risk and compliance teams on acceptable performance gaps before launch.
18
Write a Python function to compute IoU between two bounding boxes given as (x1, y1, x2, y2).
A learning curve plots training and validation scores against the size of the training set. If both scores are low and close, the model has high bias and needs more features or a more flexible model. If training is high but validation is much lower and the gap narrows as data grows, the model has high variance and more data will help. It tells you whether collecting more data is worth the cost.
20
An analyst tested 20 metrics in one experiment and found one significant. Should you trust it, and how do you correct for this?
Each test at 5 percent significance has a 5 percent false positive chance. Run 20 independent tests and you expect about one false positive even if nothing is real. Corrections include Bonferroni, which divides alpha by the number of tests and is strict, and Benjamini-Hochberg, which controls the false discovery rate and keeps more power. Also reduce the problem by choosing one primary metric before the experiment starts.
21
Write SQL to compute a running total of spend for each user.
SELECT user_id, order_date, amount,
SUM(amount) OVER (
PARTITION BY user_id
ORDER BY order_date
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
) AS running_spend
FROM orders
ORDER BY user_id, order_date;
It tries candidate splits and picks the one that most reduces impurity — Gini or entropy (information gain) for classification, variance / MSE for regression.
23
What is the difference between zero-shot and few-shot prompting?
In zero-shot prompting you give only instructions, like classify this review as positive or negative. In few-shot prompting you also include a few worked examples of input and correct output, which shows the model the format and decision boundary. Few-shot usually improves consistency on custom labels, at the cost of more tokens. Pick examples that cover tricky cases and keep their format identical to what you want back.
24
For a warehouse, a stockout costs five times more than holding extra stock. How should the forecast change?
A forecast of the mean is the wrong target when costs are asymmetric. Forecast a quantile instead. The optimal quantile here is about 5 divided by 5 plus 1, roughly the 83rd percentile, which is the newsvendor critical ratio. Train with quantile or pinball loss, or use prediction intervals from a probabilistic model. Evaluate with pinball loss and the actual stockout and holding cost, not just MAE.
25
Write NumPy code for non-maximum suppression on a set of boxes and scores.
Bias occurs when the sample does not represent the population. Reduce it with random or stratified sampling, higher response rates and by checking sample demographics against the population.
27
The business asks you to pick a decision threshold for a churn model. How do you choose it?
The default 0.5 is rarely right. I would get the cost of each outcome: the value of saving a churner, the cost of a retention offer, and the team's capacity to contact customers. Then I compute expected profit or precision and recall at many thresholds on validation data and pick the one that maximises value within capacity. I would also check that the chosen threshold stays stable over recent months.
28
Write Pandas code to compute each customer's average order value excluding the current order.
g = df.groupby('customer_id')['amount']
total = g.transform('sum')
count = g.transform('count')
# Leave-one-out mean; NaN when it is the customer's only order
df['avg_other_orders'] = (total - df['amount']) / (count - 1)
df.loc[count == 1, 'avg_other_orders'] = float('nan')
# For time-aware features, use only earlier orders instead
29
You need to extract fields from scanned invoices that come in hundreds of different layouts. How would you design it?
Fixed templates will not scale to hundreds of layouts. Start with preprocessing: deskew, denoise and detect text regions. Run OCR to get words with their positions. Then use a layout-aware document model, or a vision-language model, to map words to fields like invoice number, GSTIN and total. Add validation rules, such as GSTIN format and line items summing to the total, and send low-confidence documents to human review.
30
Write Python code to run an ADF stationarity test and difference the series if needed.
from statsmodels.tsa.stattools import adfuller
def is_stationary(s, alpha=0.05):
p_value = adfuller(s.dropna())[1]
return p_value < alpha
series = s.copy()
d = 0
while not is_stationary(series) and d < 2:
series = series.diff()
d += 1
print('differencing order d =', d)
31
A key metric dropped 8 percent week over week. How do you check whether it is real?
First rule out data issues: tracking changes, pipeline delays, missing partitions or a changed metric definition. Then compare with the same week last year and look for holidays or seasonality. Check normal weekly variation to see if 8 percent is unusual. Break the drop down by platform, region, app version and user type to find where it is concentrated. Finally, check releases, campaigns or outages that happened that week.
32
Your model's most important feature is customer_id. What is wrong?
An ID has no real meaning, so high importance means the model is memorising individual customers. It often happens when the same customers appear in both train and test, or when IDs were assigned in time order and act as a proxy for date or signup cohort. I would drop the ID, use a group-based split by customer, and if timing matters, add an explicit feature like account age instead.
33
Your feature computation on millions of rows uses only one CPU core. Would you use threads or processes to speed it up?
Because of the GIL, threads in CPython do not run Python bytecode in parallel. Threads are fine for I/O-bound work like calling APIs or reading many files. For CPU-bound work like feature computation on chunks, multiprocessing or joblib runs separate processes on separate cores. The cost is process start-up time and copying data between processes. Many NumPy and Pandas operations already release the GIL internally, so measure before adding complexity.
34
Write a FastAPI endpoint that serves predictions from a saved scikit-learn model.
This is overfitting. Check for data leakage, simplify the model, add regularization, get more data or augment it, use cross-validation, early stopping and feature selection.
36
A query on a 200 million row table takes 20 minutes. How do you speed it up?
Start with EXPLAIN to see the plan and find full scans, bad joins or spills. Filter as early as possible and select only needed columns. Make sure the table is partitioned or clustered on the date column and that the query filters on it. Check join keys for type mismatches and duplicates that explode rows. Pre-aggregate into a summary table if the query runs daily, and replace correlated subqueries with joins or window functions.
Function calling lets an LLM respond with a structured request to call a tool you defined, such as get_order_status with an order_id, instead of plain text. Your code runs the function, returns the result to the model, and the model uses it in its final answer. This connects LLMs to live data, calculators and APIs. You must validate arguments, limit which tools exist and handle errors, because the model can choose wrong inputs.
38
Tell me about a time you automated a manual step in a machine learning workflow.
Situation: each monthly retrain needed a day of manual data pulls, notebook runs and copying files to servers. Task: make it reliable and hands-off. Action: I wrapped the steps into a scheduled pipeline with data validation checks, logged runs in MLflow and added an approval step before promotion. Result: retraining time dropped from a day to under an hour of review, and there were no more failed deployments from missed steps.
39
Soon after a new model version went live, customer complaints spiked. How do you roll back safely and learn from it?
Roll back immediately to the previous registry version through the deployment pipeline, rather than editing servers by hand, and confirm metrics recover. Then investigate offline: compare predictions of both versions on the same traffic, check feature pipelines and data changes, and review what the offline evaluation missed. Add the failing cases to the test set, and use canary or shadow rollout with alert thresholds for future releases.
40
A new checkout converts better on both mobile and desktop, but worse overall. How is that possible?
Simpson's paradox happens when a trend in several groups reverses when the groups are combined. Example: a new checkout converts better on both mobile and desktop, but worse overall, because most of its traffic came from mobile, which has lower conversion anyway. The mix of groups, not the treatment, drives the total. The lesson is to check segment-level results and confounding variables before drawing conclusions from aggregated numbers.
Tips to crack the Dream11 Data Science interview
Practise system design for sudden traffic spikes, such as many users joining just before a cricket match starts.
Prepare analytics cases on user engagement, retention and contest participation around major tournaments.
Keep up with regulatory changes affecting online gaming in India, as they directly shape the company's business.
Keep a one-minute story ready for every project on your CV: problem, your part, tools, result.
Practise the hard questions on this page aloud; Dream11 interviewers usually ask follow-ups on your first answer.
Frequently asked questions
How many rounds are there in the Dream11 Data Science interview?
Candidates usually go through 5 stages: Online assessment or assignment; Technical round 1; Technical round 2 (design or case); Hiring manager round; Culture fit round. The exact rounds change with the role, team, location and your experience, so confirm the process with the recruiter.
Which topics should I prepare for the Dream11 Data Science interview?
This practice set leans on Machine Learning (10), Statistics and Probability (6), SQL for Data Science (4), MLOps and Model Deployment (4). Revise those first, then practise explaining one or two of your own projects end to end, because most Dream11 interviewers ask you to walk through real work.
Are these the exact questions asked at Dream11?
No. These are curated practice questions that match the skills and difficulty usually tested in product interviews like Dream11's. They are not a leaked or verified list of past questions.
Where does Dream11 hire Data Science professionals in India?
Dream11 has large teams in Mumbai. Openings and locations change often, so check the Dream11 careers page and filter by city and experience.