Сходили на Smart Data Hack, заняли первое место. Пока ничего не забылось, хотел бы рассказать, как всё было. Для мероприятия Headhunter сделал дамп вакансий за 2014, 2015 годы, дамп резюме без персональных данных и что-то ещё по мелочи. Роструд пришёл с выгрузкой всех открытых вакансийсо своего Труда всем. Ещё были данные от ювелирного магазина «585», но на них я совсем не смотрел.

«Труд всем» внешне очень похож на другие сайты для поиска работы. Фильтры, выдача, резюме — всё стандартно. Наша идея заключалась в том, чтобы поискать, что отличает сайт от конкурентов, оправдано его существование или нет.


Для начала выгрузили оценки трафика для HH, Труд и Job.ru с Similarweb. Труд сейчас в 10 раз меньше HH, но с лета растёт. Интересно, что Job.ru последний год падает, возможно, скоро Труд его обгонит.


Данные по вакансиям из HH выглядели так (15Гб):
{
  "alternate_url": "http://career.ru/vacancy/12422377",
  "code": null,
  "premium": false,
  "description": "<p><strong>Должностные обязанности:</strong></p> <ul> <li>Обслуживание клиентов (знание ассортимента продукции, помощь покупателю в выборе)</li> <li>Контроль приготовления заказов</li> <li>Комплектация заказов</li> <li>Работа с кассой</li> <li>Работа с документацией</li> <li>Поддержание чистоты в зале</li> </ul> <p><strong>Требования:</strong></p> <ul> <li>Гражданство РФ</li> <li>Огромное желание развиваться в ресторанном бизнесе!</li> <li>ПК- уверенный пользователь</li> <li>Знание 1С - будет преимуществом)</li> <li>Позитивный жизненный настрой!</li> </ul> <p><strong>Мы предлагаем:</strong></p> <ul> <li>Работа в динамично развивающейся компании</li> <li>Молодой дружный коллектив</li> <li>График работы 2/2 с 10 до 23часов</li> <li>Заработная плата- ставка 1700-1800р + премии</li> <li>Возможность карьерного роста в области управления ресторанным бизнесом</li> <li>Возможно обучение</li> <li>Работа в шаговой доступности от метро</li> <li>Сменный график работы</li> </ul>",
  "schedule": {
    "id": "fullDay",
    "name": "Полный день"
  },
  "suitable_resumes_url": null,
  "site": {
    "id": "hh",
    "name": "hh.ru"
  },
  "billing_type": {
    "id": "standard",
    "name": "Стандарт"
  },
  "published_at": "2015-11-05T19:19:35+0300",
  "test": null,
  "accept_handicapped": false,
  "experience": {
    "id": "noExperience",
    "name": "Нет опыта"
  },
  "address": null,
  "key_skills": [],
  "allow_messages": true,
  "employment": {
    "id": "full",
    "name": "Полная занятость"
  },
  "id": "12422377",
  "response_url": null,
  "salary": {
    "to": 40000,
    "from": 25000,
    "currency": "RUR"
  },
  "archived": false,
  "name": "Продавец-кассир (кассир-администратор)",
  "contacts": null,
  "created_at": "2015-11-05T19:19:35+0300",
  "area": {
    "url": "https://api.hh.ru/areas/1",
    "id": "1",
    "name": "Москва"
  },
  "relations": [],
  "employer": {
    "logo_urls": {
      "90": "http://hh.ru/employer-logo/1439461.png",
      "original": "http://hh.ru/employer-logo-original/249197.png",
      "240": "http://hh.ru/employer-logo/1439462.png"
    },
    "vacancies_url": "https://api.hh.ru/vacancies?employer_id=1111042",
    "name": "ТЫ ПРОФИ",
    "url": "https://api.hh.ru/employers/1111042",
    "alternate_url": "http://hh.ru/employer/1111042",
    "id": "1111042"
  },
  "response_letter_required": false,
  "apply_alternate_url": "http://hh.ru/applicant/vacancy_response?vacancyId=12422377",
  "negotiations_url": null,
  "department": {
    "id": "1111042-1111042-wokwok",
    "name": "Суши WOK"
  },
  "branded_description": null,
  "hidden": false,
  "type": {
    "id": "open",
    "name": "Открытая"
  },
  "specializations": [
    {
      "profarea_id": "22",
      "profarea_name": "Туризм, гостиницы, рестораны",
      "id": "22.175",
      "name": "Начальный уровень, Мало опыта"
    },
    {
      "profarea_id": "22",
      "profarea_name": "Туризм, гостиницы, рестораны",
      "id": "22.193",
      "name": "Официант, Бармен"
    },
    {
      "profarea_id": "22",
      "profarea_name": "Туризм, гостиницы, рестораны",
      "id": "22.504",
      "name": "Хостес"
    },
    {
      "profarea_id": "22",
      "profarea_name": "Туризм, гостиницы, рестораны",
      "id": "22.329",
      "name": "Управление ресторанами, Барами"
    },
    {
      "profarea_id": "15",
      "profarea_name": "Начало карьеры, студенты",
      "id": "15.313",
      "name": "Туризм, Гостиницы, Рестораны"
    }
  ]
}
...


Из Труда — так (700Мб):
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<source creation-time="2015-11-13 15:01:10 MSK" host="trudvsem.ru">
<vacancies>

<vacancy>
    <url>http://trudvsem.ru/vacancy/card/1021801058443/2bbb11f1-3a46-11e5-a0ef-3bdbd1a6e39d</url>
    <mobile-url>http://trudvsem.ru/vacancy/card/1021801058443/2bbb11f1-3a46-11e5-a0ef-3bdbd1a6e39d</mobile-url>
    <creation-date>2015-10-30 00:00:00 MSK</creation-date>
    <update-date>2015-11-13 03:19:57 MSK</update-date>
    <salary>от 11500 до 11500</salary>
    <currency>«руб.»</currency>
    <category>
        <industry>Работы, не требующие квалификации</industry>
    </category>
    <job-name>Монтажник</job-name>
    <employment>Полная занятость</employment>
    <schedule>Сменный график</schedule>
    <description>ОПЫТ РАБОТЫ ПО МОНТАЖУ ОХРАННЫХ И ПОЖАРНЫХ СИСТЕМ</description>
    <duty>ВЫПОЛНЕНИЕ МОНТАЖА,НАЛАДКИ И ТЕХНИЧЕСКОГО ОБСЛУЖИВАНИЯ СИСТЕМ АВТОМАТИЧЕСКОЙ ПОЖАРНО-ОХРАННОЙ СИГНАЛИЗАЦИИ</duty>
    <term>
        <text>
Социальный пакет
</text>
    </term>
    <requirement>
        <education>Среднее профессиональное</education>
        <qualification>ОПЫТ РАБОТЫ ПО МОНТАЖУ ОХРАННЫХ И ПОЖАРНЫХ СИСТЕМ<br/>Ответственность
</qualification>
    </requirement>
    <addresses>
        <address>
            <location>Удмуртская республика, 427405, г. Воткинск, ул. ЛЕНИНА, д.24</location>
            <lng>53.992971</lng>
            <lat>57.053191</lat>
        </address>
    </addresses>
    <company>
        <name>ООО ЧОП "КОБРА"</name>
        <email>KOBRAOOO@MAIL.RU</email>
        <phone>8(34145)51001</phone>
        <contact-name>СОЛОВЬЕВ АЛЕКСАНДР АНАТОЛЬЕВИЧ</contact-name>
        <hr-agency>false</hr-agency>
    </company>
</vacancy>
...


Удивительно, но факт — число открытых вакансий на Труде чуть больше, чем на HH:


Может быть, на Труде вакансии никто не закрывает и они валяются там годами? Нет, 80% вакансий были открыты в прошлом месяце. У HH — 99%. Пик в прошлый понедельник на HH, возможно, связан с тем, что рекрутеры иногда пересоздают вакансии, чтобы держать их в топе выдачи. 4 ноября — праздник, вакансий мало:


Разных работодателей на Труде даже больше, чем на HH:


Дальше, конечно, было интересно как-то сравнить вакансии и работодателей. На HH ведётся хорошая классификация вакансий:


С помощью этих данных удалось сделать простой классификатор. Для названия вакансии он выводил распределение по категориям:


Принцип работы классификатора очень простой. Для каждого слова считаем в каких категориях оно чаще всего встречается: например, «врач» — в категории «медицина», предлог «по» — равномерно размазан по всем категориям. Чтобы классифицировать вакансию, её название разбивается на слова, распределения по категориям для всех слов суммируются. Подробнее в сорцах.

Классификатор был запущен на всех вакансиях HH и Труда. Получилось, что HH — это в основном про продажи, IT и банки. Труд, наоборот, про нормальные профессии — про врачей, учителей, рабочих.


Была гипотеза, что HH рассчитан в основном на московскую аудиторию, а Труд на регионы. Честно посчитали распределение вакансий по географии. Действительно, у HH ~45% вакансий приходится на Москву, Питер и Московскую область, а у Труда только ~15% (да, c Питером, какой-то косяк):


В конце решили сравнить зарплаты на порталах. На Труде зарплаты в 2-3 раза ниже, и, что интересно, слабо отличаются между категориями:


«Это всё Москва», подумали мы. И сделали срез по регионам. Но и там зарплаты на HH значительно выше. Наверное, дело в том, что на Труде представлены в основном государственные учреждения, там зарплаты ниже:


Ещё интересно, что на Труде большая часть вакансий со сменным графиком, а не с нормальным, как на HH:


Получается, что порталы заметно отличаются. Если человек, не программист и не менеджер, живёт не в Москве, и нормально относится к работе в государственных организациях, ему больше подходит «Труд всем».

Хакатон был организован нормально: хороший интернет, много данных. Но участников было мало, ко второму дню осталось всего три команды, из них нормальный результат был только у нас.

Комментарии (5)


  1. JetMaster
    16.11.2015 01:09
    +7

    То есть задание так и звучало «Взять данные сайтов и построить графики»? Какой-то странный Smart, а Hack вообще не наблюдается


  1. kumbr_87
    16.11.2015 08:39
    +1

    Получилось, что HH — это в основном про продажи, ИТ и банки. Труд, наоборот, про нормальные профессии — про врачей, учителей, рабочих.

    Обидно


    1. deniskreshikhin
      16.11.2015 11:27

      Скорее, все наоборот HH — это в основном про нормальные профессии в частном секторе экономики, где ЗП зависят от профессиональных навыков. А Труд это государственный сектор, где уровень ЗП определяется «сверху», и профессиональные навыки тоже. Всякие инженеры-программисты 14 разряда за 8000 р. в месяц.


      1. DAiMor
        16.11.2015 12:15

        Труд это не только госсектор, в центр занятости населения могут вакансии оставить и коммерческий сектор, только мало кто наверно это делает.


  1. DAiMor
    16.11.2015 10:40
    +1

    труд — это база центров занятости населения со всей россии, должна быть. Как часто обновляется сейчас не в курсе, но предполагалось вроде ежедневное обновление. Портал был создан на фоне финансового кризиса 2008 года.