МТС — крупнейший telecom-оператор РФ (74M абонентов мобильной связи). Собес туда — это самый «классический» аналитический собес среди РФ-компаний: фокус на churn modeling, ARPU optimization, network analytics + растущая часть MTS Big Data / Junior. В этом гайде разберу 25+ реальных вопросов с 5 раундов собеса аналитика МТС (MTS Bigdata / Mobile / MTS Premium / MTS Junior / MTS Bank) — с разбором сильного и слабого ответа.
Грейды аналитика в МТС (2026)
| Грейд | Compensation/мес РФ | Опыт |
|---|---|---|
| Junior | 130-200K ₽ | 0-1 год |
| Middle | 200-300K ₽ | 1-3 года |
| Senior | 300-450K ₽ | 3-6 лет |
| Lead | 450-600K+ ₽ | 6+ лет |
5 раундов собеса МТС
| Раунд | Что | Длительность |
|---|---|---|
| 1. HR | Мотивация, telecom опыт | 30 мин |
| 2. SQL live | 2-3 задачи + telecom cases | 60 мин |
| 3. Python + ML | pandas + churn models + A/B | 60 мин |
| 4. Telecom-кейс | Churn / ARPU / network | 60 мин |
| 5. Финал | Behavioral + business | 45 мин |
6 SQL-вопросов с собеса МТС
Найди субшибрейн ARPU по тарифам за прошлый месяц.
✅ Сильный ответ:
\\\sql
SELECT
tariff_plan,
count(distinct user_id) AS active_users,
sum(revenue) AS total_revenue,
sum(revenue) / count(distinct user_id) AS arpu
FROM billing_events
WHERE event_date >= toStartOfMonth(today() - INTERVAL 1 MONTH)
AND event_date < toStartOfMonth(today())
GROUP BY tariff_plan
ORDER BY arpu DESC;
\\\
Senior follow-up: «ARPU calculation в telecom complicated by mid-month upgrades / downgrades. MRR-based ARPU (active days × monthly fee / 30) more accurate.»
Churn rate месяц-к-месяцу.
✅ Сильный ответ:
\\\sql
WITH monthly_active AS (
SELECT user_id, toStartOfMonth(activity_date) AS month
FROM user_activity
GROUP BY user_id, month
),
churn_calc AS (
SELECT
m1.month AS prev_month,
addMonths(m1.month, 1) AS curr_month,
count(distinct m1.user_id) AS active_prev,
countIf(m2.user_id IS NULL) AS churned
FROM monthly_active m1
LEFT JOIN monthly_active m2
ON m1.user_id = m2.user_id
AND m2.month = addMonths(m1.month, 1)
GROUP BY m1.month
)
SELECT prev_month, active_prev, churned,
100.0 * churned / active_prev AS churn_pct
FROM churn_calc
ORDER BY prev_month;
\\\
Top регионы по data usage.
✅ Сильный ответ:
\\\sql
SELECT
region,
sum(data_mb) AS total_mb,
count(distinct user_id) AS users,
sum(data_mb) / count(distinct user_id) AS mb_per_user
FROM network_usage
WHERE usage_date >= today() - 30
GROUP BY region
ORDER BY total_mb DESC;
\\\
Cross-product analytics: МТС + Банк + Премиум.
✅ Сильный ответ:
\\\sql
WITH product_usage AS (
SELECT
user_id,
maxIf(1, product = 'mobile') AS has_mobile,
maxIf(1, product = 'bank') AS has_bank,
maxIf(1, product = 'premium') AS has_premium
FROM product_events
WHERE event_date >= today() - 30
GROUP BY user_id
)
SELECT
has_mobile + has_bank + has_premium AS products_count,
count() AS users,
count() * 100.0 / sum(count()) OVER () AS pct
FROM product_usage
GROUP BY products_count
ORDER BY products_count;
\\\
Senior follow-up: «Cross-product юзеры имеют 3-5x LTV vs single product. МТС стратегия — drive cross-sell.»
Tariff migration: кто переходит между планами.
✅ Сильный ответ:
\\\sql
WITH user_tariff_changes AS (
SELECT
user_id,
tariff_plan AS new_tariff,
lag(tariff_plan) OVER (PARTITION BY user_id ORDER BY change_date) AS old_tariff,
change_date
FROM tariff_history
WHERE change_date >= today() - 90
)
SELECT
old_tariff,
new_tariff,
count() AS migrations
FROM user_tariff_changes
WHERE old_tariff IS NOT NULL AND old_tariff != new_tariff
GROUP BY old_tariff, new_tariff
ORDER BY migrations DESC;
\\\
Network capacity utilization за пиковые часы.
✅ Сильный ответ:
\\\sql
SELECT
cell_id,
toHour(event_ts) AS hour,
sum(data_mb) AS total_mb,
count(distinct user_id) AS unique_users
FROM network_usage
WHERE event_date >= today() - 7
AND toHour(event_ts) BETWEEN 18 AND 23
GROUP BY cell_id, hour
HAVING total_mb > 10000 -- top loaded cells
ORDER BY total_mb DESC
LIMIT 100;
\\\
5 Python/ML-вопросов
Churn prediction model: какой подход?
✅ Сильный ответ:
«Approach для telecom churn:
- Define churn — 30/60/90 days inactivity? cancelled contract?
- Features (50-100):
- Tariff plan history
- Usage patterns (calls, data, SMS)
- Customer service interactions (complaints)
- Payment patterns (late payments)
- Network experience (dropped calls, slow data)
- Cross-product usage
- Demographic / geo
- Model:
- Gradient Boosting (XGBoost / LightGBM) — best performance
- Survival analysis (Cox regression) — time-to-churn
- Evaluation: AUC, KS-statistic, lift table
В МТС используется hybrid: logistic + gradient boosting. SAS legacy for compliance-heavy decisions.»
Pandas: WAU rolling по 7 дней.
✅ Сильный ответ:
\\\python
import pandas as pd
df = df.sort_values('date')
daily = df.groupby('date')['user_id'].nunique().reset_index()
daily['wau'] = (
df.groupby('date')['user_id']
.apply(lambda x: x.unique())
.rolling(7, min_periods=1)
.apply(lambda x: len(set(np.concatenate(x.values))))
)
\\\
Senior: «WAU точнее через explicit rolling unique counting:
\\\python
def rolling_unique_users(df, window=7):
df = df.sort_values('date')
results = []
for end_date in df['date'].unique():
start_date = end_date - pd.Timedelta(days=window-1)
wau = df[(df['date'] >= start_date) & (df['date'] <= end_date)]['user_id'].nunique()
results.append({'date': end_date, 'wau': wau})
return pd.DataFrame(results)
\\\»
Retention curve: типичная для telecom.
✅ Сильный ответ:
«Telecom retention different from other industries:
- High initial retention (90-95% M+1) — contract lock-in
- Slow decay — slow erosion over years
- Long-tail loyal customers — 30%+ retention at 5+ years
Cohort analysis:**
\\\python
cohort_data = df.groupby(['cohort_month', 'months_since_signup'])['user_id'].nunique().unstack()
retention = cohort_data.div(cohort_data[0], axis=0) * 100
\\\
МТС specific:
- Postpaid retention much higher than prepaid
- Family plans retention higher (cross-member dependency)
- Cross-product (Bank + Mobile) retention highest»
CUPED для telecom A/B-тестов.
✅ Сильный ответ:
«CUPED (Controlled Pre-Experiment Data) — variance reduction.
Идея: ARPU очень noisy (high variance). Если у юзера high pre-experiment ARPU, у него и post-experiment будет high — независимо от treatment. Subtract pre-experiment baseline.
\\\python
import numpy as np
# pre = pre-experiment ARPU, post = post-experiment ARPU
theta = np.cov(pre, post)[0, 1] / np.var(pre)
post_adjusted = post - theta * (pre - np.mean(pre))
# теперь анализируем post_adjusted вместо post
\\\
Variance reduction: 30-60% typical. Sample size needed 2-3x smaller.
МТС specifically: для tariff changes A/B testing essential — без CUPED needs 10M+ users per group.»
LTV / CAC ratio для telecom.
✅ Сильный ответ:
«Telecom LTV formula:
LTV = ARPU × Gross Margin × (1 / Churn Rate)
МТС metrics example:
- ARPU = 500 ₽/мес
- Gross Margin = 60%
- Monthly Churn = 1.5%
- LTV = 500 × 0.60 / 0.015 = 20,000 ₽
CAC (по каналам):
- Online ads: 1,500-3,000 ₽
- Retail (физсалоны): 800-1,500 ₽
- Referral (family bring family): 200-500 ₽
- Win-back campaigns: 500-1,000 ₽
LTV/CAC target: 5x minimum. МТС: 6-10x для most channels.
Payback period: 6-12 месяцев typically.»
→ LTV/CAC для SaaS методология
5 telecom-кейсов
Churn rate jumped from 1.5% to 1.8% — investigate.
✅ Сильный ответ:
«Decomposition:
- By segment:
- Plan type (postpaid vs prepaid)
- Tenure (new vs long-tenured)
- By churn type:
- Involuntary (failed payments)
- Network triggered (lost coverage)
- By time:
- Gradual increase (trend)
Hypotheses:
- Competitor launched (МегаФон / Билайн promo)
- Pricing change (new tariff annoyed customers)
- Network quality (specific cells down)
- Customer service issue (long wait times)
- App release broke (poor UX)
Action: drill-down, isolate root cause, take corrective action.»
Tariff redesign: what data needed?
✅ Сильный ответ:
«Data inputs:
- Current customer distribution:
- ARPU distribution
- Tenure distribution
- Competitive landscape:
- Market share dynamics
- Elasticity:
- Cross-elasticity (tariff A → tariff B migration)
- Profitability:
- Margin per tariff tier
Modeling:
- Simulate customer migration patterns (which current customers would switch)
- Project revenue impact
- A/B test pilot in 1-2 regions
МТС typically launches новые tariffs quarterly with extensive pre-launch modeling.»
Cross-sell campaign: МТС Mobile → МТС Bank.
✅ Сильный ответ:
«Target audience:
- High mobile ARPU users (могут afford Bank fees)
- Long tenure (loyal customers)
- Not already MTS Bank customers
- Demographic match (age 25-45, salaried)
Channel mix:
- In-app push (МТС Mobile app)
- SMS (legal limit — only if opted in)
- Outbound calls (high-value segment)
- Salon offers (when visiting МТС shops)
A/B-test:
- Offer type (free year vs cashback vs sign-up bonus)
- Channel (push vs SMS vs call)
- Creative messaging
Metrics:
- Activation rate
- 90-day retention (vs control)
- Cross-product LTV uplift
- CAC efficiency
МТС cross-sell success: 8-15% conversion typical для well-targeted campaigns.»
Network optimization: where to add capacity?
✅ Сильный ответ:
«Capacity planning analytics:
- Cell-level usage — % capacity utilized по hour / day
- Growth forecast — yearly traffic growth (+15-25% typical)
- Customer impact — dropped calls / slow data tied to cells
- Geo demographics — where new development planned
Prioritization:
- High capacity utilization (>80% peak) → expand priority
- High customer impact (many users affected) → strategic
- High-value customers (premium tariffs) → economic justify
Action:
- New cell tower investments
- Capacity upgrades (more antennas, 5G migration)
- Spectrum acquisition
МТС network team uses dashboards updated daily от radio engineers.»
Pricing optimization: price elasticity по тарифам.
✅ Сильный ответ:
«Elasticity research:
- Natural experiments: historical price changes → volume response
- Synthetic A/B: dual-version landing pages with different prices
- Survey-based: van Westendorp Price Sensitivity Meter
- Discrete choice: conjoint analysis for tariff feature mix
МТС specific:
- Elasticity higher для new customers (price-shopping)
- Elasticity lower для loyal customers (switching cost)
- Cross-elasticity между tariffs (upgrade vs downgrade dynamics)
Action:
- Inelastic segments → maintain prices
- Elastic segments → competitive pricing
- New customer pricing (acquisition discounts) vs existing (loyalty rewards)»
2 behavioral вопроса (раунд 5)
Analytical insight that led to big business decision.
✅ Сильный ответ (STAR):
«Ситуация: анализ показал что 20% МТС customers использовали 0 GB data за last 30 days (только звонки/SMS).
Задача: convince product team launch low-tier «calls + SMS» tariff для этого сегмента.
Действие:
- Quantified opportunity: 20% × 70M customers × low-data avg ARPU = 200B ₽ potential
- Risk analysis: would low-tier cannibalize мid-tier? Lookalike analysis показал — нет (different demographic)
- Recommended pilot: launch в 3 регионах для 6 months
Результат: Pilot showed 4% increase в activation среди старшей аудитории. Tariff rolled out nationally. After 1 year — 8M активных юзеров на «Базовом» tariff.»
Случай когда твоя hypothesis оказалась wrong.
✅ Сильный ответ:
«Ситуация: анализ показал что customers без data plan (только calls) имеют высокий churn rate.
Гипотеза: Эти customers «underserved», им нужен data plan upgrade.
Действие: Pilot data-plan upgrade campaign для no-data customers.
Результат: Conversion 3% (well below expected 15%). Дальнейший анализ revealed — эти customers не хотят data, они elderly / rural users prefer calls only.
Learning:
- Correlation ≠ causation (high churn might be demographic, not data-need)
- Survey before action — talk to customers
- Не assume что «standard» best practice применяется к every customer
После этого МТС развил «Базовый» tariff (calls + SMS only at lowest price) — addresses real need, churn dropped 30% в этом сегменте.»
Red flags (не делай)
- Не упомянуть customer churn modeling
- Игнорировать regulation (ФАС, ЦБ для МТС Bank)
- Slishком ML-heavy без telecom basics (ARPU, churn, MOU)
- Не упомянуть network analytics для senior+
- Игнорировать MTS Bank / Premium / Junior (cross-product key)
Как готовиться к МТС
Месяц 1: telecom basics + ClickHouse
- ARPU, MOU, churn, lifetime value
- 50+ SQL задач тренажёр
Месяц 2: ML churn modeling
- Logistic regression + gradient boosting
- Survival analysis basics
Месяц 3: кейсы + behavioral
- Telecom кейсы из /cases
- AI мок-собес
FAQ
МТС vs МегаФон / Билайн?
МТС больше invested в data science и ML. МегаФон / Билайн more traditional analytics. МТС Big Data — отдельный продукт для customers.
Можно ли пройти без telecom опыта?
Junior — да. Middle+ — желательно telecom or finance background.
Стек технологий?
ClickHouse + Greenplum + Hadoop + Python + SAS legacy + Spark.
Что дальше
- 521 SQL-задача
- 532 Python-задачи
- AI мок-собес
- 150+ вопросов общего собеса
- Вопросы Тинькофф аналитика (fintech focus)
Сравнить Free и Pro → (1999 ₽/мес)
Источники
- Levels.fyi РФ 2026 (МТС grades)
- Habr / MTS Tech blog
- Telecom industry reports