Company Interview Questions · Analytics & AI Firms

LatentView & Affine: Analytics / Data Science

❓ 6 questions🏢 LatentView & Affine🆕 Recent reports

LatentView & Affine: Analytics / Data Science Interview Experiences (2025–26). Rounds, real reported questions and model answers, compiled from public candidate reports (sources at the end). Practice mode hides every answer: say your answer first, press Show answer, then rate yourself. Use 🔁 Review again to build your revision list and 🎲 Random question for a quick drill.

About this interview

Compiled from public candidate reports for LatentView Analytics Assistant Manager roles (Bengaluru, April 2025: marketing analytics, a Python data-cleaning task; Chennai, 2026, offer; Bengaluru, 2026) and a public Affine Data Scientist question guide. The questions are paraphrased, and the model answers are written by EasyLearnSpace.

LatentView Affine
Role Assistant Manager (analytics / DS) Data Scientist
Rounds One in-person panel (shortlisted candidates); others not detailed Guide: DSA, ML, probability, SQL and A/B testing questions
Reported questions Data-cleaning methods with Python on a sample DataFrame; easier ML algorithm questions Share of high earners per department, moving average, cohort retention, churn, feature importance, A/B significance, neural network design
Outcome 1 offer (Chennai); 2 not selected Guide-based

01Rounds at a glance

02Questions and model answers

Q1
Clean this DataFrame in Python. What steps and syntax would you use?
import pandas as pd, numpy as np
df = pd.read_csv("campaign.csv")
df.columns = df.columns.str.strip().str.lower().str.replace(" ", "_")     # tidy names
df = df.drop_duplicates()
df["date"] = pd.to_datetime(df["date"], errors="coerce", dayfirst=True)   # fix types
df["spend"] = pd.to_numeric(df["spend"].astype(str).str.replace(r"[₹,]", "", regex=True), errors="coerce")
df["channel"] = df["channel"].str.strip().str.title().replace({"Fb": "Facebook"})
df["spend_missing"] = df["spend"].isna().astype(int); df["spend"] = df["spend"].fillna(df.groupby("channel")["spend"].transform("median"))
q1, q3 = df["spend"].quantile([.25, .75]); df["spend"] = df["spend"].clip(upper=q3 + 1.5 * (q3 - q1))
df = df.dropna(subset=["date", "campaign_id"])
  • Explain each step: names, duplicates, types, standardised categories, missing values (with a flag), outliers, required keys. Then validate with df.info() and describe().
Q2
SQL: rank departments by the share of employees earning more than ₹20 LPA.
SELECT department,
       AVG(CASE WHEN salary > 2000000 THEN 1.0 ELSE 0 END) AS high_earner_share,
       RANK() OVER (ORDER BY AVG(CASE WHEN salary > 2000000 THEN 1.0 ELSE 0 END) DESC) AS rk
FROM employees
GROUP BY department
HAVING COUNT(*) >= 10;          -- avoid tiny departments dominating
Q3
How would you measure the ROI of a marketing campaign?
  • Incrementality first: use a holdout or geo test, or a matched control, to estimate the incremental conversions and revenue caused by the campaign.
  • ROI = (incremental gross margin − campaign cost) / campaign cost.
  • Attribution for always-on channels: marketing-mix modelling (MMM) with adstock and saturation, or data-driven multi-touch attribution where tracking allows.
  • Report confidence intervals and cost per incremental acquisition, and recommend a budget reallocation.
Q4
Is data separable? How would you check whether two classes are linearly separable?
  • Visual: pair plots or PCA/t-SNE for intuition.
  • Formal: fit a linear SVM with a very large C (a hard margin) or a perceptron. Zero training error means linearly separable. Linear programming feasibility is the exact test.
  • If not separable: kernels (RBF), feature crosses, trees or neural networks.
Q5
As an assistant manager, how do you manage a client analytics project with a tight deadline?
  • Scope tightly: agree the 2–3 key questions and the deliverable format on day 1.
  • Plan: a work breakdown with owners, daily stand-ups, risks (data access) escalated early.
  • Quality: peer reviews of SQL and logic, sanity checks against known totals.
  • Communicate: a mid-point preview to the client; then the final story with insight, recommendation and impact.
  • Show delivery + people management + client handling.
Q6
A/B test: how do you decide whether a result is significant and worth shipping?
  • Pre-register the metric, the minimum detectable effect, α and power, and the duration.
  • Check for sample-ratio mismatch; compute the lift with a confidence interval (z-test or bootstrap).
  • Significant and practically meaningful (above the MDE) and guardrails intact → ship. Otherwise iterate.
  • Watch for peeking, novelty effects, and multiple comparisons.

03How to prepare

Sources

Created by Ajeetkumar