Skip to content

EPAM Systems Data Science Interview Questions & Answers

Curated interview practice questions with answers. These are practice scenarios, not a verified list of past interview questions.

About EPAM Systems hiring for Data Science roles

EPAM Systems is a global digital platform engineering and software development services company. It works on product development, quality engineering, cloud and data projects for clients in finance, life sciences, retail and software. Its India delivery centres hire for software engineers, test automation engineers, data engineers and data scientists.

For Data Science roles, this EPAM Systems practice set focuses most on Statistics and Probability (7), Deep Learning and NLP (7), Python for Data Science (6), SQL for Data Science (6). It has 22 easy, 17 medium, 1 hard questions, so you can start easy and work up to the harder ones.

Company type
IT services
Headquarters
Newtown, Pennsylvania, USA
Main India offices
Hyderabad, Bengaluru, Pune, Chennai, Gurugram

EPAM Systems Data Science interview process

  1. Online coding assessment
  2. Technical interview
  3. Technical or design round
  4. Hiring manager round

Typical pattern based on public candidate experiences. Rounds vary by role, team and year.

Solved for EPAM SystemsStart 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

Your LLM assistant confidently quotes a policy clause that does not exist. Why does this happen and how do you reduce it?

Save to ▾
Show answer
Hallucination is when a model produces confident text that is false or not supported by any source. It happens because the model generates plausible tokens rather than checking facts. Reduce it by grounding answers in retrieved documents, asking the model to cite sources and say I do not know when context is missing, using low temperature, and validating outputs with rules or a second checking step. Measure it with a labelled evaluation set.
02

How do you turn text columns into features for a tabular model?

Save to ▾
Show answer
Simple options are length, word count and keyword flags. TF-IDF vectors capture important words and work well with linear models. For meaning, use sentence embeddings from a pretrained model and optionally reduce them with PCA. You can also train a separate text classifier and feed its predicted score as one feature. Fit any vocabulary or encoder on training data only to avoid leakage.
03

What is a time series and how is it different from ordinary tabular data?

Save to ▾
Show answer
A time series is a sequence of observations recorded at ordered time steps, such as daily sales or hourly website traffic. Unlike ordinary tabular data, rows are not independent: today's value depends on yesterday's, and the order cannot be shuffled. This changes everything downstream. You must split train and test by time, build features only from the past, and check for trend and seasonality before choosing a model.
04

You keep adding features and R-squared keeps rising. Is the model really getting better?

Save to ▾
Show answer
R-squared shows the share of variance in the target explained by the model. It never decreases when you add a feature, even a useless one. Adjusted R-squared penalises extra features based on the number of predictors and sample size, so it rises only if a new feature improves the model more than chance would. Use adjusted R-squared to compare linear models with different numbers of features.
05

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.
06

What is the binomial distribution and when do you use it?

Save to ▾
Show answer
The binomial distribution gives the probability of getting k successes in n independent trials, each with the same success probability p. Its mean is n times p and its variance is n times p times (1 minus p). You use it for counts of yes-or-no outcomes, such as how many of 1,000 visitors convert or how many of 50 parts are defective. For large n it is well approximated by a normal distribution.
07

What is a t-test and when do you use a paired t-test?

Save to ▾
Show answer
A t-test compares means when the population variance is unknown. A two-sample t-test compares two independent groups, such as users in control and treatment. A paired t-test is used when the same units are measured twice, such as the same students before and after training. Pairing removes variation between individuals, so it is more powerful. Welch's t-test is preferred when the two groups have unequal variances.
08

What is the difference between a set and a dictionary?

Save to ▾
Show answer
A set stores unique values with no keys; a dictionary stores key-value pairs with unique keys. Both use hashing, so lookups are O(1) on average.
09

What is the difference between layer normalisation and batch normalisation?

Save to ▾
Show answer
Batch normalisation normalises each feature using the mean and variance across the batch, so it depends on batch size and behaves differently in training and inference. Layer normalisation normalises across the features of each single example, so it works with any batch size and with variable-length sequences. That is why transformers use layer norm, often in the pre-norm position, while CNNs traditionally use batch norm.
10

What is the logical order of execution of a SQL query?

Save to ▾
Show answer
Although you write SELECT first, the database logically processes FROM and JOIN first, then WHERE, GROUP BY, HAVING, SELECT, DISTINCT, ORDER BY and finally LIMIT. This explains common errors: you cannot use a SELECT alias in WHERE because WHERE runs before SELECT, but you can use it in ORDER BY. Window functions are computed after WHERE and GROUP BY, so filter on them in an outer query.
11

What is the difference between UNION and UNION ALL?

Save to ▾
Show answer
Both stack the results of two queries with the same number and type of columns. UNION removes duplicate rows, which needs an extra sort or hash step and is slower. UNION ALL keeps every row, including duplicates, and is faster. Use UNION ALL by default when you know the sets do not overlap or when duplicates matter, such as combining transaction logs from two systems.
12

Correlation vs covariance?

Save to ▾
Show answer
Covariance shows the direction of a relationship but depends on units. Correlation is covariance scaled to −1…+1, so it shows direction and strength and is unit-free.
13

Your product image classifier works on studio catalogue photos but fails on photos users take with their phones. Why, and what do you do?

Save to ▾
Show answer
This is domain shift: user photos have clutter, blur, poor lighting and odd angles that the model never saw. Collect and label a sample of real user photos and evaluate on them separately. Add augmentation for blur, noise, colour jitter, rotation and random crops, and fine-tune on a mix of studio and real images. Monitor accuracy on user photos in production, since that is the distribution that matters.
14

What is named entity recognition?

Save to ▾
Show answer
Named entity recognition finds and labels spans of text such as person names, organisations, locations, dates and amounts. For example, in an invoice email it can pull out the vendor, invoice number and total. It is usually framed as token classification with BIO tags. spaCy and fine-tuned transformer models are common tools. Domain-specific entities, like medicine names, usually need custom labelled training data.
15

What is method chaining in Pandas and why do teams use it?

Save to ▾
Show answer
Method chaining writes a sequence of transformations as one expression, for example df.query(...).assign(...).groupby(...).agg(...). It avoids many temporary variables, reads top to bottom like a recipe, and reduces the risk of changing the wrong intermediate DataFrame. assign and pipe make chaining easy. The trade-off is that long chains are harder to debug, so split them into named steps when a chain grows past eight or ten operations.
16

What is MAPE and when is it a poor metric for forecast accuracy?

Save to ▾
Show answer
MAPE is the mean of absolute errors divided by actual values, expressed as a percentage. It is easy to explain to business teams, but it breaks when actuals are zero or near zero, because the percentage explodes. It also penalises over-forecasts more than under-forecasts and weights small items heavily. For intermittent or low-volume series prefer MAE, weighted MAPE or MASE, which compares error to a naive baseline.
17

What are polynomial features and what is the risk of using them?

Save to ▾
Show answer
Polynomial features add powers and products of existing features, like x squared and x times y, so a linear model can fit curves and interactions. The risk is that the number of features grows very fast with degree and input count, causing overfitting, slow training and multicollinearity. Use a low degree, scale features first, and add regularisation such as Ridge or Lasso to keep coefficients under control.
18

How do you remove duplicates from a DataFrame?

Save to ▾
Show answer
df.drop_duplicates(subset=[...], keep='first') removes repeated rows; use duplicated() first to inspect what will be dropped.
19

What are embeddings and vector databases, and why do LLM apps use them?

Save to ▾
Show answer
An embedding model turns text into a vector so that similar meanings are close in space. A vector database stores these vectors with metadata and finds the nearest ones to a query vector quickly using approximate nearest neighbour indexes like HNSW. LLM apps use them for semantic search and retrieval-augmented generation, finding the most relevant documents to put into the prompt. Examples include pgvector, FAISS and dedicated vector stores.
20

What is transfer learning?

Save to ▾
Show answer
Reusing a model pretrained on a large dataset and fine-tuning it on a smaller task-specific dataset, saving data, time and compute.
21

What is mixed precision training?

Save to ▾
Show answer
Mixed precision training uses 16-bit floats, float16 or bfloat16, for most operations while keeping a 32-bit master copy of the weights. It roughly halves memory use and speeds up training on modern GPUs with tensor cores. With float16, a loss scaler multiplies the loss to avoid gradients underflowing to zero. bfloat16 has a wider range and usually needs no scaling. Final accuracy is normally the same as full precision.
22

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;
23

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.
24

What are *args and **kwargs?

Save to ▾
Show answer
*args collects extra positional arguments into a tuple; **kwargs collects extra keyword arguments into a dict. They make function signatures flexible and are common in wrappers and decorators.
25

What is the difference between a star schema and a snowflake schema?

Save to ▾
Show answer
A star schema has a central fact table, like sales with amounts and foreign keys, surrounded by denormalised dimension tables such as product, customer and date. A snowflake schema normalises dimensions further, for example product links to a separate category table. Star schemas need fewer joins and are faster and simpler for analysts. Snowflake schemas save storage and reduce duplication but make queries more complex.
26

Write a function to calculate RMSE without any library.

Save to ▾
Show answer
def rmse(y, p): return (sum((a - b) ** 2 for a, b in zip(y, p)) / len(y)) ** 0.5
27

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.
28

Write SQL to compute a running total of spend for each user.

Save to ▾
Show answer
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;
29

Explain INNER, LEFT, RIGHT and FULL OUTER joins.

Save to ▾
Show answer
An INNER JOIN returns only rows with matching keys in both tables. A LEFT JOIN returns all rows from the left table, with NULLs where the right has no match. A RIGHT JOIN is the mirror of that. A FULL OUTER JOIN returns all rows from both sides, matched where possible. In analytics, LEFT JOIN from a customers table is common so customers with no orders are still counted.
30

What is mean Average Precision (mAP) in object detection?

Save to ▾
Show answer
For each class, detections are ranked by confidence and a precision-recall curve is computed, where a detection is a true positive if its IoU with an unmatched ground truth box passes a threshold. Average Precision is the area under that curve. mAP is the mean across classes. mAP@0.5 uses IoU 0.5, while mAP@0.5:0.95 averages over thresholds from 0.5 to 0.95 and rewards tighter boxes.
31

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.
32

Write scikit-learn code for a pipeline with scaling and logistic regression, evaluated with 5-fold cross-validation.

Save to ▾
Show answer
from sklearn.pipeline import make_pipeline from sklearn.preprocessing import StandardScaler from sklearn.linear_model import LogisticRegression from sklearn.model_selection import cross_val_score pipe = make_pipeline(StandardScaler(), LogisticRegression(max_iter=1000)) scores = cross_val_score(pipe, X, y, cv=5, scoring='roc_auc') print(scores.mean(), scores.std())
33

What is a neural network?

Save to ▾
Show answer
Layers of connected neurons that apply weights, biases and activation functions to learn complex patterns, trained by backpropagation.
34

What is standard deviation and what does it tell you?

Save to ▾
Show answer
The square root of the variance; it measures how far values typically sit from the mean, in the same units as the data.
35

Write Pandas code to create useful features from a datetime column.

Save to ▾
Show answer
df['ts'] = pd.to_datetime(df['ts']) df['hour'] = df['ts'].dt.hour df['dayofweek'] = df['ts'].dt.dayofweek df['is_weekend'] = df['dayofweek'].isin([5, 6]).astype(int) df['month'] = df['ts'].dt.month df['days_since_signup'] = (df['ts'] - df['signup_date']).dt.days
36

Write scikit-learn code to calibrate a gradient boosting classifier's probabilities and check the result.

Save to ▾
Show answer
from sklearn.ensemble import HistGradientBoostingClassifier from sklearn.calibration import CalibratedClassifierCV from sklearn.metrics import brier_score_loss base = HistGradientBoostingClassifier() cal = CalibratedClassifierCV(base, method='isotonic', cv=5) cal.fit(X_train, y_train) prob = cal.predict_proba(X_test)[:, 1] print('Brier:', brier_score_loss(y_test, prob))
37

Explain p-value in simple words.

Save to ▾
Show answer
The probability of seeing a result at least this extreme if the null hypothesis were true. A small p-value (for example < 0.05) is evidence against the null hypothesis.
38

What is a normal distribution?

Save to ▾
Show answer
A symmetric bell-shaped distribution defined by mean and standard deviation, where about 68%, 95% and 99.7% of values lie within 1, 2 and 3 standard deviations.
39

Tell me about a time you improved messy code written by someone else.

Save to ▾
Show answer
Situation: in my final-year project, a teammate's cleaning script was one 600-line notebook that took 20 minutes to run. Task: I needed to reuse it for new data. Action: I split it into small functions, added docstrings, replaced row loops with vectorised Pandas code and wrote a few checks for row counts. Result: run time fell to 2 minutes and the team could reuse the functions. I learned to refactor in small, tested steps.
40

Explain the Law of Large Numbers.

Save to ▾
Show answer
As the number of independent trials grows, the sample average converges to the true expected value, which is why larger samples give more stable estimates.

Tips to crack the EPAM Systems Data Science interview

  • Revise core concepts in Java, Python or JavaScript deeply, as EPAM interviews often test language fundamentals in detail.
  • Prepare test automation framework design questions if applying for QA roles, including page object model and CI integration.
  • Read about EPAM's engineering-first identity and its learning platforms, which it highlights for career growth.
  • 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; EPAM Systems interviewers usually ask follow-ups on your first answer.

Frequently asked questions

How many rounds are there in the EPAM Systems Data Science interview?

Candidates usually go through 4 stages: Online coding assessment; Technical interview; Technical or design round; Hiring manager 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 EPAM Systems Data Science interview?

This practice set leans on Statistics and Probability (7), Deep Learning and NLP (7), Python for Data Science (6), SQL for Data Science (6). Revise those first, then practise explaining one or two of your own projects end to end, because most EPAM Systems interviewers ask you to walk through real work.

Are these the exact questions asked at EPAM Systems?

No. These are curated practice questions that match the skills and difficulty usually tested in it services interviews like EPAM Systems's. They are not a leaked or verified list of past questions.

Where does EPAM Systems hire Data Science professionals in India?

EPAM Systems has large teams in Hyderabad, Bengaluru, Pune, Chennai, Gurugram. Openings and locations change often, so check the EPAM Systems careers page and filter by city and experience.

Data Science questions for similar companies