— Что работодатели хотят от джуниор аналитика данных?
— Работодатели хотят, чтобы он был мидлом.

Если ты не смеёшься над этим анекдотом, то наверняка недавно закончил (либо заканчиваешь) обучение по обретению специальности «Аналитик данных». А ещё ты пока не нашел, но уже начал искать свою первую работу.

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

Сделают ли самостоятельные проекты меня мидлом

Самостоятельные проекты сделают тебя джуном плюс. Вот как ты изменишься при работе над внеучебными проектами.

  1. Поработаешь с реальными данными. В учебных проектах данные существенно отличаются от реальных, и вот почему:

    • Часто данные для учебных проектов генерируют искусственно. Кроме прочего такой подход решает все проблемы с возможными нарушениями авторских прав. 

    • Данные предварительно подготовили для студентов, почистив от самых ужасных аномалий. Да, на хороших курсах студентов готовят к реальной работе, а потому чистить данные «до идеала» не будут. Часть проблем оставят. Но все равно они будут существенно лучше реальных сырых данных.

В любом случае опыт работы с реальными данными на учебных курсах приобрести сложно. И работодатели это понимают.

  1. Получишь опыт самостоятельного поиска информации для выполнения проекта. Даже если учебный контент не давал 100% необходимой информации для решения проекта, он обеспечивает большую её часть. Ты точно знаешь, что на 80% вопросов ты найдёшь ответ в последнем модуле курса, на ещё 10% — в предыдущих модулях. И останется буквально пару вопросов для самостоятельного поиска. Но даже тут ты можешь попросить о помощи преподавателя или наставника. Другое дело — самостоятельный проект. Тут уж придётся искать информацию самому. Да, ты также можешь попросить о помощи — например, на stackoverflow. Но помощь будет не гарантированной и не такой быстрой. 

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

  1. Научишься работать в команде. Проект можно выполнять на 100% самостоятельно. Но если есть возможность получить опыт работы в команде других специалистов — используй её, это действительно ценно.

  1. Научишься самостоятельно выстраивать план работы, оценивать трудозатраты и свои возможности. Учебный проект часто содержит пошаговую инструкцию. К реальным проектам инструкция не прилагается. Необходимо самостоятельно определить этапы работы и оценить требуемое для их выполнения время. При дефиците времени — как и в реальном проекте — нужно отказаться от части запланированных этапов. 

  1. Приобретёшь нужный именно тебе опыт. Хочешь работать над дашбордами в банке? Ищи банковские данные и создавай дашборд с принятыми именно в этой области метриками. Интересует машинное обучение и сфера недвижимости? Ищи данные по недвижимости и строй модели на их основе. При прохождении собеседования на позицию мечты у тебя будут доказательства, что ты действительно не новичок в этой сфере и она тебе точно интересна. 

  1. Научишься работать с неудачами. Что ты сделаешь, если цели заказчика или твои идеи на имеющихся данных недостижимы? Бросишь проект и постараешься забыть о нём? Попробуешь выжать из имеющихся данных максимум возможного? Постараешься найти дополнительные? Сможешь ли объяснить заказчику, каких именно данных не хватает?

Где искать проекты

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

Найти информацию о хакатонах и других соревнованиях для аналитиков можно на сайтах:

  1. Хакатоны.рф

  2. Соревнования от Open Data Science

  3. Соревнования от Kaggle — тут потребуется знание английского. 

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

В Практикуме проводят хакатоны от компаний-партнёров для выпускников, которые находятся на этапе поиска работы. Из недавних примеров: выпускники курса «Аналитик данных» решали задачу по оптимизации телеграм-канала для «Иннополиса». А будущие специалисты по Data Science — для Яндекс Музыки и Маркета. 

Плюсы участия в хакатонах:

  • Участие в командных проектах.

  • Общение с опытными специалистами.

  • Шанс привлечь внимание потенциальных работодателей.

  • Опыт работы с реальными заказчиками.

Минусы участия в хакатонах:

  • Высокий порог входа для участников. 

  • Высокий уровень стресса, в том числе из-за сжатых сроков работы.

  • Хакатоны сложны в организации, а потому их проводят редко. Поиск хакатона на интересующую тематику может занять много времени.

Где искать датасеты для проектов 

Если участие в хакатонах тебе пока не подходит — можно поискать данные в открытых источниках. Огромное количество датасетов можно получить совершенно бесплатно. Вот несколько возможных источников:

  • Сайты с соревнованиями. Например, на kaggle.com можно найти множество датасетов. Бонусом послужат проекты других участников — оттуда можно почерпнуть идеи для работы с датасетами. 

  • Официальные статистические сайты. На rosstat.gov.ru большое количество данных по России. Чем больше и богаче страна, тем больше у неё данных. Советую заглянуть на Data.gov — тут можно найти датасеты, которые открыто раздает правительство США. Данные на сайтах статистических ведомств обычно представлены в агрегированном виде, а потому датасеты скучные и маленькие. Зато чистые, надёжные и лёгкие в работе. 

  • datasetsearch.research.google.comсервис Google для поиска по открытым датасетам с помощью ключевых слов. Результаты можно фильтровать по лицензии, формату данных и времени с момента последнего обновления. 

Плюсы работы с открытыми источниками:

  • Большой выбор данных для работы.

Минусы:

  • Возможность работы с неточными данными, получения на их основе неточных результатов и недостоверных выводов.

  • Отсутствие свежих данных.

Парсинг данных

Иногда нужные данные проще собрать самостоятельно, чем искать в интернете. В этом поможет парсинг — процесс автоматического сбора и обработки информации с веб-страниц или других источников данных. 

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

Плюсы парсинга:

  • Большой объём данных, которые можно использовать для анализа.

  • Возможность получить данные, которые недоступны в открытых источниках.

  • Автоматизация процесса сбора, что позволяет сэкономить время и усилия.

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

  • Получение самых свежих данных.

Минусы: 

  1. Необходимо изучить специальные библиотеки для парсинга.

  2. Важно проверить правовую сторону использования данных.

  3. Возможность получить неточные результаты и недостоверные выводы.

Более лёгкой и легальной альтернативной парсингу технически будет использование API (Application Programming Interface) — интерфейса, позволяющего программам и другим системам обмениваться данными и информацией. Не каждый сайт заботится о лёгком доступе к своим данным для сторонних пользователей. Но если такая возможность есть, советую ей воспользоваться. Для примера можно посмотреть API сайта HH.ru

Как создавать проекты

Итак, данные найдены, изучены и очищены. Что с ними делать дальше? Где взять идеи проектов? 

Можно изучить интересные тебе вакансии — что хочет видеть работодатель? Какие метрики его интересуют? Он ожидает снижения расходов, поиска наиболее перспективных областей для развития или хочет лучше понять существующих клиентов? 

А можно посмотреть чужие проекты, например:

Это может дать идеи для твоих собственных проектов. 

Один из самых простых способов — попробовать повторить учебные проекты на новых данных. Что можно сделать лучше? Получится ли прийти к тем же выводам? Чем можно их дополнить?

  1. Начни с постановки цели и задач проекта

    Даже если в процессе выполнения проекта задачи изменятся — этот этап будет полезен. Он сократит время работы над проектом и повысит его качество. 

  2. После тебе обязательно придётся уделить внимание чистке данных

  • Проведи поиск дубликатов. 

  • Подумай над пропусками — стоит ли их удалять, восстанавливать, заполнять заглушками. Или лучше просто оставить как есть. 

  • Найди и обработай неправдоподобные значения. К ним может относиться отрицательное время поиска работы или возраст клиентов банка более 100 лет.

  • Если какие-то данные относятся к категориальным значениям — можно ли объединить категории. 

  • Преобразуй типы данных.

  1. После можно переходить к исследовательскому анализу.

  • Вычисли основные статистические характеристики данных, такие как среднее, медиана, стандартное отклонение... Это поможет лучше понять распределение данных и их особенности.

  • Используй графики для обобщения основных характеристик, выявления закономерностей и визуализации распределения данных. Наиболее подходящие типы графиков — ящик с усами и гистограмма.

  • Определи выбросы и обработай их. 

  • Выяви связи между данными, например, рассчитав коэффициент корреляции.

  1. Подумай, нужно ли создавать новые признаки. Например, в датасете с признаками «дата получения заказа» и «дата выполнения заказа» может быть полезно вычислить такие величины, как:

  • срок выполнения заказа;

  • месяц поступления заказа;

  • маркер, был ли заказ выполнен в установленный срок. 

  1. Переходи к самому исследованию. Вернись к списку задач и постепенно переходи от одной к другой. Ты можешь, например:

  • вычислить все запланированные метрики;

  • проверить выдвинутые гипотезы;

  • если хватает данных — провести статистические тесты;

  • подобрать графики, удачно иллюстрирующие твои выводы.

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

Что делать с готовым проектом

Опубликуй его в своём портфолио на GitHub — крупнейшем веб-сервисе для хостинга IT-проектов и их совместной разработки. Также можно сделать посты в соцсетях об успешном завершении проекта или написать о нём статью на Хабре.