Пять​ ​главных​ ​навыков​ ​хорошего​ ​data​ ​scientist,​ ​которым​ ​не​ ​учат​ ​в​ ​книгах

О том, какие навыки на самом деле нужны аналитикам данных и специалистам по машинному обучению, — взгляд основателя компаний InsideDNA и Skinomica, ранее — ведущего специалиста Booking.com Анны Костиковой.

Анна Костикова
Анна Костикова

Вместо введения или про то, как я стала data scientist

Сегодня data scientist (DS) — одна из самых востребованных профессий на рынке труда. Высокие зарплаты, большой интерес со стороны работодателей, шквал вакансий. Но примерно пять лет назад всё было иначе: когда после защиты кандидатской в Швейцарии и нескольких лет работы в Швейцарском институте биоинформатики я искала работу, на территории Швейцарии нашлась всего одна вакансия DS — в Цюрихском офисе Google. Для сравнения, если сегодня вбить "data scientist" на Glassdoor (Швейцария) — выпадет более трёхсот вакансий.

В Цюрихский офис Google я так и не попала — на тот момент они решили не формировать новую команду. Зато несколько лет отработала ведущим специалистом по DS и ML в Booking.com.

За три года работы в Booking, наша команда DS и ML выросла с 25 человек и четырёх небольших команд до почти 200 человек и примерно пяти отделов. Мы реализовали ряд успешных и, разумеется, в разы больше неуспешных проектов, сформировали отличный технологический стек по DS и ML, и в целом закрепили за Booking.com статус одной из наиболее data-driven компаний в отрасли.

Но главное, пожалуй, вдоль и поперёк изучили то, каких людей стоит и не стоит нанимать в компанию на роль DS.

За время работы я провела около 150 интервью (телефонных и f2f) и ниже расскажу о том, на основании чего в конечном счёте принималось решение о приёме кандидата в команду как в Booking.com, так и в компанию, где я работаю теперь — InsideDNA.

Есть пять основных умений DS-специалиста, при наличии которых он будет приносить реальную пользу компании. Профессионалы с такими способностями встречаются редко, но это не значит, что их не стоит искать и пытаться привлекать в команду. Сразу оговорюсь, речь будет о требованиях к специалистам в относительно большую компанию и не в отдел научных разработок и исследований (R&D), а в операционный бизнес.

1. Умение разобраться в бизнес-задаче и оценить её потенциальную пользу для бизнеса

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

Большая часть сотрудников будет воспринимать DS специалиста либо как улучшенную версию пивот-таблицы в Excel, либо как магический прибор, обязанный в течение суток выдать ответ на любой поставленный вопрос.

Именно DS-специалисту приходится оценивать осмысленность идеи, реалистичность её выполнения и потенциальную пользу для компании. Самый простой тест «на вшивость», который должен уметь делать DS, это тест «чтобы что». Он состоит из нескольких вопросов:

  • Представьте, что мы сделали этот анализ или разработали эту модель — что мы будем делать с ней дальше?
  • Как мы сможем оценить её вклад в бизнес компании?
  • Как мы внедрим её в производство?
  • Как мы оценим её пользу по сравнению с текущим решением?

Если начальник или куратор проекта не может чётко ответить на эти вопросы — его надо отправить подумать или сесть подумать вместе с ним.

2. Умение перевести бизнес-задачу на язык технического решения

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

Представьте, например, что DS нужно оптимизировать траты на рекламу на аффилированных сайтах. Вариантов решения такой задачи примерно несколько десятков. Нужно придумать и выбрать самый быстрый, легко реализуемый, недорогой, тестируемый и объективный метод.

И в Booking.com, и в моей текущей компании на собеседовании мы всегда даём реальный кейс и просим человека рассказать, как он будет подходить к его решению. Если вдруг вместо обсуждения «смысла» задачи, он сходу начинает применять стохастическую рекуррентную нейронную сеть — почти без сожаления можно прекращать разговор. Толка от такого специалиста будет очень немного, а вот недопонимание между ним и другими членами команды будет расти в геометрической прогрессии.

3. Умение быстро довести решение до состояния минимального работоспособного продукта (MVP)

Рынок желающих стать DS в Европе и США наводнён выходцами из академии — post PhD или Postdoc. Печальным следствием этого является склонность к перфекционизму и попытка потратить много месяцев на получение «идеального продукта» или ещё хуже — попытка улучшить уже существующий алгоритм. Возможно, это не очень плохо в научных кругах, но для бизнеса это реальная головная боль.

95% бизнес задач не требует разработки новых алгоритмов и месяцев работы.

Условно говоря, работающая простенькая логистическая регрессия или базовый алгоритм ранжирования принесёт огромную пользу, а попытка написать с нуля код для cвёрточной нейронной сети — месяцы времени, нулевую пользу и справедливое разочарование бизнеса в пользе аналитических подходов.

4. Умение транслировать MVP в производство (работать с разработчиками)

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

Следствие — DS должен быть способен коммуницировать свои мысли людям из не DS-среды (а также понимать, что ему говорят в ответ).

Терминологически всё это может быть очень непросто, а иногда, прямо скажем, мучительно. К тому же, есть ещё одна частая и не очень понятная новичкам проблема — понятие масштабируемости решения у DS и разработчиков может сильно разниться. Условно говоря, одна минута на обработку запроса в мире DS — может быть и неплохо, но если нужно обслужить сотни тысяч запросов в минуту в реальном времени — это никуда не годится.

В идеале DS должен иметь хотя бы минимальное представление о возможных узких местах при выводе в производство его изысканий.

5. Умение объективно оценить пользу от MVP и убедиться, что это решение на самом деле используется в компании

Это два разных навыка, но для простоты будем считать это одной задачей. Как оценить пользу решения? Если на сайте есть хороший трафик — то A/B-тестирование и ещё раз тестирование, если трафика нет — можно идти прямиком к основателю компании и объяснять, что большую часть бюджета пока нужно тратить на маркетинг и продажи, а не на разработку моделей, пользу от которых даже невозможно оценить.

Надо также учитывать, что на внедрение и «фиксацию» модели в бизнес-процессах, а также убеждение всех окружающих в полезности подхода по сравнению с business as usual у вас уйдёт 95% времени. Не на разработку, не на выпуск в производство, а на то, чтобы ваше решение действительно стало частью бизнеса.

Заключение или почему хороший DS — это всегда непросто

Эти пять навыков можно обобщить одним словом — ownership. На моей практике только такие DS-специалисты действительно полезны компании.

А как же написание фломастерами на доске формул оптимизации стохастического градиентного спуска? Где же упоминание технологий Hadoop, Spark или H2O? Где, в конце-концов, Python, R или Scala, а также scikit-learn, numpy, ggplot, спросите вы. Ведь именно про это все книги о том, как стать DS-специалистом.

Любую из этих технологий можно вдоль и поперёк изучить примерно за пять дней интенсивного тренинга (ну, по крайней мере при наличии хорошего базового технического образования и знания статистики), а вот сделать так, чтобы ваши аналитические эксперименты не напоминали сферического коня в вакууме, а были объективными, тестируемыми и приносили компании прибыль — этому нужно учиться каждый день на протяжении многих лет.

Поэтому самый главный признак хорошего DS — это способность мыслить как владелец бизнеса.

И в заключении о том, что же на самом деле делает data scientist.

Пять​ ​главных​ ​навыков​ ​хорошего​ ​data​ ​scientist,​ ​которым​ ​не​ ​учат​ ​в​ ​книгах

Анна Костикова — основатель InsideDNA — компании, которая помогает биотех и фармкомпаниям разрабатывать лекарства против рака с помощью анализа ДНК и машинного обучения. Основатель проекта Skinomica — здоровая кожа на основе данных микробиоты.

5050
49 комментариев

На фоне статей об Аязе, БМ и им подобным, посты такой проблематики выглядят как сигнал из параллельной вселенной. И естественно комментариев не густо, так как чтобы дискутировать в данной проблематике, необходимо обладать соответствующим понятийным бэкграундом. Очень расстраивает сей факт. То ли на vc публика не соответствующего уровня, то ли......короче грустно. Причем стиль изложения не сказал бы что прямо специальный, скорее с желанием объяснить даже тем кто не в теме суть вопроса. В общем Анна молодец, что тут сказать))) А я старый никчемный обезьян)) Прочел с удовольствием.

26

спасибо! ну я думаю, главное озвучивать такие темы - и народ подтянется и будет потихоньку обсуждать.
А статью "проверяла" на брате-дизайнере - сказал, что что-то понял:) но надо, конечно, еще работать над понятностью, чтобы родителям можно было послать;)

5

Есть ли шанс, что те, о ком вы говорите в негативном ключе, как раз занимаются тем, о чем сказала Анна?
В статье очень хорошая и емкая фраза: "...если трафика нет — можно идти прямиком к основателю компании и объяснять, что большую часть бюджета пока нужно тратить на маркетинг и продажи".

И после того, как наберется критическая масса компаний, у которых есть трафик - станет понятно, что без DS никуда.

Я бы свёл к двум пунктам:

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

2. Умение делать нормально (хорошо = долго и уже никому не нужно; плохо = и так никому не нужно)

12

100% отличное саммари!

В двух словах:
1. Задроство мало где приветствуется
2. Собственник хочет оунершип от наёмного сотрудника за наемную зп - как это мило, но увы - неоригинально.

8

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

3