Вопросы для собеседования на позицию Data Scientist в топовых компаниях

1
5908

Если изучаете Data Science и собираетесь трудоустраиваться, подготовьтесь к собеседованию по этой статье.

Data Science стала одной из наиболее используемых технологий при принятии решения в крупнейших компаниях. Мировые технологические лидеры ведут борьбу между собой за каждого специалиста по направлению, потому что каждый хочет видеть у себя квалифицированного работника. Поэтому в таких компаниях, как Facebook, Google, LinkedIn, AirBnB, Twitter очень сложно пройти собеседование. Для тех, кто всё же собирается работать в лучших компаниях, мы составили список вопросов, которые задаются на интервью.

На недавнем форуме в Бостоне каждый оратор посчитал своим долгом сказать о важности Data Science специалистов. Компании хотят, чтобы эти люди с помощью алгоритмов экспериментировали и помогали принимать стратегические решения. Но найти таких специалистов проблемно, в том числе потому, что многие из опытных программистов не понимаю, как устроен сам бизнес компании, а молодые ещё недостаточно квалифицированы. Ввиду большого количества критериев принятия на работу и ничтожно малого количества подходящих кандидатов, зарплаты таких сотрудников в США начинаются от 100 000$.

Кроме того, компании хотят видеть результаты ежедневно, но из-за специфики работы многие нанятые сотрудники вынуждены дожидаться своего звёздного часа, иначе их могут переманить конкуренты. В любом случае, это всё сложно, но интересно и хорошо оплачиваемо, так что пора приступить к тем самым вопросам, которые упоминались выше.

Вопросы с собеседований по Data Science в компаниях-лидерах в сфере технологий

Data Science

Эти вопросы, перечисленные здесь были обнаружено в ходе тщательного исследования сайтов компаний и дискуссионных форумов, как Stack Overflow. Это не является гарантией того, что эти вопросы будут заданы вам на собеседовании, но зато это даст примерное понимание того, чего ожидать, когда подаёшь заявку.

Вопросы с собеседования в Facebook

Реальные задачи

1) У скольких пользователей Facebook сегодня день рождения?

2) Как определить фейки на Facebook?

3) Вы получили данные, что такие-то пользователи неравнодушны друг к другу. Как определить, являются ли они друзьями?

4) Как бы вы добавляли в базу данных Facebook новых пользователей и описывали там их отношения с другими пользователями?

5) Что бы вы добавили в Facebook,  как бы обосновали успех новой фичи?

6) Как проверить, продолжит ли новый пользователь заходить на Facebook спустя 6 месяцев после регистрации, если иметь в виду только данные о том, что у пользователя увеличивается количество друзей?

7) У вас есть две таблицы: первая таблица содержит данные о пользователях и их друзьях, вторая таблица содержит данные о пользователях и страницах, которые им понравились. Напишите SQL-запрос, чтобы создать список рекомендаций, используя страницы, которые понравились вашим друзьям. Результат запроса не должен рекомендовать страницы, которые уже понравились пользователю.

8) Какие техники вы бы применили, чтобы сравнить производительность двух бэкенд систем, генерирующих список возможных друзей?

9) Внедрите алгоритм сортировки для численного набора данных в Python.

10) Сколько людей используют Facebook в Калифорнии в 13:30 в понедельник?

11) Вам даны две таблицы — friend_request и request_accepted. Friend_request содержит requester_id, time и sent_to_id, а таблица request_accepted содержит time, acceptor_id и requestor_id. Как вы определите общую скорость приема заявок?

Абстрактные

12) Представьте, что вы собираетесь лететь в Сиэтл на самолёте к друзьям. Чтобы узнать, брать ли вам зонт и спрашиваете у трёх друзей, идёт ли дождь в эти дни. Каждый говорит, что дождь идёт и нужен зонт. Вероятность того, что каждый друг говорит правду — 2/3, а вероятность, что они разыгрывают — 1/3. Какова в итоге вероятность того, что дождь действительно идёт?

13) Вы можете бросить кубик 3 раза. Вы получаете столько денег, какой цифре на кубике соответствует последний бросок (к примеру, кинули 2 раза, на второй раз выпало 5 и вы решаете остановиться, забираете себе 5$). Каким будет ожидаемый выигрыш?

14) Вы находитесь в Казино. У вас есть два кубика. Вы выигрываете 10 долларов, а проигрываете 5. Если играть до выигрыша, а потом прекратить, какая будет выплата?

15) Сколько «Биг-Маков» продаёт «Макдональдс» ежегодно?

16) Какова вероятность вытянуть другую масть или карту с другим цветом из колоды из 52 карт?

17) Сколько стоматологов в США?

18) У вас есть 2 кубика. Какова вероятность выпадания четвёрки хотя бы на одном из них? Также выясните вероятность получения хотя бы одной четвёрки, если у вас есть n кубиков.

19) Есть монеты C1 и C2, вероятности выпадения решки на которых 0,7 и 0,6 соответственно. Вы бросаете одну из них 10 раз и получаете 3 орла и 7 решек. С какой вероятностью вы взяли C1?

20) Вы получаете 50 карт с пятью разными цветами — 10 зеленых карт, 10 красных карточек, 10 оранжевых карточек, 10 синих карт и 10 желтых карточек. Карты каждого цвета пронумерованы от одного до десяти. Две карты выбираются случайным образом. Определите вероятность того, что выбранные карты не одного и того же цвета.

21) Какой подход вы бы использовали, чтобы добавить систему лайков 👍,  ❤️,  😢?

Вопросы с собеседования в Insight Enterprises

1) В работе в каких компаниях-партнёрах Insight вы хотели бы работать?

2) Создайте программу на любом языке для чтения текстового файла с различными твитами. На выходе должно быть 2 текстовых файла, один из которых содержит список всех уникальных слов в твитах, а также количество повторяющихся слов, а второй среднее количество уникальных слов для всех твитов.

3) Что мотивирует вас начать заниматься наукой о данных?

Вопросы с собеседования в Twitter

1) Насколько высоко вы находитесь в рейтинге Twitter, чтобы ваши твиты выходили в топ?

2)    Как найти среднее число в массиве данных, который не умещается в памяти?

3)    Какие факторы повышения репутации (вероятности выдачи вашего твита) существуют в Twitter?

Вопросы с собеседования в Airbnb

1) Есть ли у вас знания в R?

2) Как вы поступите, если удаление недостающих значений из датасета вызовет смещение?

3) Как уменьшить смещение в имеющемся датасете?

4) Как вписать недостающие данные в датасет?

Вопросы с собеседования в Google

1) Объясните процесс синтаксического анализа строк в R.

2) Диск вращается на шпинделе, но направления вы не знаете. Как узнать это, используя несколько иголок?

3) Опишите процесс анализа данных.

4) Как разрезать круглый пирог на 8 равных частей?

Вопросы с собеседования в LinkedIn

1) Напишите алгоритм для определения несколько наиболее часто встречающихся чисел в массиве.

2) Есть два отсортированных вектора, как их объединить в один, отсортированный относительно друг друга?

3) Как реализована функция pow?

4) Какую функцию вы бы добавили в LinkedIn?

5) Как создать механизм рекомендаций соискателей?

6) Напишите программу для объединения длинной строки в группу существующих слов по какому-нибудь словарю. Если строка не сегментируется, программа должна выдать «False». Объясните, в чём сложность работы данной программы.

7) Объясните, как понять, что пользователь ищет работу, используя алгоритмы. (Учитывая, что некоторые просто интересуются)

8) На основе чего работает функция знакомых людей в системе?

9) Как вы найдёте второй по величине элемент в двоичном дереве поиска?

Вопросы с собеседования в Mu Sigma

1) Как вы видите разницу между обучением под контролем и самообразованием?

2) Как повысить ценность компании с помощью ваших проектов?

3) Что по вашему является отклонением от нормального и какие степени отклонения вы считаете недопустимыми?

4) Как люди шутят про вас, на сколько вы сами оцениваете эту шутку, от 1 до 10 баллов?

5) Представьте, что вы производите одежду. Как повысить привлекательность на рынке с малым бюджетом?

Вопросы с собеседования в Uber

1) Может ли Uber стать причиной пробок?

2) Как узнать примерную стоимость привлечения клиента и какие показатели для этого использовать?

3) Объясните работу основных алгоритмов Uber с помощью уравнений.

4) Как спрогнозировать, время поездки?

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

6) Как подобрать лучшее место водителю для ожидания пассажира?

7) Как повлияет на других появление ещё одного водителя в одном и том же городе.

8) Как определить, какая из версий ценообразования Uber работает эффективнее?

9) Как объяснить десятилетнему ребёнку работу функции JOIN в SQL?

Вопросы с собеседования в Netflix

1) Как создать и тестировать метрики, чтобы ранжировать ТВ-передачи и фильмы, для определённых пользователей Netflix?

2) Как понять, что один алгоритм лучше другого?

Вопросы с собеседования в Microsoft

1) Напишите функцию для проверки слова на палиндром.

2) Как с помощью вычислительных действий быстро вычислить обратную матрицу?

3) В урне лежит 6 шаров, один из них белый. Вы берёте наугад один шар и возвращаете обратно. Какова вероятность, что хотя бы раз вы возьмёте белый, если выполните эту операцию 100 раз?

Вопросы с собеседования в Apple

1) Как сегментировать несколько миллионов пользователей, осуществивших более 100 транзакций по интересам к 10000 возможных продуктов?

Вопросы с собеседования в Adobe

1) Проверьте, является ли число палиндромом, не преобразовывая его в строку.

2) Какова степень свободы для LASSO?

3) Вам даются 2 отсортированных массива чисел. Напишите программу, выбирающую по одному числу из каждого массива таким образом, что их сумма наиболее близка к некоторому числу x.

Вопросы с собеседования в American Express

1) Предположим, что у American Express есть 1 миллион владельцев банковской карты. Все эти клиенты могут ходить в 10 000 ресторанов и имеют 1000 купонов на скидку. Предложите метод, который позволит предложить эти купоны только тем, кто про них ещё не знает.

2) У вас есть набор данных для обучения пользователей, в том числе их демографические данные, данные о страницах в Facebook, которые им понравились, и результаты теста на психологию, основанные на их личности. Как вы спрогнозируете возраст, пол и другие неуказанные данные?

Вопросы с собеседования в Quora

1) Как использовать машинное обучение для повышения точности работы чего-либо?

2) Как преодолеть проблему перееобучения в прогнозных моделях?

3) Напишите алгоритм сортировки целых чисел из двух списков в один по порядку.

Вопросы с собеседования в Goldman Sachs

1) Подсчитайте общее количество деревьев в Соединенных Штатах.

2) Оцените, сколько квадратных километров пиццы съедается ежегодно в США каждый год.

3) Как вы докажете, что квадратный корень из 2 является иррациональным?

4) Какова вероятность получения комбинации HTT до получения комбинации TTH?

5) Есть 8 одинаковых мячей, и только один из мячей немного тяжелее остальных. Какое минимальное количество раз вам нужно использовать весы для поиска более тяжелого мяча?

Вопросы с собеседования в Walmart

1) Напишите код для реверса связанного списка.

2) На что способен алгоритм машинного обучения с линейной регрессией?

3) Кто-то ищет информацию о другом человеке. Как разработать алгоритм для определения того, кого ищут, уже тогда, когда введены только несколько символов?

4) Какие структуры данных доступны в Pandas в Python?

5) Приведите примеры правильного использования Hadoop MapReduce.

6) С какими типами данных вы работали?

7) Что вы понимаете под параметрическими и непараметрическими методами? Приведите примеры.

Вопросы с собеседования в IBM

1) Как обработать недостающие данные?

Вопросы с собеседования в Yammer

1) Как выйти из безвыходной ситуации?

2) Сколько в среднем выпадет на кубике? А если кинуть два раза?

3) Если вы можете бросить кубик только два раза и чем большее число выпадет, тем лучше, то при каком условии вы не станете бросать кубик второй раз?

4) Вы смотрите статистику загрузки фото и видите, что в ноябре произошёл резкий рост количества загрузок. С чем это может быть связано?

Вопросы с собеседования в Citi Bank

1) Какова вероятность, что на второй бросок кубика выпадет 6?

2) Что за типы ошибок существуют?

3) Есть две верёвки. Одна сгорает за 60 минут, вторая за 30. Как сжечь их за 45 минут?

Остальные компании

1) R не справляется с большими объёмами данных. Что может помочь в этом, если забыть про Hadoop?

2) Опишите работу алгоритма random forest.

3) Опишите метод k-средних.

4) В чём разница между логистической и линейной регрессией?

5) Как вы распараллеливаете алгоритмы машинного обучения?

6) Как собрать недоступные данные? На примере соцсетей.

7) Что вы понимаете под доверительным интервалом?

8) Как Facebook создаёт рекомендации товары в ленте?

9) Что такое ROC-кривая?

10) Как протестировать эффективность работы алгоритма по анализу кредитного риска и найти его недостатки?

11) Есть 10 банок, где лежат монеты по одному грамму. Среди них есть одна, где лежит монета 1.1 грамм. Как при помощи только одного измерения выяснить, где более тяжёлая монета?

12) Что бы вы сделали, если бы были дорожным знаком?

13) Если бы у вас была возможность получить массив данных по любому вопросу, что бы вы хотели увидеть и как бы использовали?

14) Как вы настроите random forest?

15) Расскажите, имея доступ к какой информации вы достигли успеха и как в этом помогли алгоритмы?

16) Знаете ли вы разницу между machine learning и deep learning?

17) Каковы различные параметры в ARIMA-моделях?

18) Зачем использовать random forest вместо классификатора?

19) Что такое N-грамма?

20) Какие проблемы связаны с переобучением и недообучением и как с ними справиться?

21) Как группировать на R, без использования пакетов?

22) Как построить систему кеширования с помощью Hashmap?

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

Надеемся, что при вам помогут эти вопросы при подготовке к трудоустройству. Ну а пока, можно посмотреть другие материалы по теме:

Источник: DeZyre