Есть 5 основных умений data-science-специалиста, при наличии которых он будет приносить реальную пользу компании. Профессионалы с такими способностями встречаются редко, но это не значит, что их не стоит искать и пытаться привлекать в команду. Сразу оговорюсь, речь будет о требованиях к специалистам в относительно большую компанию и не в отдел научных разработок и исследований (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 — это способность мыслить как владелец бизнеса.