Как стать востребованным?

Data Science – область очень перспективная. За прошлый год мы в ЕРАМ получили 210 резюме от людей, которые хотят заниматься Data Science. Из них на техническое интервью мы пригласили 43 человека, а предложили работу семи. Если спрос большой, почему так?
Мы поговорили с техническими интервьюерами и выяснили: проблема многих кандидатов в том, что они плохо представляют, чем занимаются аналитики данных. Поэтому их знания и навыки не всегда релевантны для работы. Кто-то считает, что опыта работы с Big Data достаточно, чтобы работать в Data Science, кто-то уверен, что хватит просмотра нескольких курсов по машинному обучению, некоторые думают, что хорошо разбираться в алгоритмах необязательно.
Дмитрий Никитко и Михаил Камалов – аналитики данных и технические интервьюеры из ЕРАМ – рассказали, чего ждут на собеседованиях от кандидатов, какие вопросы задают, что ценится в резюме и как подготовиться к собеседованию.

В разных компаниях понимание того, что делают аналитики данных, разное. Кто-то понимает это понятие шире, кто-то – уже. Вот что делают такие специалисты в ЕРАМ:

  • Занимаются предобработкой данных
  • Ищут закономерности в данных и проверяют гипотезы
  • Создают предсказательные модели, используя алгоритмы машинного обучения
  • Оценивают качество полученных моделей
  • Визуализируют данные
  • Помогают интегрировать решение

Задач, с которыми работают аналитики данных, много. Например, ранжирование можно применять не только к поисковой выдаче, но и к созданию рекомендательных систем, поиску похожих картинок, музыки и даже 3D-модели лица. В каждом их этих случаев нужно найти релевантный ответ по запросу. Но типы данных различны, и нужно знать, какую стратегию применить в том или ином случае.
В ЕРАМ сделали тест, который рекрутеры присылают кандидатам до собеседования. Часть, где нужно выбрать верный вариант, проверяется автоматически. Часть, в которой содержатся развернутые ответы на вопросы, читают технические интервьюеры.

Что нужно уметь

Если коротко, аналитик данных – это человек, который умеет программировать (в большинстве случаев на Python), разбирается в статистике, математике, алгоритмах и владеет английским.
Английский нужен не только для того, чтобы читать специализированную литературу и разбираться с документацией. Многие аналитики напрямую общаются с иностранными заказчиками. Кстати, здесь пригодится еще и умение переводить с языка дата-сайентиста на тот, что понятен бизнесу.

Обязательно ли профильное образование?

Важно хорошо знать математику, и высшее техническое образование – большой плюс. Большинство дата-сайентистов в ЕРАМ по образованию математики, программисты или физики. Но это не жесткое требование – у нас есть сотрудник-лингвист, а недавно мы взяли еще и социолога, который после окончания университета обрабатывал результаты социологических исследований, создавал модели, занимался прогнозированием и анализом социальных графов. Такой опыт – релевантный для работы в Data Science, поэтому кандидат был нам интересен.
В общем, нельзя сказать, что человек с техническим образованием нам подойдет, а с гуманитарным – нет. Все зависит от навыков и опыта. Например, компьютерный лингвист, который научился писать код, – более интересный кандидат, чем Big Data-инженер, работавший с MapReduce и Hadoop, но не разбирающийся в алгоритмах, или чем обладатель научной степени по статистике без опыта работы.

Что ценится в резюме

Больше всего ценится опыт работы. Если вы уже работали в Data Science, подробно напишите, что делали, какие алгоритмы использовали и какие навыки у вас есть.
Если у вас нет опыта работы, большим плюсом в резюме станет:

  • Краткий рассказ о пет-проектах. Важно, чтобы кандидат не только знал теорию, но и успел попрактиковаться.
  • Участие в хакатонах. Это говорит как минимум о том, что вы работали в команде и (скорее всего) создали работающее решение в ограниченный срок. Участие в хакатонах хорошо еще и тем, что на них вас могут заметить работодатели. Тогда отправлять резюме, возможно, вообще не потребуется.
  • Участие в соревнованиях по машинному обучению (Kaggle, DrivenData). Если вы участвовали или даже победили в соревновании Instacart на Kaggle, где нужно было создать рекомендательную систему, вы сможете решить бизнес-задачу с похожими целями быстрее. Но, по нашему опыту, победа в таких соревнованиях не всегда значит, что кандидат знает, например, как работают алгоритмы, которые он использовал.

Что спрашивают на собеседовании

Цель собеседования по Data Science, как и везде, – понять, насколько хорошо человек разбирается в своей предметной области. Сначала интервьюер задает вопросы по основам машинного обучения и статистики. По ответам можно понять глубину и ширину знаний кандидата по базовым вопросам. После этого задают специфические вопросы, например, по обработке естественного языка, работе с временными рядами или рекомендательными системами. Если кандидат говорит, что умеет работать с графами, изображениями или другими данными, его спросят и об этом.
Универсальные солдаты встречаются крайне редко, и вопросы на собеседовании зависят от опыта кандидатов. Обычно спрашивают о прошлых проектах, о том, какие технологии они использовали и почему. После этого могут попросить порассуждать. И конечно зададут несколько теоретических вопросов.
Вот какие вопросы могут задать на собеседовании:
• Нейросети
— Какие методы предотвращения переобучения (регуляризации) для нейронных сетей вы знаете? Как они работают? Куда вставлять batch normalization?
— Чем отличается нейронная сеть с одним выходом и сигмоидальной функции активации и такая же нейронная сеть, но с двумя выходами и softmax?
— Представим, что у нас есть многослойная полносвязанная сеть с нелинейной функцией активации. Что будет с нейронной сетью, если мы уберём нелинейность?
— Для чего используют global pooling?
• Распознавание изображений
— Как оценивают качество в задачах object detection?
— Какие архитектуры нейронных сетей для семантической сегментации вы знаете?
— Как и зачем использовать transfer learning?
• Временные ряды
— Как правильно тестировать качество моделей в работе с временными рядами?
— Что мы должны делать с сезонностью в данных?
— Как искать аномалии во временных рядах?
• Обработка естественного языка
— Что лежит в основе моделирования тематик? Как работает этот алгоритм? Как вы выберете число тематик, которые будут обучаться этим алгоритмом?
— У вас есть текст отзывов и рейтинг, пользователи используют 5-балльную шкалу. Как бы вы построили систему, которая сможет предсказывать оценку по тексту отзыва? Как оценивать качество этой системы?
В ходе рассуждений и решения задач интервьюеры задают много уточняющих вопросов и пытаются поместить кандидата в «боевые условия». Наример, кандидат предлагает решение, а интервьюер добавляет новые условия к задаче.
«Что вы будете делать, если дата-сет несбалансированный?»
«Как вы будете решать проблему, если есть пропуски в данных?»
«Как поступите, если будут выбросы в данных?»
Помимо этого, могут спросить, как кандидат организует свое рабочее время, как логирует эксперименты, следит ли за их воспроизводимостью, как обрабатывает большие объемы данным и строит пайплайны обработки данных.

Типичные ошибки на собеседованиях

• Кандидат не понимает, как работают алгоритмы, которые он использовал
Интервьюеры всегда спрашивают об алгоритмах, которые использовали кандидаты: какие параметры в них есть, как их настроить. Если ответа нет, или кандидат отвечает, что настроил алгоритм «по наитию» – это плохо. Если вы берете алгоритм, стоит потратить время, чтобы понять, как его настроить.
• Кандидат не понимает, как применять свои знания в «боевых условиях»
Бывает так: кандидат хорошо знает теорию, но не представляет, как справляться с проблемами на проектах. Важно не только уметь находить инсайты в данных, делать фича-инжинеринг, строить модели, но и понимать, как поместить все это в продакшен или сделать решение, которое будет работать быстрее.
• Кандидат не может рассуждать самостоятельно
Если человек слишком часто отвечает на вопрос: «Я погуглю» – это нехороший знак. Конечно, дата-сайентисты гуглят, но уметь рассуждать самостоятельно тоже важно: иногда встречаются проблемы, для которых нет готового решения, и нужно придумывать что-то свое.
• Кандидат выдумывает, как работает система
Иногда люди не могут ответить на вопрос, как работает та или иная система, и начинают придумывать, надеясь попасть пальцем в небо. Так делать не рекомендуется: интервьюер это заметит. Лучше честно сказать: «Я не знаю», тогда останется больше времени на другие вопросы. Вероятность, что вас спросят о том, в чем разбираетесь, вырастет.

Список литературы

Всем, кто хочет заниматься Data Science, советуем посмотреть/прочитать:
• Курс «Программирование на Python» на Stepik
• Курс «Введение в машинное обучение» на Coursera
• Курс «Машинное обучение и анализ данных» на Coursera
• Курс «Машинное обучение» Константина Воронцова
• Курсы по deep learning на Coursera
• Курс «Нейронные сети» на Stepik

Одним из ощущений состояния счастья для человека является быть востребованным. Согласитесь, человек очень часто жалуется, когда его «рвут на части», но самым невыносимым является состояние «не у дел». Больнее всего осознавать собственную ненужность миру, близким людям, никому.

Что же определяет востребованность человека?

Его уникальность.

Конечно, каждый человек уникален от рождения. НО! Многим из нас удалось развить свою уникальность, таланты, способности? Или все-таки, большинство представляет из себя посредственность?

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

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

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

Ждать, что кривая жизненного пути вдруг однажды выведет на тропу с названием «твое предназначение» наивно. Нужно просто выбрать, во что вы готовы вкладывать свои силы и талант, и начинать делать. Причем, не просто делать, а делать на 120% своего потенциала. Двигая собственную планку чуть выше осознаваемого предела своих возможностей. Это единственный способ избежать посредственности. Работает также как в спорте – если вы подтягиваетесь на перекладине 5 раз, то всегда нужно стремиться сделать шестой на пределе собственных возможностей. Только через преодоление происходит развитие. Примите решение делать на 120% своего потенциала, и это позволит вам приобретать уникальные способности. А дальше по известной схеме:

«Способности формируют характер.

Изменяясь во времени, способности «притягивают» новую реальность, определяемую новыми людьми и событиями, появляющимися в вашей жизни.
Вы становитесь классным мастером, профессионалом в какой-то области и осознаете это, в подтверждение вашим взглядам, мнения о вас окружающих, создают новые убеждения, закрепляя реальность. Вас считают лучшим – вы становитесь лучшим.»

Принимая решение делать что-либо с максимальной отдачей, мы делаем себе прививку от лени, повышаем внутренние ресурсы саморазвития. Осознанная деятельность по принципу «120 и выше» постепенно приводит на новую ступень развития – быть занятым.
Когда человек постоянно занят, он счастлив. Ему просто некогда развращать свое сознание пустыми мечтаниями и фантазиями, возвращаться мыслями в прошлое. Человек максимально проживает в настоящем моменте времени, в том самом «здесь и сейчас», постепенно поднимаясь на следующую ступень – быть востребованным.

Елена Ветштейн.