Найти в Дзене

Топ вопросов на собеседованиях на Аналитика данных

Всем привет! Я — практикующий исследователь данных, и на этом канале делюсь тем, что реально работает в IT. Никакой сухой теории, только личный опыт, рабочие инструменты и грабли, на которые я уже наступил за вас. Рад, что вы здесь! Собес — это не только шанс получить оффер мечты, но и возможность набраться бесценного опыта. (Сократ, если бы жил в наше время, точно бы согласился) 🥸
Я всегда хожу на собеседования, даже если вакансия не особо цепляет. Почему? Потому что вопросы и задачи, которые там разбирают, оседают в голове намертво. Я могу вспомнить, если не все, то почти все собесы, которые прошел.
Ниже делюсь топом вопросов, которые мне задавали на собеседованиях. Разделил их по направлениям, потому что аналитиков данных часто зовут и на смежные роли — от инженера до BI-разработчика. Поехали! Собеседования — это не только про то, чтобы показать, какой ты умный или тупой🙃. Это ещё и про то, чтобы не паниковать, если что-то забыл, и уметь выкрутиться. Я раньше думал, что надо зн
Оглавление
Картинка сгенерирована в Шедевруме
Картинка сгенерирована в Шедевруме

Всем привет! Я — практикующий исследователь данных, и на этом канале делюсь тем, что реально работает в IT. Никакой сухой теории, только личный опыт, рабочие инструменты и грабли, на которые я уже наступил за вас. Рад, что вы здесь!

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

Я всегда хожу на собеседования, даже если вакансия не особо цепляет. Почему? Потому что вопросы и задачи, которые там разбирают, оседают в голове намертво. Я могу вспомнить, если не все, то почти все собесы, которые прошел.

Ниже делюсь топом вопросов, которые мне задавали на собеседованиях. Разделил их по направлениям, потому что аналитиков данных часто зовут и на смежные роли — от инженера до BI-разработчика. Поехали!

Вопросы Аналитику данных

  1. Какие бывают типы баз данных? (Реляционные, нереляционные, колончатые — тут всё просто, но лучше заранее вспомнить примеры, типа PostgreSQL или MongoDB).
  2. Какие способы организации данных вы знаете? (Звезда, снежинка — звучит как сказка, но это про схемы данных. Один раз меня попросили нарисовать звезду на бумажке, хорошо, что я не растерялся).
  3. Какие Join’ы бывают, чем отличаются? (Inner, Left, Right, Full — база, без которой никуда. Гугл в помощь, но лучше выучить раз и навсегда, чтобы не краснеть перед интервьюером).
  4. Назови несколько оконных функций. (Rank, Row_number, Lead, Lag — тут главное не просто перечислить, а объяснить, как применял. Я однажды залип, пытаясь вспомнить разницу между Rank и Dense_rank, — не повторяйте).
  5. Как бы ты оптимизировал медленный SQL-запрос? (Индексы, избегать подзапросов, смотреть на план выполнения — звучит просто, но на деле надо покопаться. Один раз меня попросили объяснить на реальном примере — спасло, что я помнил свой старый проект).
  6. Какие метрики вы используете в работе? (Тут ждут конкретику под задачу: для продукта — DAU, MAU, retention, для маркетинга — CTR, CPA, ROI. Я однажды начал перечислять всё подряд, а потом понял, что надо говорить про конкретные примеры в работе. Теперь всегда вспоминаю пару кейсов, где метрики помогли бизнесу).
  7. Сколько максимально и минимально выведется строк, если сделать Left Join двух таблиц по 10 строк?(Максимум — 100 строк, если каждая строка из левой таблицы свяжется с каждой из правой. Минимум — 10 строк, если в правой таблице вообще нет подходящих записей. Один раз я чуть не ляпнул "зависит от данных", но вовремя вспомнил теорию — спасло). - этот вопрос мне задавали на трех собеседованиях! В первый раз когда я услышал этот вопрос, я начал рисовать на листке для себя и искал подвох, но в итоге логика взяла верх и я ответил как надо.
  8. Live-coding - встречается почти всегда (можно по пальцам пересчитать где у меня не было задачек на кодинг, не важно это Python или SQL), где-то просят написать скрипт SQL, по задаче. Где-то просят обработать датафрейм с помощью простых функций Python или библиотеки Pandas. Было даже посчитать метрики типа CTR и ROI.

Вопросы Дата-инженеру

  1. Что такое ETL и чем он отличается от ELT? (Классика: извлечь, трансформировать, загрузить).
  2. Как бы ты настроил пайплайн данных? (Тут ждут конкретику: какие инструменты (Spark, Kafka), как обрабатывать ошибки, как логировать. Главное — не говорить "я бы погуглил", лучше уметь обрисовать пару мини примеров).
  3. Что такое партиционирование и зачем оно нужно? (Дробим данные, чтобы быстрее читались. Один раз меня спросили, как выбрать ключ партиционирования, нюансы есть, лучше ознакомиться с темой).
  4. Расскажи про опыт работы с облачными сервисами. (AWS, GCP, Azure — если упомянул в резюме, готовься рассказывать. Я однажды сказал, что "немного знаю S3", а меня попросили объяснить, как настроить бакет. Хорошо, что вспомнил, хоть и протестил его во время учёбы один раз).

Вопросы BI-разработчику

  1. Какой инструмент для визуализации данных предпочитаешь и почему? (Tableau, Power BI, Looker, Data Lens, Fine BI — тут главное обосновать. Я всегда говорю про Power BI, потому что он у меня под рукой был на прошлом проекте).
  2. Как построить дашборд, чтобы он был понятен бизнесу? (Меньше графиков, больше смысла — по дизайну мне помогает брошюрка из книжки "Говорим на языке диаграмм", так как со вкусом у меня беда).
  3. Что такое DAX и как ты его использовал? (Если работаешь с Power BI, без DAX никуда. Часто попросят написать формулу на собесе, то же касается и Power Query).
  4. Почти всегда на эту позицию дают тестовое. Вопросы обычные по результатам тестового: зачем именно этот график? Зачем именно эта диаграмма? Что можно узнать из этой диаграммы/графика и какие выводы можно сделать? и т.п. Если делали дашборд сами, то ответить не составит труда.

Вопросы Data Scientist

  1. Объясни разницу между accuracy, precision и recall. (Классика DS, которую я зубрил перед каждым собесом. Один раз меня попросили привести пример, где precision важнее recall, — спасибо медицинским кейсам из интернета).
  2. Как бы ты боролся с переобучением модели? (Регуляризация, кросс-валидация, больше данных — звучит просто, но лучше заранее вспомнить, как это делал на практике, если делал конечно).
  3. Расскажи про опыт с A/B-тестами. (Если в резюме есть намёк на эксперименты, жди этот вопрос. Я однажды чуть не запутался в p-value, но вовремя вспомнил курс по статистике). Кстати про А/В-тесты меня спрашивали и на позицию Аналитика данных.
  4. Какие библиотеки для NLP вы знаете? (NLTK, SpaCy, Natasha, Transformers и т.п. желательно чтобы у вас был с ними опыт, потому-что часть есть вытекающие вопросы. Я со всеми ними поработал на курсах по Машинному обучению и на хакатонах, и ничего такого сложного я в них не вижу, так как вся магия происходит под капотом. Любопытно, но там где я сейчас работаю мне задавали этот вопрос на позицию Аналитика данных, впоследствии я понял почему.

Что я понял

Собеседования — это не только про то, чтобы показать, какой ты умный или тупой🙃. Это ещё и про то, чтобы не паниковать, если что-то забыл, и уметь выкрутиться. Я раньше думал, что надо знать ответы на все вопросы, но потом понял: главное — показать, что ты можешь думать и решать задачи, желательно всегда рассуждать вслух и очень критически подходить к вопросам. Ну и, конечно, не мешает повторить базу перед собесом, как правило её и задают в первую очередь.

Лично я никогда не бываю собой доволен, и если не ответил на половину вопросов и если ответил на все, всё равно потом чувство после собеседования типа "вот я тупоооой!!!"🤣...

Выводы

  1. Готовьтесь под роль. Вопросы для аналитика и инженера пересекаются, но акценты разные — не пытайтесь объять необъятное.
  2. Держите базу наготове. SQL, Python, немного статистики — это как билет на собес, без них не пустят. (Хотя было такое что в одной компании нужно было знать язык R, так как они там работали, а на знание Python даже внимания не обращали. И еще в Яндексе проходил собеседование, там не нужен был Python, там был внутренний язык типа Jinja, но опять таки раз на раз не приходится)
  3. Рассказывайте истории. Если спросили про оконные функции, не просто перечисляйте, а вспомните, как вы их использовали в проекте.
  4. Не бойтесь ошибаться. Лучше честно сказать "забыл, но могу разобраться", чем выдумывать на ходу.

Перед собесом я всегда делаю шпаргалку — листок с ключевыми формулами, командами и терминами (типа "Rank vs Dense_rank" или "ETL шаги"). Не подглядываю, но сам факт, что она есть, успокаивает. А ещё за день до собеса решаю пару задачек на SQL или Python — просто чтобы пальцы вспомнили, как кодить без стресса. Попробуйте, вдруг и вам зайдёт.

Вот такие вопросы мне попадались — надеюсь, мой список поможет вам подготовиться и не теряться на собесах. А какие вопросы запомнились вам? Делитесь, буду благодарен!

Я не претендую на последнюю инстанцию, я пишу о своём пути и опыте. Спасибо что дочитали до конца. Подпишитесь👇👇👇, ставьте лайки 👍🏽👍🏽👍🏽 впереди много интересных статей про навыки, инструменты, обучение, лайфхаки и пути аналитика.