Skip to content

Data Science Interview Questions in Chennai

36 practice questions with answers for Data Science interviews in Chennai.

Data Science jobs in Chennai

Chennai is a long-standing IT-services and SaaS hub along OMR, with strong demand for testing, data and support-engineering roles. Many companies here hire freshers in large batches and train them on the job.

Below are 36 questions that match the mix of service, product and domain employers hiring data scientists in Chennai.

Solved for ChennaiStart 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.
3 questions free Unlock the rest in seconds
01

What is a generator and when would you use one?

Save to ▾
Show answer
A function using yield that produces values lazily, one at a time. It saves memory when processing large files or streams because the full sequence is never held in RAM.
02

How does the Gini impurity differ from entropy?

Save to ▾
Show answer
Both measure node impurity; Gini is cheaper to compute and entropy is slightly more sensitive to class balance, with similar trees in practice.
03

How does linear regression work and what are its assumptions?

Save to ▾
Show answer
It fits a line minimising squared error. Assumes linearity, independent errors, constant variance (homoscedasticity), normally distributed residuals and no strong multicollinearity.
04

What is sampling bias and how can you reduce it?

Save to ▾
Show answer
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.
05

Your test shows a 2 percent lift in conversion, but revenue per user went down. What do you do?

Save to ▾
Show answer
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.
06

What is batch normalisation?

Save to ▾
Show answer
It normalises layer inputs per mini-batch and then rescales them, stabilising and speeding up training and allowing higher learning rates.
07

What is the difference between stemming and lemmatisation?

Save to ▾
Show answer
Both reduce words to a base form. Stemming chops suffixes using rules, so studies becomes studi; it is fast but can produce non-words. Lemmatisation uses vocabulary and grammar to return the real dictionary form, so studies becomes study and better becomes good. Lemmatisation is more accurate but slower. With modern transformer models, neither is usually needed because subword tokenisers handle word forms.
08

What is a feature store and what problems does it solve?

Save to ▾
Show answer
A feature store is a central system to define, compute, store and serve features for models. It keeps an offline store for training with point-in-time correct history and an online store for low-latency serving, both fed by the same feature definitions. This prevents training-serving skew, avoids teams rebuilding the same features, and adds documentation and monitoring. It is worth it when many models share features or need real-time serving.
09

You target-encoded a city column and validation AUC jumped from 0.72 to 0.95. What do you suspect?

Save to ▾
Show answer
Target encoding replaces each category with the average target value for that category, for example the churn rate per city. It handles high-cardinality columns compactly. The main risk is leakage: if a row's own target is included in its encoding, the model sees the answer and overfits. Prevent it with out-of-fold encoding, smoothing toward the global mean for rare categories, and fitting only on training data.
10

Write Pandas code to cap outliers at the 1st and 99th percentile.

Save to ▾
Show answer
# fit limits on training data only, then apply to test low, high = train['income'].quantile([0.01, 0.99]) train['income_capped'] = train['income'].clip(low, high) test['income_capped'] = test['income'].clip(low, high)
11

What is the difference between == and is?

Save to ▾
Show answer
== compares values for equality, while is checks whether two names point to the same object in memory. Use is mainly for None checks.
12

How do you tune hyperparameters?

Save to ▾
Show answer
Use grid search, random search or Bayesian optimisation with cross-validation, starting with a coarse random search and narrowing the promising ranges.
13

Random forest vs a single decision tree?

Save to ▾
Show answer
A forest averages many trees trained on bootstrapped rows and random feature subsets, which cuts variance and overfitting at the cost of interpretability.
14

What is quantisation of LLMs?

Save to ▾
Show answer
Quantisation stores model weights in lower precision, such as 8-bit or 4-bit integers instead of 16-bit floats. A 7-billion parameter model drops from about 14 GB to around 4 GB at 4-bit, so it fits on smaller GPUs or even laptops and runs faster. The cost is some loss in quality, usually small at 8-bit and noticeable on hard tasks at very low bits. Common formats include GPTQ, AWQ and GGUF.
15

Write SQL to compute a 7-day rolling average of daily active users.

Save to ▾
Show answer
WITH daily AS ( SELECT activity_date, COUNT(DISTINCT user_id) AS dau FROM events GROUP BY activity_date ) SELECT activity_date, dau, AVG(dau) OVER (ORDER BY activity_date ROWS BETWEEN 6 PRECEDING AND CURRENT ROW) AS dau_7d_avg FROM daily ORDER BY activity_date;
16

Write SQL to calculate month-over-month revenue growth.

Save to ▾
Show answer
WITH monthly AS ( SELECT DATE_TRUNC('month', order_date) AS month, SUM(amount) AS revenue FROM orders GROUP BY 1 ) SELECT month, revenue, LAG(revenue) OVER (ORDER BY month) AS prev_revenue, ROUND(100.0 * (revenue - LAG(revenue) OVER (ORDER BY month)) / NULLIF(LAG(revenue) OVER (ORDER BY month), 0), 2) AS mom_pct FROM monthly;
17

Your LLM app takes 8 seconds to respond and users complain. What do you do?

Save to ▾
Show answer
Break down where the time goes: retrieval, model time to first token and generation length. Stream tokens so users see output immediately. Cut prompt and output length, run retrieval and other calls in parallel, and cache frequent answers. Use a smaller or faster model for simple requests, and avoid chains of several LLM calls where one would do. Set a latency budget per step and monitor p95, not just averages.
18

Write pytest unit tests for a feature function that computes days since last purchase.

Save to ▾
Show answer
import pandas as pd from features import days_since_last_purchase def test_basic_case(): df = pd.DataFrame({'customer_id': [1, 1], 'order_date': pd.to_datetime(['2026-01-01', '2026-01-10'])}) out = days_since_last_purchase(df, as_of='2026-01-15') assert out.loc[1] == 5 def test_no_future_orders_used(): df = pd.DataFrame({'customer_id': [1], 'order_date': pd.to_datetime(['2026-02-01'])}) out = days_since_last_purchase(df, as_of='2026-01-15') assert out.empty
19

Tell me about the most challenging machine learning project you have worked on.

Save to ▾
Show answer
Situation: I built a lead scoring model where only 3 percent of leads converted and labels came 60 days late. Task: deliver a useful ranking for the sales team. Action: I set up a clean time-based validation, engineered activity features, used gradient boosting with class weights and measured lift in the top decile. Result: the top 10 percent of scored leads converted 3.5 times better than average. The hardest part was building trust in the labels.
20

Write Python code to run an ADF stationarity test and difference the series if needed.

Save to ▾
Show answer
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)
21

Tell me about a time you explained the limits of GenAI to business stakeholders.

Save to ▾
Show answer
Situation: sales leaders wanted an LLM to auto-send pricing quotes to clients. Task: guide them to a safe plan. Action: I demoed real failure cases where the model invented discounts, showed accuracy numbers from a test set and proposed a draft-and-approve flow with fixed price data from our system. Result: they agreed, quote drafting time fell by half, and no wrong prices reached clients.
22

Why is cross-entropy preferred over MSE for classification in neural networks?

Save to ▾
Show answer
Cross-entropy measures how far predicted probabilities are from the true class and strongly penalises confident wrong predictions. With a softmax or sigmoid output, it gives large, useful gradients when the model is wrong. MSE with sigmoid outputs gives very small gradients when predictions saturate, so learning slows down. Use binary cross-entropy for two classes, categorical cross-entropy for many classes, and MSE for regression targets.
23

Write a FastAPI endpoint that serves predictions from a saved scikit-learn model.

Save to ▾
Show answer
from fastapi import FastAPI from pydantic import BaseModel import joblib import pandas as pd app = FastAPI() model = joblib.load('model.joblib') class Customer(BaseModel): tenure: int monthly_spend: float plan: str @app.post('/predict') def predict(c: Customer): X = pd.DataFrame([c.model_dump()]) return {'churn_probability': float(model.predict_proba(X)[0, 1])}
24

How do you pivot data in Pandas?

Save to ▾
Show answer
pd.pivot_table(df, index='region', columns='month', values='sales', aggfunc='sum') reshapes long data into a summary matrix; melt() does the reverse.
25

You must forecast demand for a new product that has only three weeks of history. What do you do?

Save to ▾
Show answer
Three weeks is too little to learn seasonality, so borrow information. Find similar past launches by category, price band and channel, and use their early sales curves as analogues. A global model trained across many products, with product attributes as features, can also forecast a cold-start item. Combine this with planned marketing spend and business judgement, show a wide interval, and update the forecast weekly as real data arrives.
26

What is CUPED and how does it reduce variance in experiments?

Save to ▾
Show answer
CUPED uses a pre-experiment covariate, usually the same metric for each user in the weeks before the test, to remove predictable variation. The adjusted metric is Y minus theta times (X minus the mean of X), where theta is cov(X, Y) divided by var(X). Because randomisation makes X balanced across groups, the estimate stays unbiased while variance can drop by 30 to 50 percent, letting tests reach significance faster with the same traffic.
27

Explain the KNN algorithm and its drawbacks.

Save to ▾
Show answer
It predicts from the k nearest labelled points. It is simple but slow at prediction time, sensitive to scaling and irrelevant features, and weak in high dimensions.
28

What is the Global Interpreter Lock (GIL)?

Save to ▾
Show answer
A mutex in CPython that lets only one thread execute Python bytecode at a time. Use multiprocessing for CPU-bound work and threads or asyncio for I/O-bound work.
29

What is tokenisation in NLP?

Save to ▾
Show answer
Splitting text into units such as words, subwords or characters that are mapped to ids; subword methods like BPE handle rare words well.
30

What is U-Net and why is it popular for segmentation?

Save to ▾
Show answer
U-Net is an encoder-decoder network. The encoder downsamples to capture context, and the decoder upsamples back to full resolution to produce a per-pixel mask. Skip connections copy encoder feature maps to the matching decoder level, so fine spatial detail lost during downsampling is recovered. It works well with limited labelled data, which made it the standard for medical imaging and industrial defect segmentation, and it is also the backbone of many diffusion models.
31

Which activation functions do you know and when to use them?

Save to ▾
Show answer
ReLU for hidden layers, sigmoid for binary outputs, softmax for multi-class outputs and tanh when zero-centred outputs help; Leaky ReLU avoids dead neurons.
32

What is an autoencoder and what is it used for?

Save to ▾
Show answer
A network that compresses inputs into a small latent code and reconstructs them; used for denoising, dimensionality reduction and anomaly detection.
33

Write scikit-learn code to get precision, recall and a confusion matrix at a custom threshold of 0.3.

Save to ▾
Show answer
from sklearn.metrics import confusion_matrix, precision_score, recall_score proba = model.predict_proba(X_test)[:, 1] pred = (proba >= 0.3).astype(int) print(confusion_matrix(y_test, pred)) print('precision', precision_score(y_test, pred)) print('recall', recall_score(y_test, pred))
34

What are decorators in Python?

Save to ▾
Show answer
A decorator wraps a function to add behaviour such as logging, timing or caching without changing its code. It is applied with the @name syntax above the function.
35

What is the difference between iterators and iterables in Python?

Save to ▾
Show answer
An iterable can produce an iterator (it has __iter__); an iterator has __next__ and remembers its position. A for-loop calls iter() on the iterable and then next() repeatedly.
36

Write a prompt template for classifying customer support tickets.

Save to ▾
Show answer
System: You classify support tickets for an e-commerce company. Categories: payment, delivery, refund, account, other. Rules: choose exactly one category; if unsure, choose other; do not invent details. Return JSON with fields category and reason, reason under 20 words. Then two short examples showing a ticket and the expected JSON. User: Ticket: {ticket_text}. Keep the template fixed and test it on 100 labelled tickets before rollout.

Companies with offices in Chennai (44)

IT services

TCS

Data Science interview questions

  • 40 questions
  • 4 rounds

Mumbai, Chennai, Pune +2

View questions
IT services

Infosys

Data Science interview questions

  • 40 questions
  • 4 rounds

Bengaluru, Mysuru, Pune +2

View questions
IT services

Wipro

Data Science interview questions

  • 40 questions
  • 4 rounds

Bengaluru, Hyderabad, Pune +2

View questions
IT services

Cognizant

Data Science interview questions

  • 40 questions
  • 4 rounds

Chennai, Bengaluru, Pune +2

View questions
IT services

Capgemini

Data Science interview questions

  • 40 questions
  • 4 rounds

Mumbai, Bengaluru, Pune +2

View questions
Product

Amazon

Data Science interview questions

  • 40 questions
  • 5 rounds

Bengaluru, Hyderabad, Chennai +2

View questions
Hardware & semiconductors

Cisco

Data Science interview questions

  • 40 questions
  • 5 rounds

Bengaluru, Pune, Chennai

View questions
E-commerce & consumer tech

Walmart

Data Science interview questions

  • 40 questions
  • 5 rounds

Bengaluru, Chennai, Gurugram

View questions
Fintech

PayPal

Data Science interview questions

  • 40 questions
  • 5 rounds

Chennai, Bengaluru, Hyderabad

View questions
Banking & finance

Barclays

Data Science interview questions

  • 40 questions
  • 4 rounds

Pune, Chennai, Noida +1

View questions
IT services

HCLTech

Data Science interview questions

  • 40 questions
  • 4 rounds

Noida, Chennai, Bengaluru +2

View questions
IT services

Tech Mahindra

Data Science interview questions

  • 40 questions
  • 4 rounds

Pune, Hyderabad, Bengaluru +2

View questions
IT services

Mphasis

Data Science interview questions

  • 40 questions
  • 4 rounds

Bengaluru, Pune, Chennai

View questions
IT services

LTIMindtree

Data Science interview questions

  • 40 questions
  • 4 rounds

Mumbai, Pune, Bengaluru +2

View questions
IT services

Hexaware

Data Science interview questions

  • 40 questions
  • 4 rounds

Navi Mumbai, Chennai, Pune +2

View questions
IT services

Birlasoft

Data Science interview questions

  • 40 questions
  • 4 rounds

Pune, Noida, Bengaluru +1

View questions
IT services

EPAM Systems

Data Science interview questions

  • 40 questions
  • 4 rounds

Hyderabad, Bengaluru, Pune +2

View questions
Consulting

Thoughtworks

Data Science interview questions

  • 40 questions
  • 5 rounds

Pune, Bengaluru, Chennai +2

View questions
IT services

Virtusa

Data Science interview questions

  • 40 questions
  • 4 rounds

Hyderabad, Chennai, Bengaluru

View questions
IT services

UST

Data Science interview questions

  • 40 questions
  • 4 rounds

Thiruvananthapuram, Kochi, Bengaluru +2

View questions
IT services

CGI

Data Science interview questions

  • 40 questions
  • 4 rounds

Bengaluru, Hyderabad, Chennai +1

View questions
IT services

NTT DATA

Data Science interview questions

  • 40 questions
  • 4 rounds

Bengaluru, Pune, Noida +2

View questions
Analytics

LatentView Analytics

Data Science interview questions

  • 40 questions
  • 4 rounds

Chennai, Bengaluru

View questions
Analytics

Tiger Analytics

Data Science interview questions

  • 40 questions
  • 5 rounds

Chennai, Bengaluru, Hyderabad

View questions

Frequently asked questions

Which companies hire Data Science professionals in Chennai?

Companies with large offices in Chennai include TCS, Infosys, Wipro, Cognizant, Capgemini, Amazon, Cisco, Walmart, PayPal, Barclays. Use their company pages below to practise employer-specific sets.

Are Data Science interviews in Chennai different from other cities?

The questions depend more on the company than the city. Chennai's mix of employers decides the style: Many companies here hire freshers in large batches and train them on the job

How do I find Data Science jobs in Chennai?

Shortlist companies with Chennai offices, keep your CV focused on Data Science projects, apply on company career pages and job portals with the Chennai filter, and practise the questions on this page before each interview.