Data Science
DS на собеседовании (FAANG)
Google DS interview loop: 5 раундов, 5 часов. SQL + Python coding, statistics (p-value, CI, A/B testing), ML depth (gradient boosting, neural networks), product case (метрики, эксперименты), behavioral. Провалить можно на любом раунде. Знание всего сразу - минимальный барьер входа.
- Meta Data Scientist E4 interview: SQL cohort analysis, statistics о p-value, product case 'FB Groups DAU упал', ML вопрос о feature importance. 5 раундов по 45 минут
- Amazon DS interview: два раунда SQL (LeetCode Medium), один статистика (A/B test design), один case study (метрика для Alexa), один behavioral (leadership principles)
- Netflix DS: фокус на A/B testing methodology и experimentation culture - 3 из 5 раундов про эксперименты
SQL на DS интервью: паттерны и подводные камни
SQL секция DS интервью FAANG: 1-2 задачи средней сложности, 30-45 минут. Типичные темы: window functions (ROW_NUMBER, RANK, LAG/LEAD), self join для последовательных событий, retention cohort analysis, funnel analysis. Пишется live в CoderPad/Google Docs.
Самые частые ошибки на SQL интервью: забыть GROUP BY, неправильный JOIN тип (INNER когда нужен LEFT), не учесть NULL в агрегатах, window function без PARTITION BY. Перед написанием - сказать вслух что делает каждый шаг. Интервьюер оценивает мышление, не только код.
Найти пользователей, которые сделали purchase в течение 7 дней после первого visit. Какой join использовать?
Статистика на DS интервью: проверка гипотез, CLT, доверительные интервалы
Статистический блок DS интервью: 30-45 минут концептуальных вопросов. Ключевые темы: p-value (что это значит), CLT и когда применяется, bootstrap, t-test vs z-test, confidence intervals. Часто спрашивают интуицию, а не формулы.
- p-value - вероятность наблюдать эффект >= текущего при H0 истинной. НЕ вероятность что H0 верна.
- CLT: среднее n независимых наблюдений ~ Normal при n >= 30 независимо от исходного распределения
- 95% CI: если повторить эксперимент 100 раз - 95 интервалов содержат истинное значение (не '95% что параметр внутри')
- Bootstrap: empirical distribution через resampling с возвращением. Не требует предположений о распределении.
- t-test vs z-test: t-test для малых выборок (n<30) или неизвестной sigma. z-test для больших выборок или известной sigma.
- Type I error (alpha): ложноположительное - отвергнуть H0 когда она верна. Type II (beta): ложноотрицательное.
Что правильно говорить о 95% доверительном интервале для среднего?
ML Depth: глубокие вопросы по моделям
ML depth секция: 45-60 минут. Проверяют понимание механизмов моделей, не только API. Типичные вопросы: как работает gradient boosting, почему Random Forest устойчив к overfitting, как bias-variance зависит от глубины дерева, что такое vanishing gradient.
- Gradient Boosting: каждое новое дерево предсказывает residuals предыдущего. Ансамбль аддитивный, a не параллельный.
- Random Forest vs GBM: RF параллелен (деревья независимы), GBM последовательный (каждое дерево зависит от предыдущего).
- Regularization в нейросетях: L1/L2 weight decay, Dropout (случайное отключение нейронов), Batch Normalization.
- Vanishing gradient: в глубоких сетях градиент затухает при backprop через sigmoid/tanh. Решение: ReLU, residual connections.
- XGBoost vs LightGBM: LightGBM leaf-wise рост дерева vs level-wise у XGBoost. LightGBM быстрее при большом N.
- Embeddings: low-dimensional representation категориальных переменных, обучаемый через backprop.
Почему Random Forest устойчив к overfitting, а одно глубокое дерево - нет?
Product Case: структура ответа на DS вопрос
Product case - самая субъективная часть DS интервью. Интервьюер оценивает структуру мышления, а не правильный ответ. CIRCLES framework (Comprehend, Identify, Report, Cut, List, Evaluate, Summarize) или собственная структура - главное последовательность.
- Comprehend: уточнить вопрос. 'Улучшить engagement' - что именно? DAU? Session length? Messages sent?
- Clarify: целевая аудитория, платформа, временной горизонт, что считается успехом
- Identify: разбить задачу на составляющие через дерево метрик
- Prioritize: выбрать наиболее impactful гипотезу с обоснованием
- Solution: предложить конкретное решение с метриками успеха
- Experiment: A/B тест - гипотеза, рандомизация, метрики, sample size
- Impact: revenue impact, ROI, риски
Интервьюер спрашивает 'Как улучшить LinkedIn'. Правильный первый шаг:
Ключевые идеи
- SQL: cohort analysis, window functions, retention - обязательные паттерны. Говорить логику вслух до написания кода.
- Статистика: p-value - вероятность данных при H0, не вероятность H0. CI - свойство процедуры, не конкретного интервала.
- Product case: Clarify -> Tree -> Prioritize -> Experiment -> Impact. Структура важнее 'правильного' ответа.
Связанные темы
DS интервью охватывает весь курс data science:
- Data Science Case Studies — Product sense и experiment design - основа product case раунда, самой субъективной части DS интервью
- Experimentation и A/B Testing — A/B testing methodology - обязательная тема statistics раунда в каждой FAANG DS позиции
Вопросы для размышления
- Как объяснить p-value не-статистику: руководителю продукта, который хочет знать 'значит ли это что наш тест работает'?
- Когда на SQL интервью лучше написать менее оптимальный но понятный запрос, чем оптимальный но нечитаемый?
- Как подготовиться к product case если нет опыта работы в крупных tech компаниях?