“Главный вызов — это кадровый голод” — панельная дискуссия о подборе команд по работе с данными. Data Science Week 2017

в 6:44, , рубрики: big data, data engineering, data mining, data science, data scientist, machine learning, python, Блог компании New Professions Lab, машинное обучение

Привет! Публикуем заключительную часть обзора Data Science Week 2017, прошедшем в Москве 12-14 сентября. Сегодня расскажем о панельной дискуссии по теме “Подбор команд по работе с данными и оценка их эффективности”. Модератором выступила Ольга Филатова, вице-президент по персоналу и образовательным проектам Mail.ru Group, а участниками были Виктор Кантор (Яндекс), Андрей Уваров (МегаФон), Павел Клеменков (Rambler&Co) и Александр Ерофеев (Сбербанк).

“Главный вызов — это кадровый голод” — панельная дискуссия о подборе команд по работе с данными. Data Science Week 2017 - 1

— Коллеги, расскажите о вашей компании и команде data scientist-ов в ней. Как команда организована и сколько людей в ней? О каких интересных проектах можете рассказать? С какими вызовами чаще всего сталкиваетесь?

Андрей (МегаФон): Я руководитель аналитических сервисов в МегаФоне, фактически я отвечаю за аналитику больших данных в техническом блоке компании. Аналитические компетенции в МегаФоне сейчас распределены по разным подразделениям, в нашем — сейчас порядка 18 человек, и мы активно усиливаемся. Если говорить об организации деятельности, то мы работаем в динамических командах: появляется новый проект, мы собираем под него команду с теми навыками, которые необходимы для его реализации. При этом не едиными data scientist-ами мы живы, в команду входят и data engineer-ы для пайплайнов, и разработчики для внедрения моделей в продакшн, тестировщики и бизнес-аналитики.

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

Среди последних наших проектов можно выделить кейс по определению расположения новых базовых станций. Не секрет, что от того, как мы будем развивать нашу сеть, напрямую зависит удовлетворенность пользователей, поэтому очень важно понять, в каких локациях нужно строить станции. С этим направлением связан целый спектр задач: предсказание роста трафика вплоть до каждой базовой станции, анализ клиентских предпочтений, локации и структуры трафика. В результате весь этот стрим задач, который мы называем Smart CAPEX, направлен на правильную приоритезацию наших инвестиций.

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

Главный вызов для нас — понять, как вовлечь заказчика в проект, чтобы он поделился своей предметной экспертизой в области. Зачастую data scientist-ы не обладают очень глубокими знаниями о сфере деятельности заказчика, поэтому помощь людей, которые в ней работают не первый год может быть очень полезна для понимания истинной природы данных. Также это всевозможные вызовы, связанные с HR: развитие, мотивация, найм, формирование команды: как правильно разделить зоны ответственности — один супермен или команда с инженером данных, тестировщиком и data scientist-ом?

Александр (Сбербанк): Я работаю в отделе управления корпоративными данными в Сбербанке. В отделе есть два направления: в первом работают data scientist-ы, а во втором — люди, отвечающие за данные, их доступность, инфраструктуру хранения и обработку.

Сейчас у нас в команде чуть больше 100 data scientist-ов, (в дальнейшем планируем увеличить их количество до 300), которые работают в 10 юнитах, стараясь делать каждый из них более data-driven. Исходя из этого, главный вызов для нас сейчас — кадровый голод. На рынке сейчас нет достаточного количества квалифицированных специалистов. Такая ситуация не только с data scientist-ами, но и со специалистами, работающими с инфраструктурой. Особенность Сбербанка в том, что у нас довольно сложный ландшафт с огромным количеством источников данных: сейчас это порядка 100 подключенных хранилищ. Прибавьте к этому работу с партнерами, которые делятся данными и получаются очень большие масштабы, для управления которыми нужны соответствующие кадры. Проблему усугубляет тот факт, что как только разработчики набирают достаточное количество опыта, им быстро приходят предложения от зарубежных компаний, и они уезжают за границу.

Продукты у нас разделены на две группы: первая связана непосредственно с данными, где результатом работы разработчика является стабильная витрина данных, применительно к этому у нас недавно появился термин DQA (Data Quality Agreement), где прописаны ассортимент данных, периодичность обновления и т.д. Во вторую группу входит аналитическая модель — результат работы разработчика и data scientist-a, которая и выводится в продакшн. Кстати, один из показателей эффективности работы data scientist-а у нас – количество моделей, которые дошли до стадии внедрения.

Также сейчас на уровне банка мы активно занимаемся управлением портфелем инициатив, чтобы инвестиции, которые мы вкладываем в юниты, были максимально возвратными. При этом с определенной периодичностью мы обновляем портфель, в каждом из юнитов есть план по внутреннему переходу: часто случается, что data engineer через какое-то время хочет стать data scientist-ом.

Одна из последних инициатив, которые мы запустили — это smart кредиты, подбор персонализированных предложений для малого бизнеса, позволяющий существенно сократить процесс принятия решения по кредиту на основе детальной аналитики по клиенту. Здесь возникает такая особенность, что у нас, в отличии от интернет и телеком компаний, значительная доля данных создается вручную: при обработке кредитных заявок, при заключении договоров на выдачу дебетовых карт и т.д. Конечно, когда такие процессы есть, вопрос качества данных выходит на первый план. Отмечу, что традиционно всю ответственность за качество данных у нас несли люди на стороне хранилища данных, но сейчас мы эту ситуацию выравниваем, в каждом юните появляются свои DQA.

Павел (Rambler&Co): Я руковожу отделом машинного обучения в одном из крупнейших медийных холдингов страны – Rambler&Co. Большая часть экспертизы по анализу данных сконцентрирована у нас и разделена на три направления. Первое – это все, что связано с рекламой, второе – рекомендательные системы, есть платформа Price.ru (аналог Яндекс.Маркет). И третье направление – это Data Science на аутсорс, мы работаем с внешними компаниями, решаем кейсы с учетом наших знаний, данных и опыта. К примеру, мы запустили товарные рекомендации на сайте компании Ecco, известном магазине обуви, и получили достаточно крутые результаты: неожиданно, но средний чек увеличился в 2 раза.

Также занимаемся и компьютерным зрением. Одним из наших клиентов была компания КБ STRELKA, которая занимается различными городскими проектами. У них есть направление – городская антропология, изучающая, как люди ведут себя в городе, в каких местах бывают, и какие точки притяжения для них существуют. В этом проекте мы использовали фотографии посетителей различных мест в городе в социальных сетях, чтобы составить их «портрет», понять, что это за люди (конечно, данные полностью анонимны, мы видим только лица этих людей).

Наша команда состоит из 10 data scientist-ов, 2 инженеров инфраструктуры, и еще есть отдел администраторов. Data scientist-ы у нас работают end-to-end, решают бизнес-задачи до реализации продакшн кода, стараемся все делать по Scrum.

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

“Главный вызов — это кадровый голод” — панельная дискуссия о подборе команд по работе с данными. Data Science Week 2017 - 2

Виктор Кантор (Яндекс): В мае этого года я пришел в Яндекс.Такси, чтобы выстроить подразделение, занимающееся машинным обучением. Теперь у нас есть несколько десятков проектов. Сейчас выделилось несколько основных направлений, среди которых, например, определение точного времени ожидания, удобных точек посадки/высадки. Также это анализ поведения водителей и пассажиров здесь и сейчас, как мы можем на них воздействовать, повышать активность, предлагая им какие-то выгодные штуки, что в случае водителя он больше вывезет, а в случае клиента – больше покатается.

В команде у нас 13 человек, все data scientist-ы, но некоторые с особыми навыками, кто-то лучше с разработкой, есть люди с богатым опытом участия в соревнованиях, они могут качество модели сделать как можно более высоким. Таким образом, всегда есть люди, которые определенные задачи могут решить быстрее и лучше, и мы это активно используем.

По-моему опыту, часто вызовом является удачная постановка задач, будь то внутренний или внешний заказчик. Я до этого работал в Yandex Data Factory, и там часто случалось, что в процессе несколько раз переформулировали постановку задачи. Однако это не из-за того, что заказчики такие плохие, а потому что нужно приложить много усилий, чтобы найти подходящую постановку. Сейчас мы стараемся выстраивать процессы так, чтобы появлялись какие-то понятные, измеримые этапы с измеримым результатом и такой постановкой, которую не нужно прямо на ходу очень часто менять.

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

Виктор: мы обычно проверяем следующие вещи: как дела с машинным обучением — теория, практика. По теории мы должны удостовериться, что человек понимает, что именно происходит, мог объяснить то или иное поведение, знать, какими оптимизационными методами решается, ведь иногда возникает потребность использовать алгоритмы нетривиальным образом. Насчет практики мы спрашиваем про те задачи, которые человек делал. Если опыта еще нет, то предлагаем описать, как бы он делал задачу. При этом, конечно, задача не в том виде, как она приходит от заказчика, а в довольно общем плане, в духе: «Нужно разработать такой-то алгоритм рекомендации в такой ситуации, опишите, как вы будете измерять качество, какие данные использовать и на основе каких признаков строить модель». Часто возникает проблема, что кандидаты пускаются рассуждать не о признаках, а о модели, которую он будет обучать, не подумав о том, а что вообще он будет предсказывать.

— Отдаете ли вы предпочтение олимпиадникам или ребятам, которые прошли различные хакатоны, или это непринципиально?

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

Александр: HR-ом я не занимаюсь, но был случай, когда потенциальным data scientist-ам мы давали тестирование на знание математики и несколько кейсов по решению прикладных задач. По результатам тестирования сразу же отсеялась приличная часть кандидатов.

На самом деле каждый блок набирает людей самостоятельно. Также есть подразделение, отвечающее за развитие компетенций, развиваем партнерство с вузами, стараемся на ранних стадиях людей забирать. По максимуму стараемся вкладывать и во внутренний ресурс, повышая навыки сотрудников. Сейчас у нас блоки работают в формате сообществ, и одна из их задач – перекрестное развитие компетенций. Например, есть блок рисков и блок розницы, где Data Science имеет очень высокий уровень, они в основном и помогают улучшать анализ данных в других блоках.

— Что не хватает в обучении? что посоветуете организациям и самим студентам?

Павел: Мне кажется, что, к сожалению, не все люди умеют учиться. Даже если ты закончил онлайн-специализацию, часто выхлоп получается довольно поверхностный. Люди хватают много всяких слов и имеют неглубокие знания. Особенно это видно, когда они начинают доводить вещи до продакшна, где часто возникает необходимость понимания внутреннего принципа работы. Кажется, что со способностью учиться ничего не поделаешь, но этим вполне можно заниматься самостоятельно: на Coursera есть отличный «Learning How to Learn», есть отличный метод Фейнмана.

Вторая беда, лично по моему опыту – очень плохое программирование. Здесь дело даже не в том, что человек не может реализовать какой-то более-менее сложный алгоритм, а это неумение программировать в принципе. Если человек, чтобы прочитать файл в Python, импортирует Pandas, то это странно. Однако мы начинаем с этим бороться, иначе мы вообще никого не сможем нанять. Таким образом, программирование – это очень важная часть работы в Data Science.

Андрей: Продолжу тему, которую поднял Павел. Data scientist-ы плохо программируют, от этого никуда не деться. В то же время есть высококлассные разработчики, которые может и не знают столько алгоритмов и не пробовали их обучать руками. Поэтому самое важное (и первый лайфхак) – самоопределиться, отрасль и направление очень богаты и разнообразны, найти свое место в ней может каждый.

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

Дальше, если раскрыть внутреннюю кухню МегаФона, то мы идем от людей, у нас нет идеально четкого описания вакансий. Оно, конечно, есть, но мы его не придерживаемся, человек присылает нам резюме, и мы смотрим, а может ли он нам быть полезен, если может, то в каких проектах, каком подразделении и т.д. Если нашли проект под его компетенции, получается такая история win-win.

Вопросы

— Сейчас уже есть огромное количество онлайн и офлайн курсов по анализу данных. Как вы считаете, обладая определенным уровнем базовой подготовки, какой оптимальный путь дальше: дальнейшее самообразование и начало карьеры через несколько месяцев, либо развитие за счет практики и работы, решая прикладные задачи?

Павел: На мой взгляд, когда у тебя уже есть определенный уровень, круто заниматься практикой и так или иначе устраиваться на работу в конкретную компанию, потому что область действительно огромная, и при желании можно всю жизнь учиться. Кроме того, если тебе хочется дальше учиться, то лучше подойдет академическая карьера, иначе получается образование ради образования. Более того, люди часто себя недооценивают и думают: “В Яндексе работают такие крутые ребята, очевидно, что я до них не дотягиваю”. А чаще всего оказывается, что ты лучше, чем среднестатистический кандидат.

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

Часто еще бывает, что о существовании чего-то просто не знаешь, потому что никогда это не изучал, поэтому образование не нужно прекращать, постоянно нужно интересоваться, что вообще есть в области, хотя бы на уровне понимания, как оно работает.

Посмотреть часовую видеозапись панельной дискуссии можно на странице New Professions Lab в Facebook.

На этом, с обзором Data Science Week 2017 мы заканчиваем, будем рады видеть вас в начале марта 2018 года там же, в Deworkacy, на Data Science Weekend 2018.

Партнером мероприятия выступила компания МегаФон, а инфо-партнером — компания Pressfeed.

Pressfeed — Способ бесплатно получать публикации о своей компании. Сервис подписки на запросы журналистов для представителей бизнеса и PR-специалистов. Журналист оставляет запрос, вы отвечаете. Регистрируйтесь. Удачной работы.

Автор: Артем Пичугин

Источник

Поделиться

* - обязательные к заполнению поля