RecallDeck
Направление

Подготовка к собеседованию — Аналитик данных

Колода из 265+ карточек с вопросами для собеседования по направлению «Аналитик данных» — по темам и уровню сложности, с возвратом ровно перед тем, как вы забудете. Посмотрите несколько карточек ниже, затем выберите доступ, чтобы учить всё направление по расписанию в стиле Anki (SM-2).

265 карточек13 тем
Посмотреть цены и начать

7 дней бесплатно на месяц или год · все функции включены.

Что внутри

Все темы направления, сгруппированные так, как вы будете их учить.

SQL для аналитики

11 карточек
SQL для аналитики

Статистика и вероятность

11 карточек
Статистика

A/B-тесты и эксперименты

9 карточек
Эксперименты

Продуктовые и бизнес-метрики

10 карточек
Метрики

Визуализация данных и сторителлинг

8 карточек
Визуализация

Python для аналитиков (pandas и matplotlib)

10 карточек
Python для аналитиков

Аналитические кейсы

7 карточек
Кейсы

Python

122 карточки
Ядро языкаМодель данных и внутренностиКонкурентность и asyncStdlib, типизация и тесты

Базы данных

42 карточки
Основы SQL

Поведенческое интервью

35 карточек
Поведенческое интервью

Примеры вопросов

Несколько карточек из колоды — откройте ответ, затем выберите доступ, чтобы учить весь набор по расписанию.

Что такое оконные функции и чем они отличаются от GROUP BY?

Короткий ответ: Оконная функция считает агрегат по «окну» строк, но при этом не схлопывает строки — каждая исходная строка сохраняется и получает своё значение. GROUP BY, наоборот, сворачивает группу в одну строку.

Подробно:

  1. GROUP BY — N строк группы → 1 строка результата. Деталь теряется.
  2. Оконная функция — N строк остаются N строками, рядом появляется агрегат (сумма, ранг, среднее, lag).
  3. Синтаксисfunc() OVER (PARTITION BY ... ORDER BY ...). PARTITION BY задаёт группы, ORDER BY — порядок внутри окна (нужен для нарастающих итогов и рангов).
-- Нарастающий итог продаж по каждому пользователю
SELECT
  user_id,
  order_date,
  amount,
  SUM(amount) OVER (
    PARTITION BY user_id
    ORDER BY order_date
  ) AS running_total
FROM orders;

⚠️ Частая ошибка: пытаться отфильтровать по результату оконной функции в WHERE — окна вычисляются после WHERE/GROUP BY, поэтому заворачивайте запрос в CTE/подзапрос и фильтруйте снаружи.

Чем отличаются среднее, медиана и мода, и почему для скошенных данных (доход, время отклика) лучше брать медиану?

Короткий ответ: Среднее — сумма, делённая на количество, чувствительно к выбросам. Медиана — центральное значение упорядоченного ряда, устойчива к выбросам. Мода — самое частое значение. Для скошенных данных медиана точнее отражает «типичное» наблюдение.

Подробно:

  1. Среднее (mean) — хорошо для симметричных данных и для дальнейших расчётов (дисперсия, регрессия), но один выброс сдвигает его.
  2. Медиана — 50-й перцентиль; делит данные пополам и почти не реагирует на экстремумы.
  3. Мода — единственная метрика для категориальных данных («самый частый тариф»).
Метрика Когда применять Чувствительность к выбросам
Среднее симметричные данные, дальнейшие расчёты высокая
Медиана скошенные данные: доход, время отклика, цены низкая
Мода категориальные данные, самое частое значение низкая

⚠️ Частая ошибка: отчитываться средним по доходу или времени отклика. Длинный правый хвост тянет среднее вверх, и оно перестаёт описывать типичного пользователя — берите медиану.

Как устроен A/B-тест от начала до конца? Опишите ключевые этапы.

Короткий ответ: A/B-тест — это рандомизированный эксперимент: пользователей случайно делят на контроль и тритмент, показывают разные версии и сравнивают одну заранее выбранную первичную метрику по фиксированному правилу решения.

Подробно:

  1. Гипотеза — что меняем, на какую метрику влияем и почему.
  2. Метрика и MDE — одна первичная метрика плюс минимально детектируемый эффект (MDE).
  3. Рандомизация — случайное и устойчивое разбиение на контроль/тритмент.
  4. Размер выборки и длительность — считаем и фиксируем до старта.
  5. Запуск до N — крутим до набора выборки, не подглядывая в промежуточные итоги.
  6. Анализ — сравниваем метрику, считаем p-значение и доверительный интервал лифта.
  7. Решение — выкатываем или откатываем по заранее заданному правилу.
Гипотеза → Рандомизация → Запуск до N → Анализ → Решение
              │                                    │
       контроль / тритмент              выкатить ✓ / откатить ✗

⚠️ Частая ошибка: менять интерфейс по ходу теста или останавливать его в первый момент «значимости» — и то и другое ломает выводы.

Что делает метрику хорошей и чем метрика отличается от KPI?

Короткий ответ: Хорошая метрика измерима, сравнима, понятна и трудно поддаётся накрутке (gameable), а главное — actionable: по ней можно принять решение. KPI — это та же метрика, но привязанная к цели и целевому значению на период; KPI — подмножество метрик, а не синоним.

Подробно:

  1. Actionable, а не vanity — метрика должна менять чьё-то решение. Если число выросло, но никто не знает, что делать, — это vanity-метрика.
  2. Сравнимость — используй ставки и отношения (конверсия, retention %), а не абсолютные счётчики: они сопоставимы между периодами и сегментами.
  3. Устойчивость к накрутке — спрашивай «как это можно нагнать, не создав ценности?». «Клики» легко накрутить, «активированные пользователи» — труднее.
  4. Ясное определение — один числитель, один знаменатель, окно и фильтры зафиксированы, иначе две команды считают по-разному.
Свойство Метрика KPI
Что это любое измеримое число метрика с целью
Привязка к цели не обязательно обязательно (target)
Сколько штук много единицы, отобранные
Пример время на странице activation rate ≥ 40% к Q3

⚠️ Частая ошибка: называть KPI всё подряд. KPI — это 3–5 метрик, по которым команду реально оценивают; остальное — диагностические метрики.

Как выбрать тип графика под задачу: столбики, линия, точечная или круговая диаграмма?

Короткий ответ: Тип графика диктует не вкус, а характер связи в данных: сравнение категорий — столбики, динамика во времени — линия, корреляция двух величин — диаграмма рассеяния, доля немногих частей в целом — круговая. Если сомневаешься между круговой и чем-то ещё — почти всегда выбирай столбики.

Подробно:

Сначала формулируешь, какую связь показываешь, и только потом выбираешь визуализацию:

Связь в данных Тип графика Почему
Сравнение категорий Столбчатая глаз точно сравнивает длину; ось обязана начинаться с 0
Динамика во времени Линейная линия подчёркивает тренд и непрерывность
Корреляция X и Y Точечная (scatter) видно облако, кластеры и выбросы
Доля частей в целом Круговая / стек только при 2–4 частях, сумма = 100%
Распределение Гистограмма / boxplot видно форму, разброс, хвосты
  • Столбики — рабочая лошадка для категорий; ось Y начинается с нуля, иначе разница в высоте врёт.
  • Линия — только для упорядоченной непрерывной оси (время, дни); не соединяй линией несвязанные категории.
  • Scatter — для «связаны ли X и Y», добавь линию тренда при необходимости.

⚠️ Частая ошибка: круговая диаграмма с 8 секторами — доли на ней неразличимы; замени на горизонтальные столбики, отсортированные по величине.

Чем Series отличается от DataFrame, как загрузить данные и быстро их осмотреть?

Короткий ответ: Series — это одномерный массив с индексом (один столбец), DataFrame — двумерная таблица из колонок-Series с общим индексом строк. Данные грузят через pd.read_csv() / pd.read_sql(), а первичный осмотр делают через .head(), .info(), .describe(), .dtypes, .shape.

Подробно:

  1. Series vs DataFramedf['col'] возвращает Series; df[['col']] (двойные скобки) — DataFrame из одной колонки. У обоих есть .index.
  2. Загрузкаread_csv (файл/URL), read_sql (SQL-запрос + соединение), read_parquet (быстрый колоночный формат).
  3. Осмотр.head()/.tail() смотрят края, .info() даёт типы и пропуски, .describe() — статистику числовых колонок, .dtypes — типы, .shape — размер.
import pandas as pd

df = pd.read_csv("sales.csv", parse_dates=["order_date"])
df.shape          # (10000, 8) — строки, колонки
df.info()         # типы колонок и число непустых значений
df.describe()     # count/mean/std/min/quartiles/max по числовым
df["revenue"].head()   # Series — одна колонка

⚠️ Частая ошибка: забыть parse_dates= при чтении — колонка с датами останется object (строкой), и арифметика по датам/resample() работать не будут.

Готовы закрепить навсегда?

Первая сессия — меньше минуты. Ваше будущее «я» на собеседовании скажет спасибо.

Вопросы об этом направлении

Как готовиться к собеседованию на «Аналитик данных»?

Учите концепции, которые придётся объяснять, а не только те, что умеете кодить. Направление «Аналитик данных» в RecallDeck даёт 265+ отобранных вопросов и возвращает каждый по расписанию в стиле Anki (SM-2) ровно перед тем, как вы забудете — чтобы на собеседовании ответы были под рукой.

Какие темы охватывает направление «Аналитик данных»?

Направление «Аналитик данных» разбито на ключевые области, которые реально проверяют на таких собеседованиях, — по темам и уровню сложности (Concept, Junior, Middle, Senior). Полный план и примеры вопросов можно посмотреть выше до входа.

Помогает ли интервальное повторение в подготовке к «Аналитик данных»?

Да. Активно вспоминать ответ и честно себя оценивать — куда прочнее для памяти, чем перечитывать заметки. RecallDeck планирует каждую карту «Аналитик данных» так, чтобы она вернулась перед моментом забывания: ежедневных повторений становится меньше, а знания держатся.

Можно попробовать направление «Аналитик данных» до оплаты?

Да. Месячный и годовой варианты включают семь пробных дней со всем направлением «Аналитик данных», полным планировщиком SM-2, статистикой, гибким темпом и блиц-режимом. Отменить можно онлайн до первого списания.

Другие направления

RecallDeckПодготовка к собеседованию на интервальных повторениях