Эйч
Эйч
  • Эйч Плюс
  • Все менторы
Гайды/Аналитик данных/Собес в Сбер · Data Analyst (Контроль качества)

Собес в Сбер · Data Analyst (Контроль качества)

Материал Эйч · Опубликовано 14 августа 2026

Обзор

Middle-аналитик в центре контроля качества контактных центров: SQL и Python на больших данных, метрики CX и операционные KPI КЦ, прокси-метрики удовлетворенности и работа с бизнес-заказчиками.

SQL и оконные функции
Python (Pandas/NumPy)
Статистика и A/B-тесты
Метрики контактного центра
Качество данных и витрины
GreenPlum и MPP

Фишка: Фокус на контроль качества контактных центров и автоматизированных агентов: аналитик не только считает отчёты, но ищет прокси-метрики (паузы, перебивания, лингвистические маркеры недовольства), до того как упадёт CSAT/NPS, и доводит изменения до скриптов, обучения и процессов.

ЭтапДлительностьЧто проверяют
HR / рекрутер30–45 минМотивация, опыт в аналитике (банк/финтех/e-commerce), готовность к офису (м. Кутузовская), софт-скиллы и коммуникация с заказчиками.
Технический скрининг60–90 минSQL live-coding или разбор запросов: JOIN, оконные функции, агрегации. Базовый Python: Pandas, чистка данных. Вопросы по статистике и A/B-тестам.
Интервью с тимлидом / hiring manager60–90 минКейсы из контроля качества КЦ: как перевести «клиенты жалуются» в аналитическую задачу, метрики FCR/AHT/CSAT, прокси-метрики, визуализация и защита методологии.
Финальное / кросс-функциональное45–60 минВзаимодействие с руководителями смен, тренерами, QA и продуктовыми командами; приоритизация, внедрение изменений в скрипты и обучение.

Стек и темы

Обязательный минимум

  • SQL: JOIN (INNER/LEFT/FULL), подзапросы, CTE, GROUP BY, оконные функции (ROW_NUMBER, RANK, LAG/LEAD, PARTITION BY)
  • Python: Pandas, NumPy, SciPy — ETL, агрегации, автоматизация регулярных отчётов
  • Статистика: гипотезы, p-value, A/B-тесты, проверка значимости
  • Метрики КЦ: FCR, AHT, ASA, SL, CSAT/CES/NPS, повторные обращения
  • Перевод бизнес-запросов в ТЗ на витрины и аналитические проекты
  • Коммуникация: визуализация инсайтов и защита методологии расчётов

Плюсом будет

  • Опыт в QA контактного центра / прослушивание звонков
  • GreenPlum / ClickHouse: партиционирование, оптимизация запросов на MPP
  • Kafka / API — проверка качества данных после поставки
  • ML для текста и аудио (классификация, sentiment)
  • СберАналитика и корпоративный стек визуализации

SQL

Опыт написания SQL-запросов — какие типы задач решали?

Структура: источники данных → JOIN/CTE → агрегации → оконные функции → оптимизация. Упомяни витрины, регулярные отчёты, проверку качества данных.

Какие оконные функции в SQL вы знаете?

ROW_NUMBER, RANK/DENSE_RANK, LAG/LEAD, SUM/COUNT OVER (PARTITION BY … ORDER BY …). Отличие от GROUP BY: строки не схлопываются.

Является ли PARTITION BY обязательным в оконных функциях?

Нет. Без PARTITION BY окно — все строки результата; с PARTITION BY — отдельные окна по группам.

Какие логические JOIN существуют и когда что использовать?

INNER — пересечение; LEFT — все из левой + совпадения; RIGHT — зеркально; FULL — объединение с NULL на пропусках. CROSS — декартово произведение.

Как работает FULL JOIN?

Все строки из обеих таблиц; NULL где нет пары. Часто заменяют UNION LEFT + RIGHT.

Какой JOIN возвращает наибольшее количество записей?

Зависит от данных: CROSS — максимум теоретически; FULL/LEFT при дубликатах ключей — размножение строк. Всегда проверяй уникальность ключей.

Как рассчитать медиану в SQL без PERCENTILE/MEDIAN?

Сортировка + ROW_NUMBER; для нечётного n — средняя позиция; для чётного — среднее двух центральных. Через оконные функции и фильтр по позициям.

Какие функции смещения (OFFSET) существуют в SQL?

OFFSET … FETCH/LIMIT для пагинации; LAG/LEAD для смещения внутри окна. OFFSET без ORDER BY — нестабильный порядок.

Как подходить к решению SQL-задачи?

1) Понять вход/выход и граничные случаи. 2) Нарисовать схему таблиц. 3) Простой запрос → CTE. 4) Проверить дубликаты и NULL. 5) Оптимизировать при необходимости.

Какие конструкции в SQL избегаете или используете чаще?

Избегай: SELECT *, неявные JOIN, коррелированные подзапросы в цикле. Предпочитай: CTE, явные JOIN, EXISTS вместо IN на больших таблицах.

Что такое составной ключ в таблице?

Уникальность по комбинации столбцов (например, call_id + segment_id). Первичный или уникальный constraint.

Как устроены таблицы и JOIN в SQL?

Таблица = строки + типизированные столбцы; связи через ключи. JOIN объединяет по условию ON; важно понимать кардинальность.

Ловушка: Дубликаты в ключах JOIN размножают строки и искажают агрегаты — всегда проверяй COUNT(*) vs COUNT(DISTINCT id).

Совет: Для КЦ типичны сессии звонков: LAG/LEAD по времени, PARTITION BY operator_id ORDER BY call_start — для пауз и последовательности событий.

Фишка: В Сбере аналитика часто на GreenPlum: думай о распределении данных, партициях по дате и избегании broadcast на больших JOIN.

Python и анализ данных

Как посчитать количество уникальных значений в колонке DataFrame?

df['col'].nunique() или df['col'].value_counts(). Для больших данных — drop_duplicates + len или groupby size.

Как автоматизировать регулярные отчёты в Python?

Pandas для трансформаций, параметризованный SQL через connector, schedule/cron, логирование, валидация выходных данных, алерты при аномалиях.

Совет: Для прокси-метрик из аудио/текста: чистка → feature extraction (длина пауз, частота перебиваний) → корреляция с CSAT.

Ловушка: Pandas merge без проверки дубликатов ключей — та же проблема, что в SQL JOIN.

Статистика и A/B-тесты

Что такое A/B-тест и почему он полезен?

Сравнение двух вариантов на случайных группах; изолирует эффект изменения (скрипт, маршрутизация). Нужны гипотеза, метрика, размер выборки, значимость.

Проводил ли A/B-тесты?

Опиши: гипотеза → дизайн (сплит, длительность) → метрика (CSAT, FCR) → статистический тест → решение и ограничения.

Что такое стандартная ошибка среднего?

SEM = σ/√n — неопределённость оценки среднего; уменьшается с ростом n. Отличается от стандартного отклонения.

Ловушка: Множественные сравнения без коррекции → ложноположительные результаты. В КЦ часто сезонность — нужен контроль когорт.

Фишка: Позиция про прокси-метрики: корреляция пауз/перебиваний с оценкой диалога — типичный кейс для гипотез и пилотов.

Метрики контактного центра и качества обслуживания

Какие метрики качества классификации существуют?

Accuracy, Precision, Recall, F1, ROC-AUC, PR-AUC. Выбор зависит от баланса классов (недовольные клиенты — часто редкий класс).

Какие метрики использовать для оценки модели на пилотной группе?

Offline: F1/ROC на hold-out. Online: бизнес-метрики (CSAT, FCR, AHT) на пилоте vs контроль, статистическая значимость, guardrail-метрики.

Как перевести запрос «клиенты жалуются» в аналитическую задачу?

Уточнить: когорт, канал, период, тип жалобы → гипотезы → данные (CRM, QA-оценки, транскрипты) → метрики и сегменты → рекомендации.

Фишка: FCR — решение на первом контакте; AHT — среднее время обработки; ASA — скорость ответа; SL — % звонков в SLA; CSAT/CES/NPS — удовлетворенность.

Совет: Прокси-метрики: длительность пауз оператора, перебивания, лингвистические маркеры недовольства — отслеживают «здоровье» до падения CSAT.

Данные, витрины и экосистема Сбера

Есть ли опыт или знания о СберАналитике?

Корпоративная BI/визуализация в Сбере. Если нет опыта — покажи аналоги (Tableau, Power BI) и готовность быстро освоить.

Что такое колоночные базы и почему они лучше для аналитики?

Читают только нужные столбцы; эффективны для агрегаций на больших объёмах (ClickHouse, Vertica). Row-store лучше для OLTP.

Как проверять качество данных после Kafka/API?

Row count, null-rate, дубликаты, freshness, schema drift, reconciliation с источником, алерты на аномалии, постановка задач разработчикам с примерами.

Фишка: GreenPlum — MPP PostgreSQL в Сбере: DISTRIBUTED BY, партиции по дате, локальные агрегации перед JOIN.

Задачи

Доля FCR по операторам за месяц

Таблица calls: call_id, operator_id, client_id, call_date, resolved_on_first_call (boolean). Напишите SQL: для каждого operator_id — число звонков и доля resolved_on_first_call = true за последний полный месяц. Топ-5 операторов с наименьшим FCR.

WITH month_calls AS (
  SELECT operator_id,
         COUNT(*) AS total_calls,
         AVG(CASE WHEN resolved_on_first_call THEN 1 ELSE 0 END) AS fcr_rate
  FROM calls
  WHERE call_date >= date_trunc('month', CURRENT_DATE) - INTERVAL '1 month'
    AND call_date < date_trunc('month', CURRENT_DATE)
  GROUP BY operator_id
)
SELECT operator_id, total_calls, fcr_rate
FROM month_calls
ORDER BY fcr_rate ASC, total_calls DESC
LIMIT 5;

Сложность: O(n) scan + O(k) группировка

Паузы оператора как прокси-метрика

Таблица dialog_segments: call_id, segment_start, segment_end, speaker ('operator'|'client'). Напишите SQL: для каждого call_id найдите максимальную паузу оператора между сегментами клиента (в секундах).

WITH ordered AS (
  SELECT call_id, segment_start, segment_end, speaker,
         LEAD(segment_start) OVER (PARTITION BY call_id ORDER BY segment_start) AS next_start
  FROM dialog_segments
),
pauses AS (
  SELECT call_id,
         EXTRACT(EPOCH FROM (next_start - segment_end)) AS pause_sec
  FROM ordered
  WHERE speaker = 'client' AND next_start IS NOT NULL
)
SELECT call_id, MAX(pause_sec) AS max_operator_pause
FROM pauses
WHERE pause_sec > 0
GROUP BY call_id;

Сложность: O(n log n) per call при сортировке

Медиана AHT без PERCENTILE

Таблица calls: operator_id, handle_time_sec. Вычислите медиану handle_time_sec по каждому operator_id.

WITH ranked AS (
  SELECT operator_id, handle_time_sec,
         ROW_NUMBER() OVER (PARTITION BY operator_id ORDER BY handle_time_sec) AS rn,
         COUNT(*) OVER (PARTITION BY operator_id) AS cnt
  FROM calls
),
 bounds AS (
  SELECT operator_id,
         MAX(handle_time_sec) FILTER (WHERE rn = (cnt + 1) / 2) AS low,
         MAX(handle_time_sec) FILTER (WHERE rn = (cnt + 2) / 2) AS high,
         cnt
  FROM ranked
  GROUP BY operator_id, cnt
)
SELECT operator_id,
       CASE WHEN cnt % 2 = 1 THEN low ELSE (low + high) / 2.0 END AS median_aht
FROM bounds;

Сложность: O(n log n)

Анализ CSAT после изменения скрипта (Python)

DataFrame: call_id, date, operator_team, csat_score (1–5), script_version ('A'|'B'). Напишите код: сравнить средний CSAT и долю оценок 4–5 между версиями скрипта за последние 30 дней, с фильтром min 100 звонков на версию.

import pandas as pd
from datetime import timedelta

df = df[df['date'] >= df['date'].max() - timedelta(days=30)]
agg = df.groupby('script_version').agg(
    n=('call_id', 'count'),
    mean_csat=('csat_score', 'mean'),
    high_csat_rate=('csat_score', lambda s: (s >= 4).mean())
).query('n >= 100')
print(agg)

Сложность: O(n)

System Design

  • Спроектируйте витрину для мониторинга качества операторов: звонки, QA-оценки, CSAT, метрики диалога (паузы, перебивания). Какие таблицы, гранулярность, ключи?
  • Как организовать пайплайн: данные из Kafka (транскрипты/метаданные звонков) → проверка качества → витрина в GreenPlum для дашбордов?
  • Как спроектировать A/B-тест нового скрипта в КЦ: сплит, метрики, guardrails (AHT не должен расти), длительность?

Каркас ответа

  1. Контекст и бизнес-цель (CSAT, FCR, снижение повторных обращений)
  2. Источники данных и SLA на freshness
  3. Схема: сырые → staging → витрина (grain: call / operator / day)
  4. Ключи, партиционирование по дате, DISTRIBUTED BY в GreenPlum
  5. Проверки качества данных и алерты
  6. Метрики успеха и ограничения (privacy, выборка, сезонность)

Поведенческое

  • Расскажи о себе — фокус на аналитике и влиянии на бизнес
  • Расскажи про самые сложные аналитические задачи
  • Как переводишь размытый запрос заказчика в чёткую задачу?
  • Пример, когда защищал методологию расчёта перед заказчиком
  • Как взаимодействовал с разработчиками при постановке задач на витрины?
  • Как приоритизируешь аналитические задачи при нескольких заказчиках?
  • Опыт работы с контактным центром или контролем качества
  • Насколько требования вакансии соответствуют твоему опыту?
  • Почему Сбер и почему контроль качества?

План подготовки

3 дня

  • Пройти 10 SQL-задач: JOIN, CTE, оконные функции (ROW_NUMBER, LAG/LEAD)
  • Решить 3 задачи из гайда (FCR, паузы, медиана AHT)
  • Выписать определения FCR, AHT, ASA, SL, CSAT/CES/NPS и формулы
  • Подготовить 2 STAR-кейса: влияние аналитики на клиентский опыт
  • Освежить A/B-тесты: гипотеза, p-value, размер выборки

7 дней

  • Практика SQL на сложных JOIN и медиане без PERCENTILE
  • Python: Pandas pipeline для CSAT-анализа + автоматизация отчёта
  • Изучить основы GreenPlum: DISTRIBUTED BY, партиции, broadcast vs redistribute
  • Подготовить кейс «клиенты жалуются» → гипотезы → данные → рекомендации
  • Прочитать про прокси-метрики в диалогах (паузы, sentiment)
  • Метрики классификации: когда F1 vs ROC-AUC

14 дней

  • Симуляция технического интервью: 90 мин SQL + Python live
  • Спроектировать витрину качества КЦ (system design)
  • Подготовить вопросы к тимлиду: стек, объём данных, взаимодействие с QA/тренерами
  • Кейс A/B-теста скрипта с guardrail-метриками
  • Освежить Kafka/data quality checks и постановку задач разработчикам
  • Повторить все вопросы из блоков SQL, статистика, метрики КЦ
БлокГотов, если...
SQLможешь написать FCR по операторам, медиану через оконные функции и паузы через LAG/LEAD без подсказок
Pythonможешь в Pandas сравнить CSAT между группами с фильтром по размеру выборки
Статистикаможешь описать дизайн A/B-теста и объяснить p-value и стандартную ошибку среднего
Метрики КЦможешь объяснить FCR, AHT, ASA, SL, CSAT и как строить прокси-метрики
Бизнес-кейсыможешь за 5 минут разложить «клиенты жалуются» в аналитический план
Коммуникацияесть 2 кейса защиты методологии и постановки задач разработчикам

В день собеседования

  • Повторить формулы FCR, AHT, CSAT и прокси-метрики
  • Иметь наготове 3 STAR-кейса
  • Для SQL: спросить схему таблиц и граничные случаи перед кодом
  • Подготовить вопросы про команду, процессы QA, объём звонков, стек

Профессия

Аналитик данных

Темы

SQL и оконные функции
Python (Pandas/NumPy)
Статистика и A/B-тесты
Метрики контактного центра
Качество данных и витрины
GreenPlum и MPP

Компания

СберСбер

Сопроводим до оффера

Умножим шансы на каждом этапе поиска и поможем получить выгодный оффер

Узнать больше

🍪 Мы используем cookie и Яндекс Метрику, чтобы сайт работал и становился лучше. Подробнее в политике.

Сервис развития карьеры

Контактыteam@h.careers@hcareers
TelegramVKYouTubeLinkedIn
Сервисы
AI поиск работы newПоиск вакансий newПоиск компаний newКонструктор резюме newВопросы с собеседований newЗадачи с собеседований newГайды к собеседованиям newПроверятор резюме newГенератор сопроводительных new
Поиски себя
Войти в ITКарьерная стратегияПовысить доходПрофориентация
Работа в России
Сопровождение до оффера Найти работу в РоссииРевью портфолиоРевью резюмеТестовое собеседование
Работа за рубежом
Найти работу за границейПомощь в оформлении LinkedInРевью резюме на английскомТестовое собеседование на английском
Навыки
Личный брендОценка навыковРазвитие навыков и компетенций
Поддержка
ВыгораниеОтношения с коллективомОтношения с руководителемСиндром самозванцаСложное увольнение
Для бизнеса
Аудит процессов компанииВыступление на внутреннем мероприятии компанииКонсалтинг бизнеса
Профессии
HRАдминистрированиеАналитикаДизайнИнформационная безопасностьИскусственный интеллектИсследованияКонсалтингКонтентМаркетингМенеджментНаука и образованиеОфисПоддержкаПредпринимательство
Компания
С чем помогаемОтзывы Вопросы и ответыСертификатыВебинарыСтать ментором

Услуги оказывает ООО «Эйч Карьера»
ИНН 9710095807 ОГРН 1227700077340
Адрес: 127006, г. Москва, Старопименовский пер., д. 18, стр. 2, помещ./ком./этаж I/19/2
Платформа принадлежит ООО «Эйч Карьера»

Copyright © 2020-2025 Сервис развития карьеры Эйч. Все права защищены.

Политика конфиденциальностиПользовательское соглашениеОферта