Собеседование на риск-аналитика
Чем занимается риск-аналитик
Риск-аналитик оценивает вероятность потерь и помогает бизнесу принимать решения в условиях неопределённости. Конкретные задачи зависят от направления.
Кредитный риск. Самое распространённое направление. Вы строите скоринговые модели, которые оценивают вероятность дефолта заёмщика. Определяете, кому одобрить кредит, на какую сумму и под какую ставку. Мониторите портфель: отслеживаете просрочки, миграцию между стадиями, концентрацию рисков.
Антифрод (fraud analytics). Выявляете мошеннические транзакции и схемы — от поддельных заявок на кредит до кражи аккаунтов. Строите правила и модели, которые отличают нормальное поведение от аномального. Баланс здесь критичен: слишком строгие правила блокируют честных клиентов, слишком мягкие — пропускают фрод.
Операционный риск. Оцениваете риски, связанные с внутренними процессами, сбоями систем, человеческими ошибками. Реже встречается в вакансиях для аналитиков — чаще это направление для менеджеров, но знать о нём стоит.
Рыночный риск. Анализ волатильности, стресс-тестирование портфелей ценных бумаг, расчёт VaR. Это ближе к финансовой математике и встречается в инвестиционных подразделениях.
На практике в большинстве вакансий «риск-аналитик» означает кредитный скоринг или антифрод. Именно эти направления разберём подробнее.
Где работают риск-аналитики
Банки. Крупнейший работодатель. Сбер, Т-Банк, ВТБ, Альфа-Банк, Райффайзен — у всех есть департаменты риск-аналитики. Задачи: скоринг, мониторинг портфеля, отчётность по нормативам ЦБ (Basel III, МСФО 9). В банках самые зрелые процессы и самые строгие регуляторные требования.
Финтех. МФО, BNPL-сервисы, необанки. Здесь скоринг критичен — решения по кредитам принимаются автоматически за секунды. Модели проще (меньше данных), но итерации быстрее. Если в банке модель живёт год, в финтехе — месяц.
Страхование. Андеррайтинг — оценка рисков для формирования тарифов. Какова вероятность страхового случая для конкретного клиента? Как рассчитать премию, чтобы покрыть убытки и заработать? Инструменты те же — логистическая регрессия, деревья решений — но контекст другой.
E-commerce и платёжные системы. Антифрод: выявление мошеннических транзакций, фейковых аккаунтов, злоупотреблений промокодами. Ozon, Wildberries, Яндекс Пэй, ЮKassa — все строят антифрод-системы.
Этапы собеседования
Процесс зависит от компании, но типичная структура:
1. HR-скрининг
15–20 минут. Рекрутер уточняет опыт, мотивацию, зарплатные ожидания. Могут спросить: «Почему риски, а не продуктовая аналитика?», «С какими моделями работали?», «Знаете ли требования ЦБ?». Подготовьте краткий рассказ о себе с акцентом на релевантный опыт.
2. SQL-интервью
60–90 минут. Задачи привязаны к рисковому контексту: анализ просрочек, расчёт vintage-кривых, когортный анализ дефолтов. Подробнее о подготовке — в разделе SQL.
3. Статистика и моделирование
Основной этап для риск-аналитика. Проверяют знание логистической регрессии, метрик качества моделей, работы с дисбалансом классов. Могут дать задачу на вероятность или попросить объяснить ROC-AUC. Подробнее — в разделе статистики.
4. Кейс-интервью
Дают бизнес-ситуацию из области рисков: построить скоринговую модель, расследовать фрод-схему, оценить влияние изменения политики выдач. Оценивают не столько технику, сколько понимание домена и умение структурировать задачу.
5. Финальное интервью
Встреча с руководителем или Head of Risk. Обсуждают ваш подход к задачам, понимание бизнес-контекста, готовность работать с регуляторикой.
SQL-вопросы для риск-аналитика
SQL на собеседовании риск-аналитика всегда привязан к предметной области. Вот типичные задачи.
Vintage-анализ
Классическая задача: построить vintage-кривые — показать, как когорта выданных кредитов «стареет» и накапливает просрочки с течением времени.
WITH loans AS (
SELECT
loan_id,
DATE_TRUNC('month', issue_date) AS vintage_month,
issue_date
FROM loan
),
first_default AS (
SELECT
loan_id,
MIN(report_date) AS default_date
FROM payment_schedule
WHERE days_past_due >= 90
GROUP BY loan_id
)
SELECT
l.vintage_month,
COUNT(DISTINCT l.loan_id) AS issued,
COUNT(DISTINCT CASE
WHEN fd.default_date <= l.issue_date + INTERVAL '6 month'
THEN l.loan_id
END) AS default_6m,
ROUND(
COUNT(DISTINCT CASE
WHEN fd.default_date <= l.issue_date + INTERVAL '6 month'
THEN l.loan_id
END)::numeric / COUNT(DISTINCT l.loan_id), 4
) AS default_rate_6m
FROM loans l
LEFT JOIN first_default fd ON l.loan_id = fd.loan_id
GROUP BY l.vintage_month
ORDER BY l.vintage_monthНа собеседовании уточните: что считаем дефолтом (90+ dpd, списание, реструктуризация), какой горизонт наблюдения, нужно ли исключать досрочно погашенные.
Roll-rate анализ
Как заёмщики мигрируют между стадиями просрочки? Задача: посчитать долю кредитов, которые перешли из состояния «30–60 dpd» в «60–90 dpd» за месяц.
WITH status_monthly AS (
SELECT
loan_id,
report_month,
CASE
WHEN days_past_due = 0 THEN 'CURRENT'
WHEN days_past_due BETWEEN 1 AND 30 THEN '1-30'
WHEN days_past_due BETWEEN 31 AND 60 THEN '31-60'
WHEN days_past_due BETWEEN 61 AND 90 THEN '61-90'
ELSE '90+'
END AS bucket
FROM monthly_snapshot
)
SELECT
cur.bucket AS from_bucket,
nxt.bucket AS to_bucket,
COUNT(*) AS loan_count,
ROUND(COUNT(*)::numeric / SUM(COUNT(*)) OVER (PARTITION BY cur.bucket), 3) AS roll_rate
FROM status_monthly cur
JOIN status_monthly nxt
ON cur.loan_id = nxt.loan_id
AND nxt.report_month = cur.report_month + INTERVAL '1 month'
WHERE cur.bucket = '31-60'
GROUP BY cur.bucket, nxt.bucket
ORDER BY nxt.bucketЭта задача проверяет понимание кредитного цикла и умение работать с состояниями во времени.
Обнаружение аномалий в транзакциях
«Найдите пользователей, у которых сумма транзакций за последний час превышает среднюю дневную сумму более чем в пять раз». Такие задачи типичны для антифрод-направления и проверяют владение оконными функциями.
Статистика и моделирование
Это центральный блок собеседования. Вот что спрашивают чаще всего.
Логистическая регрессия
Основная модель в кредитном скоринге. Вас попросят объяснить:
- Почему логистическая, а не линейная? Потому что предсказываем вероятность бинарного события (дефолт / не дефолт), и она должна лежать в диапазоне [0, 1]. Линейная регрессия может выдать значения за пределами этого диапазона.
- Что такое логит-преобразование? log(p / (1 - p)) — логарифм отношения шансов. Логистическая регрессия моделирует линейную зависимость именно для логита, а не для вероятности напрямую.
- Как интерпретировать коэффициенты? Коэффициент при признаке показывает, на сколько изменяется логит при увеличении признака на единицу. Экспонента коэффициента — это отношение шансов (odds ratio).
- Почему банки до сих пор используют логрег, а не градиентный бустинг? Интерпретируемость и регуляторные требования. Регулятор хочет понимать, почему модель отказала в кредите. У логрега каждый признак имеет явный вес — это легко объяснить. У бустинга — нет.
Confusion matrix
Вас попросят нарисовать матрицу ошибок и объяснить все четыре ячейки:
- True Positive — модель сказала «дефолт», и заёмщик действительно не заплатил.
- True Negative — модель сказала «не дефолт», и заёмщик платит исправно.
- False Positive — модель сказала «дефолт», но заёмщик платит. Банк отказал хорошему клиенту — потерял доход.
- False Negative — модель сказала «не дефолт», а заёмщик не заплатил. Банк выдал кредит плохому клиенту — потерял деньги.
Ключевой вопрос: что дороже — FP или FN? В кредитном скоринге FN обычно дороже: один дефолтный кредит может стоить больше, чем упущенная прибыль от десяти отклонённых хороших заявок. В антифроде — зависит от контекста: заблокированная легитимная транзакция раздражает клиента, но пропущенный фрод приводит к прямым убыткам.
ROC-AUC и Gini
ROC-кривая строится по парам (FPR, TPR) для всех возможных порогов классификации. AUC (Area Under Curve) — площадь под этой кривой. AUC = 0.5 означает случайную модель, AUC = 1.0 — идеальную.
Gini = 2 * AUC - 1. В кредитном скоринге чаще используют именно Gini. Модель с Gini 0.4 — приемлемая, 0.5–0.6 — хорошая, выше 0.7 — отличная (или переобучение, проверьте).
На собеседовании могут спросить: «ROC-AUC вашей модели — 0.85. Можно ли сказать, что модель хорошая?» Правильный ответ: нет, нельзя без контекста. AUC не учитывает дисбаланс классов и не говорит, при каком пороге модель работает. При сильном дисбалансе (1% дефолтов) AUC может быть высоким просто за счёт правильной сортировки, но precision при рабочем пороге — низким. Нужно смотреть на precision-recall кривую и на бизнес-метрики: approval rate, expected loss.
Дисбаланс классов
Дефолты — это обычно 2–5% портфеля. Мошеннические транзакции — доли процента. Модель, которая всех предсказывает как «хороших», уже имеет accuracy 95%. Как с этим работать?
- Стратифицированная кросс-валидация — чтобы в каждом фолде сохранялось соотношение классов.
- Undersampling / oversampling — SMOTE, random undersampling. Помогает при обучении, но на валидации всегда используйте оригинальное распределение.
- Подбор порога — не используйте 0.5 по умолчанию. Порог выбирается на основе бизнес-требований: допустимый approval rate, целевой уровень потерь.
- Метрики — не accuracy, а precision, recall, F1, AUC, Gini.
Примеры кейсов
Кейс 1: построить скоринговую модель
«Вы аналитик в МФО. Нужно построить скоринг для коротких займов (до 30 дней). Какие данные возьмёте, как будете строить модель, как оцените качество?»
Ожидаемый ход решения:
- Данные. Анкетные данные (возраст, доход, стаж работы), кредитная история из БКИ (количество действующих кредитов, просрочки, количество запросов), поведенческие данные (если повторный клиент — история платежей), данные заявки (сумма, срок, канал).
- Целевая переменная. Дефолт — определите, что это значит. Для микрозайма на 30 дней: просрочка 30+ дней после срока погашения? Или 60+? Выбор влияет на всё остальное.
- Выборка. Определите observation window (когда наблюдаем признаки) и performance window (когда оцениваем исход). Уберите незрелые кредиты — те, у которых ещё не закончился performance window.
- Признаки. WoE-кодирование для логрега, отбор по IV (Information Value). IV > 0.1 — слабый предиктор, 0.1–0.3 — средний, > 0.3 — сильный.
- Модель. Логистическая регрессия для интерпретируемости. Перевод в скоркарту — балльная шкала, понятная бизнесу.
- Валидация. Out-of-time validation — обучаемся на одном периоде, проверяем на следующем. Gini, KS-статистика, PSI (Population Stability Index) для мониторинга дрифта.
Кейс 2: расследование фрод-схемы
«За последний месяц выросло количество заявок на кредит, которые проходят скоринг, но дефолтятся в первый же месяц. Как будете разбираться?»
Подход:
- Сегментация. Сравните профиль ранних дефолтов с нормальным портфелем. По каким признакам они отличаются: регион, канал привлечения, анкетные данные, время подачи заявки?
- Паттерны. Есть ли кластеры заявок с похожими данными: одинаковые работодатели, телефоны из одной серии, IP-адреса? Фрод часто идёт «волнами» от организованных групп.
- Проверка данных. Совпадают ли анкетные данные с данными из БКИ? Есть ли расхождения, которые скоринг не ловит?
- Реакция. Предложите правила: временные жёсткие фильтры по выявленным паттернам, дополнительная верификация для подозрительного сегмента, пересчёт скоркарты с учётом новых данных.
Инструменты риск-аналитика
SQL — основной рабочий инструмент. Выгрузки из хранилища, анализ портфеля, подготовка выборок для моделирования. Ожидается уверенное владение: оконные функции, CTE, работа с датами, агрегации по когортам. Подготовка — в разделе SQL.
Python — построение моделей, автоматизация пайплайнов. Библиотеки: scikit-learn (логрег, деревья, метрики), pandas (подготовка данных), matplotlib/seaborn (визуализация). В крупных банках часто требуют PySpark для работы с большими объёмами.
SAS — всё ещё используется в крупных банках, особенно в подразделениях, которые работают с регуляторной отчётностью. Если в вакансии упоминается SAS — значит, легаси-процессы существуют и вам с ними работать.
Excel — для быстрых расчётов, презентаций руководству, ручных проверок. Банковские риск-менеджеры любят Excel — привыкайте.
BI-инструменты — Tableau, Power BI, Superset. Дашборды для мониторинга портфеля: vintage-кривые, roll-rates, approval rate, распределение скорбаллов.
Частые вопросы на собеседовании
«Что такое WoE и IV?»
WoE (Weight of Evidence) — метод кодирования категориальных и непрерывных признаков для логистической регрессии. Для каждого бина (интервала) рассчитывается: WoE = ln(доля хороших в бине / доля плохих в бине). Признак с монотонным WoE — хороший предиктор.
IV (Information Value) — суммарная предсказательная сила признака. Рассчитывается как сумма по всем бинам: (доля хороших - доля плохих) * WoE. Помогает отобрать признаки перед построением модели.
«Что такое PSI и зачем он нужен?»
PSI (Population Stability Index) — метрика стабильности модели. Сравнивает распределение скорбаллов на текущей выборке с распределением на выборке разработки. PSI < 0.1 — модель стабильна. 0.1–0.25 — нужно наблюдение. > 0.25 — модель деградировала, требуется пересчёт. На собеседовании важно показать, что вы понимаете: модель нельзя один раз построить и забыть — её нужно мониторить.
«В чём разница между PD, LGD и EAD?»
Три компоненты расчёта ожидаемых потерь (Expected Loss = PD * LGD * EAD):
- PD (Probability of Default) — вероятность дефолта. Это то, что предсказывает скоринговая модель.
- LGD (Loss Given Default) — доля потерь при дефолте. Если кредит обеспечен залогом, LGD ниже.
- EAD (Exposure at Default) — сумма, подверженная риску в момент дефолта. Для кредитной линии — это не лимит, а ожидаемый остаток.
«Как вы определяете порог отсечения?»
Не по AUC и не по F1. Порог — бизнес-решение. Вы строите таблицу: для каждого возможного порога — approval rate, expected loss rate, прибыль. Бизнес выбирает баланс между объёмом выдач и уровнем потерь. Ваша задача — дать данные для этого решения и показать trade-off.
Как готовиться
SQL. Решайте задачи с рисковым контекстом: vintage-анализ, roll-rates, когортный анализ дефолтов. Если в вакансии упоминается ClickHouse или Hive — посмотрите особенности синтаксиса. Основа — в разделе SQL.
Статистика. Логистическая регрессия — знать от и до. Confusion matrix, ROC-AUC, Gini, precision-recall — уметь объяснить без подглядывания. Базовая теория вероятностей и статистика — обязательный минимум.
Предметная область. Если идёте в банк — прочитайте про Basel III, МСФО 9, стадии обесценения. Если в антифрод — разберите типичные схемы: identity fraud, application fraud, transaction fraud. Вопросы про домен показывают зрелость кандидата.
Кейсы. Потренируйтесь рассуждать вслух: «Мне дали задачу построить скоринг для автокредитов — с чего начну?». Важна не идеальная модель, а структурированный подход: данные, целевая, выборка, признаки, модель, валидация, внедрение, мониторинг.
Портфолио. Если нет опыта в рисках — возьмите открытые датасеты (Kaggle: Home Credit, Lending Club) и пройдите полный цикл: EDA, WoE-кодирование, логрег, оценка качества, скоркарта. Один такой проект на GitHub стоит больше, чем десять сертификатов.
Потренируйтесь решать задачи для аналитиков в Карьернике — тренажёре для подготовки к собеседованиям.
FAQ
Чем занимается риск-аналитик?
Риск-аналитик оценивает вероятность потерь и помогает бизнесу принимать решения в условиях неопределённости. Основные направления: кредитный скоринг (оценка вероятности дефолта), антифрод (выявление мошенничества), операционный и рыночный риск. Чаще всего вакансии связаны с кредитным скорингом или антифродом.
Какие навыки нужны для собеседования на риск-аналитика?
SQL для анализа портфеля и vintage-кривых, логистическая регрессия и метрики качества моделей (ROC-AUC, Gini), понимание confusion matrix и дисбаланса классов, а также знание предметной области — кредитный цикл, WoE/IV, PSI для мониторинга моделей.
Почему банки до сих пор используют логистическую регрессию, а не градиентный бустинг?
Главная причина — интерпретируемость и регуляторные требования. Регулятор хочет понимать, почему модель отказала в кредите. У логистической регрессии каждый признак имеет явный вес, который легко объяснить. У бустинга такой прозрачности нет.
Что такое ROC-AUC и Gini в кредитном скоринге?
ROC-AUC — площадь под ROC-кривой, показывающая способность модели разделять классы (0.5 = случайная, 1.0 = идеальная). Gini = 2 * AUC - 1. В скоринге Gini 0.4 — приемлемая модель, 0.5-0.6 — хорошая, выше 0.7 — отличная или признак переобучения.