Стоит ли смотреть в сторону Data science?
Очень много людей с самым разным бэкграундом, и не всегда даже техническим, в последнее время пытаются перейти в data science. И такой ажиотажный интерес - проблема для всех, кто рассматривает переквалификацию в эту сферу. Потому что рынок труда может оказаться наводнён соискателям без опыта.
С точки зрения потенциального работодателя: вы скорее возьмёте выпускника технического вуза, или человека за 40, без профильного опыта, решившего изменить свою жизнь? Ведь вузы тоже ведут активную подготовку профильных специалистов (пусть и не всегда высокого уровня). На рынке явный недостаток специалистов с профильным опытом. Но среди людей с непрофильным опытом - вероятно, больше шансов найти работу у выпускников с профильным образованием.
Написать этот пост меня натолкнуло то, что полгода назад я начал писать цикл статей о самообучении и переквалификации в data sceince. В итоге, за 5 месяцев мне написало больше сотни людей с разными вопросами по такой переквалификации. И, вероятно, многие недооценивают объем знаний, который необходимо получить для этого. В этом, наверное, виноваты и заголовки моих постов "с нуля до senior data scientist за 2 года". Как мне подсказали в комментариях к тому посту - мой начальный уровень был отнюдь не нулевой (был топовым разработчиком 1С).
Почему в data science сложно попасть
Это очень много учебы и практики
Идеальный data scientist - специалист максимально высокой квалификации, знающий, одновременно:
всё что должны знать "простые аналитики" (SQL+визуализация данных)
хороший Python программист
с неплохим владением английским (подавляющее большинство инструментов имеют документацию только на английском языке; многие книги и курсы не переведены, или переводятся с большой задержкой)
с отличным знанием хотя бы основ теории вероятностей (в идеале - значительно глубже + линал, мат.анализ)
хорошие коммуникативные навыки и понимание бизнеса (невозможно эффективно обрабатывать данные из предметной области, если вы её не понимаете)
По большому счету, это несколько лет профильного (само)образования + опыт работы.
Это дорого
Даже с большим опытом работы в ИТ я потратил 8 месяцев, не работая и проедая все свои накопления, только на учебу, оставаясь без работы. Мой уровень ЗП в первый год после того как я нашёл работу, был ниже, чем до этого. Только спустя 2 года я вышел на тот же уровень дохода. И это всё было достаточно страшновато, при том что у меня были своя квартира, большая финансовая подушка, и отсутствие финансово зависимых родственников. Большая часть людей, желающих поменять свою жизнь, не могут себе позволить такую траекторию переобучения, по её финансовым ограничениям.
Аналитика - сестра Data science
Когда говорят о дата сайенс обычно имеют в виду высшую квалификацию человека, способного работать аналитиком данных. Но квалификации промежуточных уровней тоже ценны.
Отличие аналитика: нет нужды хорошо знать статистику, нет нужны заниматься машинным обучением.
Статистика нужна тогда, когда ценность небольшого улучшения так огромна, что важно научиться различать небольшие отличия в эффективности, разделяя реальные различия, от случайных колебания.
Машинное обучение нужно тогда, когда какой-то процесс принятия решения, основанных на данных, нужно автоматизировать. По сути, это значит подменить работу аналитика, в решении отдельной типовой задачи. Обычно это требует намного больше времени, чем одноразовый анализ. За то же время аналитик может решить множество разных задач. Но когда какой-то тип анализа нужно проводить постоянно или для тысяч объектов (клиентов, товаров) - целесообразно это делать автоматически.
То есть аналитик нужен тогда, когда не нужно различать колебания эффективности, измеряемые в процентах, и когда не нужно анализ делать полностью автоматическим. Требуется меньше точность/автоматизированность. Ценны: скорость проведения анализа, его правильность, умение понятно и убедительно объяснить свои результаты. При этом, ценность аналитика может быть очень высока, т.к. подобные разовые анализы данных могут использоваться для принятия различных стратегических решений.
Суть решаемых задач аналитка: разобраться в данных, понять их и найти интересные закономерности, представить результаты в удобном и понятном для коллег виде (обычно, графики и презентации).
Ключевой набор навыков для подобной работы: это прирожденные "аналитические способности" + знания базовых инструментов (SQL+Excel) + инструменты визуализации данных (Tableau, PowerBI).
Можно с этим набором знаний + знания специфичные для определенных областей, уже найти большое число вакансий, с хорошими зарплатами и интересными задачами.
Знаний SQL + инструмента визуализации достаточно чтобы работать на позиции специалиста по отчетности, создающего необходимые отчеты и графики, для принятия каждодневных решений. Такая работа, обычно, требует большей усидчивости и чуть меньше креативности.
На позиции "аналитика" нужно будет создавать точно такие же отчеты. Но, чаще, задачей аналитика будет самому в чём-то разобраться и самому решить какими графиками эту информацию представить. Эта работа более творческая, требующая большей самоотдачи. По уровню зарплат оба типа позиций сопоставими. Но с позиций аналитика талантливные специалисты чаще могут вырасти в менеджеров и отвественных за какие-то большие объемы задач. Надо помнить, что данное деление не всегда видно из названия позиций, т.к. "аналатиком" могут назвать и человека, не занимающегося самостоятельным анализом данных, и толького готовящим их для других людей (в виде отчетов и графиков).
Кстати, позиции специалистов, занимающихся статистическим анализом, тоже называются "аналитик", и есть еще совсем другой тип позиций, которые называют "бизнес-аналитики". Поэтому, надо по описанию вакансии "аналитика" разбираться что под ней имеется в виду.
Рекомендуемый набор знаний для аналитика:
SQL + Excel
Tableau / PowerBI
Когортный анализ (принципы)
Понимать парадокс симпсона, чтобы не делать ошибок, к которым он приводит
Нужно знать основы теории вероятностей:
вероятности зависимых и независимых событий, условные вероятности
разные статистики: среднее, медиана, мода, стандартное отклонение.
знать что такое АВ-тесты: понимать принципы, калькуляторы есть онлайн
знать основы regexp. Например, веб-аналитике он используется в инструментах типа google analytics
Аналитики нужны везде. Ниже типы аналитиков, востребованные в изначально "цифровых" бизнесах (связанных с интернет продуктами и услугами)
Маркетинговая/веб аналитика
Анализ и визуализация даных по продажам - огромная сфера. Большая часть подобных вакансий, с интересными и более творческими задачами - в онлайн компаниях.
Знания специфические для веб-маркетинга (помимо обще-аналитических):
Понимание принципов работы контекстной рекламы (основные метрики и схемы оплаты).
Знание как работают UTM метки.
Понимание основных принципов юнит-экономики.
Желательно знание основ HTML
Популярные инструменты: Google Analytics, Яндекс.Метрика (эти инструменты можно учить уже выйдя на первую работу)
Продуктовая аналитика
Это близко к маркетинговой аналитике. Пример задачи: понять паттерны по которым пользователи взаимодействуют с каким-то он-лайн продуктом (например, приложением интернет-банка).
По сути, тут могут быть достаточны только базовые знания, стандартные для любых аналитиков.
Data engineer - брат для Data scientist
Огромная часть задач в анализе данных, особенно в более продвинутом (статистический анализ, машинное обучение) требует хорошо организованных данных.
Задачи по организации данных занимают более половины всех усилий по работе с данными. Часть данных задач традиционная и решается специалистами по базам данных. Другая часть требует подготовки данных для обеспечения большего удобства и скорости анализа данных. Данными задачами занимаются дата инжененеры. Т.к. часто данная часть задач не решается ими полностью - квалифицированный дата сайентист должен уметь решать подобные задачи.
Но, потенциально, дата инженер, это не урезанный дата сайентист. К инженерам предъявляется больше требований по полной автоматизации процесса, по обеспечению высокого качества данных (без пропадания их кусков), высокой скорости их подготовки и доступности, настройке систем, способных обрабатывать данные о миллионах операций, товаров и клиентов за считанные секунды/минуты.
По сути, это позиция программиста, с акцентом на технологии и инструменты, позволяющие разрабывать системы работы с данными. И вместо создания интерфейса (как у фронтенд разработчиков, или разработчиков для андройд/ iOS), или какой-то бизнес-логики (бэкенд) - их продукт это система, автоматизировано готовящая данные для анализа. И поддержание это системы для работы коллег, занимающихся анализом данных.
Набор знаний в этой сфере очень сильно варьируется. Наверное, наиболее популярные навыки выглядят так:
SQL
Python (Java, Kotlin)
bash
Docker, Kubernets
Эта сфера отлично подходит для людей, которым интересно писать системы обработки больших данных (big data) и которым менее интересно придумывать как повысить эффективность бизнеса, стараясь убедить в этом каких-то коллег.
Ищете работу, которая вам подходит
Цель этого поста - показать что есть море вариантов интересной работы.
Многим, желающим попасть в дата сайенс - будет интересно работать на позициях аналитиков и дата инженеров. Найти такую работу может быть проще, и финансовое вознаграждение, в итоге, может быть на том же или очень близком уровне.
Идти в дата сайенс без опыта работы в ИТ, примерно как захотеть стать нейрохирургом, без опыта работы в медицине. Разумнее получить хотя бы часть более простых смежных навыков, начать работать в этой сфере, и далее расти в ней "естествнным путём", получая релевантный опыт не только из теории, но и из регулярной практики работы.