Я спарсил 5000 вакансий маркетологов с HH и вот что я узнал
Вступление
Привет, я работаю маркетологом больше 8 лет, за это время успел поработать над многими проектами, с разными рекламными площадками, получать разную зарплату.
В январе 2023 я начал изучать Python для анализа данных, а сейчас появились силы и знания сделать пару pet-проектов по аналитике. Мне интересна эта сфера и хотелось бы дальше в ней развиваться, я решил проанализировать рынок вакансий на HH, собрать данные и узнать что-то полезное для себя, ну и конечно поделиться с VC.
Ниже, я расскажу как собирал вакансии с HH, о чистке данных и аналитике, если вам интересны картинки и выводы, то листайте сразу до Аналитики. :)
Сбор данных
Для сбора данных я использовал Python, библиотеки Selenium, Requests, BeautifulSoup, Fake_UserAgent. Если кто-то спросит, а почему я не использовал api HH, то сразу отвечу, что просто хотел проверить свои знания этих библиотек.
Я подбирал вакансии только по ключевому слово «маркетолог». Я решил собирать вакансии только из РФ, у которых указан доход и фильтранул поиск только по ключевому слову «маркетолог» в названии вакансии. Но мой парсер, в итоге, всё равно собрал часть вакансий без указания зарплаты, ну и Бог с ними.
У HH есть неприятная особенность, если вы просто будете искать вакансии с фильтром выше, то HH покажет, что сейчас есть около 5.000 подходящих вакансий (на апрель 2023), при этом HH формирует только 40 страниц с вакансиями, где на каждой странице только 50 штук оных. В итоге из 5.000 мы видим только 40х50=2000 вакансий.
Для того чтобы обойти эту особенность, я собирал их не сразу со всей Великой и Могучей, а по частям: отдельно с Москвы, отдельно с СПБ, отдельно регионы. В итоге как раз вышло около 5000 штук. Для моего исследования этого достаточно.
Парсинг занял около 4 часов. Я использовал задержку в 3 секунды перед каждым парсингом вакансии. Я никуда не спешил, не хотел ДДОСить сервер, не хотел словить бан от площадки и пока еще не знаком с асинхронным программированием.
Я собирал следующие данные с вакансии:
название
ссылка
зарплата
требуемый опыт
условия занятости (полная занятость, частичная, стажировка и тд)
условия занятости (в офисе, удаленная работа и тд)
название компании
город
ключевые навыки
дата публикации
Чистка данных
Я не буду особо вдаваться, как я приводил данные к одному виду, чтобы их было легче анализировать, затрону только зарплаты.
Зарплаты в иностранной валюте я приводил к рублю по курсу ЦБ на 11.04:
USD — 81₽, EUR — 89₽
Если в зарплате было указано «до вычета налогов», то я вычитал 13%.
Если в вакансии разброс «от 100 000 до 150 000 руб. на руки», то я брал нижнюю планку, т.е. 100.000₽.
О зарплатах можно долго спорить, например вас могут взять на зарплату как большую, так и меньшую, чем указано в вакансии, зависит только от вас. Поэтому будем держать эту условность в голове.
Аналитика и выводы
Количество вакансий и средняя ЗП
Один из основных графиков моего исследования. Логично, что в Москве и Питере вакансий больше и там самые большие зарплаты. Меня удивил Владивосток и расстроил Киров. Теперь буду называть Киров «чистилищем маркетологов».
Мода по зарплатам
Я разбил зарплаты по категориям +- 10.000. Если в вакансии зарплата 50.000-59.999, то вакансия попадает в категорию 50.000.
Требуемый опыт работы и зарплата
Компании чаще всего ищут специалистов с опытом 1-3 года. При этом, компании готовы доплачивать за специалистов с опытом. Логично :)
Условия рабочего дня и зарплата
Вакансий с полным рабочий днём в офисе больше, чем удаленки, в 6 раз. Но на удаленке, в среднем, платят на 5000₽ больше.
Итог
Я вобще не затронул тему ключевых навыков в вакансиях, потому что мне пока лень. :) Надеюсь вам было полезно или хотя-бы интересно.
Буду рад критике, советам и комментам.
Я создал свой телеграм-канал, подписывайтесь :) Там пока что только эта статья, но я собираюсь в ближайшее время добавить ещё аналитику про вакансиям дизайнеров.
Маркетолог... Это очень, очень размытое понятие )
Ну а теперь кластерный анализ. Тогда и увидим, сколько подвидов маркетологов в умах работодателей). И матмодель, на какую зп в каком городе можно претендовать со своими навыками.
Я щас работу ищу как раз маркетологом. Ощущение, что зп на удаленке меньше, чем в офисе. И на удаленку по 500 - 1000 откликов, а на офис 10-15
Учитывая что вокруг офиса может жить на порядки меньше людей, чем могут прочитать русскоязычную вакансию, соотношение откликов будет вполне закономерным.
Просто сейчас все пытаются удалённую работу найти, чтобы за границу переехать
Да даже и без этого у офиса крайне мало положительных сторон для соискателя.
Шум, траты времени на дорогу, риски быть съеденным собаками и вирусами по дороге на работу.
Из плюсов только место для отдыха от орущих краснорожих детей, которые наспавнились в тридцатиэтажном крольчатнике площадью 2 квадратных метра, построенном над обрывом на кладбище домашних животных.
А ещё для того чтобы поменьше своим жалом в общественных местах светить. )
Да и Да
Интересно было посмотреть на среднюю зп по городам.
С другой стороны "маркетолог" такое размытое понятие. Скажем исследования делать по супермаркетам, контекст настраивать и Product marketing всё можно подвести под условного маркетолога.
Идея шикарная, но хотелось бы большей разбивки данных.
Идея мега интересная, попробую как-нибудь реализовать.
Тут придётся парсить каждую отдельную страницу вакансии и анализировать требования по ключивикам.
Интересно бы еще в разрезе даты публикации вакансии.. Сколько условно недельной, месячной, и может полгода ищут...
У меня есть вот такой вот график с датами публикаций.
Зеленые столбы — выходные.
А ещё как часто ищут маркетологов различные компании в регионах. Иногда захожу, а на манеже одни и те же, ощущение что годами. Резонно возникает вопрос, они такие мудаки и люди у них не держатся?)
Молодец. Больше бы таких маркетологов.
Комментарий недоступен
Дубликаты на скрин случайно попали?
На скрине с сырыми данными могут быть дубликаты.
Дубликаты я чистил, о чём забыл упомянуть. Сортировал по названию компаний, потом пробегался по списку, удалял явные дубликаты, например, если вакансия и зарплата одинаковые. В итоговой выборке дубликатов нет.
А можно посмотреть проект с кодом?)
Супер. Жду продолжения! Как сам себя оцениваешь по зарплате? )
Хорошая статья, приходи к нам писать статьи в cofounder.media
Комментарий удален модератором
Почти пошла на твой канал, но остановила информация, что там только эта статья, которую я только что прочитала.
Я бы убрала оправдание, что там одна статья и оставила только твои слова про то, что там будет 😉