Прошлые статьи с цифрами нашли положительный отклик среди читателей, поэтому — на этот раз нечто совершенно иное — ещё один статистический сборник: рынок труда в Java, цифры из вакансий, резюме и заработные платы. Сам наш hh.ru в большей части написан на ней — уже ~15 лет мы следим за всей экосистемой Java и за динамикой джавистов на рынке.

Под катом — сравнение Java с совокупным рынком, реальные/предлагаемые/ожидаемые зарплаты, конкуренция и общие тренды. 21 график, время чтения — примерно 7 минут.



Вакансии


Считали только те вакансии, в названии которых нашлась Java в сочетании с developer/разработчик/tech и так далее. Количество вакансий считается по дате публикации, i.e. вакансии, опубликованные в январе и дожившие до n числа февраля, попадают в статистику только по январю.

Помимо количества, в статистике по вакансиям есть ещё одна глобальная сущность — зарплаты. Не в каждой вакансии они есть. Существующих данных по зарплатам более чем достаточно для построения статистики, но отсутствие их в значительной части вакансий всё-таки влияет на объективность данных, как и факт существования отношений на рынке труда вне hh.ru. Далее по порядку.

Как менялось количество вакансий для Java-разработчиков с 2013 года


Ниже — динамика вакансий для джавистов за последние 4 полных года, базис — 2013 год. Скачок 2016-го, в частности по Москве, быть может связан с посткризисным ростом. Санкционный год внёс некоторую смуту в поставки ПО из-за рубежа, отчасти стимулировал импортозамещение, ещё больше стимулировал экспорт и заставил посмотреть в сторону цифровизации ради экономии некоторые ранее далёкие от неё компании. Это касается не только Java, а в целом всей ИТ-отрасли, которая значительно опередила совокупный рынок весной 2016-го по росту кол-ва вакансий.



В каких городах чаще искали Java-разработчиков в 2017 году


Только города-миллионники. Мы взяли все вакансии в стране за прошлый год и посчитали долю каждого города — почти половина всех вакансий пришлась на Москву. Нынешняя ситуация по доле вакансий для города, ключевые навыки из резюме и проч. в открытом доступе в расширенном поиске , если нужно.



Доля вакансий для Java-разработчиков от общего числа вакансий по регионам


Опять же миллионники, весь 2017 год. Работает так: в Новосибирске всего за год разместили 1000 вакансий (для продавцов/парикмахеров/почтальонов и т. д.), из этой тысячи — 16 вакансий для джавистов. Во всей России на Java-разработчиков приходится 5 вакансий из 1000. Для сравнения: официант — 17 вакансий на каждую 1000 всех вакансий в стране.



Доля вакансий по типу занятости


Учитывая специфику hh.ru, распределение не претендует на объективность относительно ситуации в России: в базе сервиса 84% всех вакансий для джавистов — фултайм. Однако, интересный факт — средняя зарплата в вакансиях разного типа: полный день — 114 424, гибкий график — 110 081, удалённая работа — 115 485. В рублях. Вся Россия.



Распределение количества вакансий по требуемому опыту работы


Требуемый опыт по всей России — почти половина работодателей хочет видеть джавистов с релевантным опытом от 6 лет. Вероятнее всего, на практике вопросы опыта решаются case-by-case не в годах, а составители вакансий используют дефолтные промежутки для фильтрации junior / middle / senior. Здесь уже данные по 2018 году.



Заработные платы в зависимости от опыта работы


Те самые цифры, которые не во всех вакансиях есть. Принять диапазоны опыта за привычные junior/middle — получается хорошо и понятно. Ниже в статье будут зарплаты по уровням, которые посчитаны иначе и чуть лучше отражают ситуацию конкретно для крупных компаний. Что такое квартили — коротко.



Динамика заработных плат в вакансиях Java-разработчиков


Было время, средняя зарплата джавистов в Петербурге была выше, чем в Москве. С того же 2016 года (см. динамику вакансий) вместе с количеством вакансий стали расти и зарплаты, почти стабильно вверх до настоящего момента.



Предлагаемые заработные платы в городах-миллионниках


Здесь сравнение средних зарплат по вообще всем вакансиям в регионе с зарплатами в вакансиях джавистов. Показательное: в 2017 году в России средняя предлагаемая зп — 45к в среднем по рынку, в Java — в 2,5 раза больше.



Банк данных заработных плат


Есть у hh.ru проект (не пиара ради, а пользы для — кликать стоит, только если хотите глянуть демо или рассматриваете для компании), суть его — компании предоставляют фактические зарплаты своих работников, в общей выборке зарплаты обезличиваются. Сами компании привязываются к отрасли, региону и кол-ву сотрудников, типу капитала и т. д. Зарплаты привязываются к профессиям и уровню позиции. На выходе участник проекта видит, какие компании в отрасли уже предоставили данные, выбирает регион, специализацию и профессиональную область — в итоге получается отчет с общим значением зарплат по выборке.

Ниже — скриншоты банка по Java-разработчику в Москве, 4 шт. по уровням.

Team leader


Медианная зарплата у Java-тимлида в Москве — 183к. Любопытна дельта диапазона фактических зарплат с ожиданиями из резюме и предложениями из вакансий. Сами диапазоны — интерквартильный размах . Уточню, зарплатные ожидания — это цифры, которые указывают соискатели, зарплатные предложения — это цифры из вакансий, а фактические зарплаты — это данные банка.



Senior


У «сеньоров» медианные значения фактических зарплат всё-таки ниже предложений и ожиданий.



Middle


Если вы мидл в Москве на Java — это примерно соточка. Больше — лучше.



Junior



Фикс для джуна в Москве — 34к рублей, или средняя зарплата в Волгограде.



Резюме


По резюме данных совсем немного, тем не менее. Метод фильтрации тот же, что и у вакансий, — названия и ключевые навыки с упоминанием Java/Java dev и проч.

Распределение резюме по возрасту


Половина всех джавистов — в возрасте 26-35 лет. Как и в случае с зарплатой в вакансиях, возраст можно не афишировать, но в данном случае влияние отсутствующих данных о возрасте на объективность — вопрос спорный.



Распределение резюме по опыту работы


Не самая показательная статистика. Учитывается весь опыт, вне зависимости от того, Java или не Java, разработка или не разработка.



Распределение по уровню владения английским языком


Всё-таки без базовых знаний совсем тяжко, английский — он ведь к обязательным ключевым навыкам, вне зависимости от стека, туда же к Google-searcher — advanced.



Количество резюме на одну вакансию в городах-миллионниках


hh.индекс показывает конкуренцию — соотношение количества активных резюме и вакансий. Чем выше, тем неприятнее для соискателей. В среднем в России по совокупному рынку hh.индекс равен 7. То есть в стране на одну вакансию приходится 7 соискателей на общем рынке труда, а на одну вакансию Java-разработчика приходится чуть больше одного Java-разработчика.



Заключительное


Ниже — всё, что не относится к категоризации выше или конкретно к Java, но имеет место.

Количество резюме по языкам программирования


Здесь учтены все резюме, где last_change_time с 2010 года, любые из языков программирования есть в названии, либо в key_skills.



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


Соотношение количества запросов в соискательском поиске в прошлом году к позапрошлому. Блокчейн на слуху, конечно.



Доля ключевых запросов от общего числа обращений соискателей-разработчиков к поиску


Здесь мы взяли количество всех запросов к поиску от авторизованных соискателей, в резюме которых есть ключи разработка/разработчик/developer и т. д., и посчитали отношение к количеству запросов по ключам ниже.



Наиболее популярные ключевые навыки среди специалистов по возрастным группам


Здесь показано, насколько доля скила в возрастной группе отличается от той же самой доли в оставшейся выборке. Ну, практически. Подробнее про интерпретацию odds ratio.



Наиболее популярные ключевые навыки среди специалистов по опыту работы


То же самое, что и выше, только в группировке по опыту работы.



На этом всё. Данные, приведённые в статье, мы с sovushkasolnce собрали ещё к Jpoint 2018. Спустя месяц очнулись и сделали пост.

Комментарии приветствуются. Спасибо!

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


  1. mspain
    22.05.2018 17:30

    Считали всё где встречалось java. Т.е. С жабоскриптом? Молодцы. На сайте, кстати, так же — ищу жабиста, под ногами путаются фронтэндщики. И минус javascript не работает.


    1. Nkvlk Автор
      22.05.2018 18:31

      Java — только точное совпадение. JS и прочие ключи не по теме с корнем «Java» не попали в выборку.
      Что касается поиска на hh.ru: есть статья с описанием языка запросов, если нужно что-то очень конкретное (пример: !Java NOT !JavaScript NOT !JS). Работает и в резюме, и в вакансиях.


  1. questor
    22.05.2018 22:28
    +2

    По шарпу не планируете сделать подобную статью?


    1. Nkvlk Автор
      23.05.2018 11:18

      Да, есть в планах аналогично по популярным: С, python, js, ruby, php.


      1. F0iL
        23.05.2018 11:38

        Только C и C++ разделяйте, пожалуйста. Это разные языки с часто разными сферами применения, а «C/C++» в вакансиях обычно пишут по неграмотности.


  1. summerwind
    22.05.2018 22:49
    +2

    Возможно, я что-то упускаю, но такое ощущение, как-будто цифры по зарплатам занижены процентов на 30


    1. klim76
      23.05.2018 10:20

      только хотел порадоваться что почти в медиану попадаю… и тут такое =(


    1. olegmar
      23.05.2018 11:03

      Это медианы, возможно если брать топ 100 компаний с java, то будет значительно выше.


    1. Nkvlk Автор
      23.05.2018 11:18

      По зарплатам самые содержательные данные в скриншотах из Банка. Например, мидл. Если не медианы, то сами интервалы отражают очень приближенную к реальности ситуацию. Насколько это возможно, конечно.


      1. MacIn
        23.05.2018 17:44

        А что такое «фикс» и «совокуп»?


        1. Nkvlk Автор
          24.05.2018 10:54

          Если, например, у вас оклад 150к/месяц и в конце каждого квартала вы получаете премию в ещё 150к, то получается: фикс: 150к/месяц, совокуп: 200к/месяц. Иначе говоря, фикс — голый оклад; совокупный — с учетом премий.


          1. MacIn
            24.05.2018 15:09

            Ясно, спасибо.


  1. Mike-M
    23.05.2018 13:48

    Спасибо за аналитику. Вот бы ещё по тестировщикам нечто подобное увидеть!


    1. Skerrigan
      24.05.2018 04:11

      Понимаю, что ни разу не статистика, лишь частная выборка, но… Сибирь, г.Томск (официально население более 600к… если вместе с гастробайтерами, студентами, пригородами и полу-закрытым городом спутником, то может быть и 1млн населения). Java-QA.
      Центробанк РФ — более 140к.
      Одна зарубежная контора — более 150к.
      Обычный банк — более 130к.
      Более-менее типичная средняя аутсорс фирма — более 120к.
      Наша средне-крупная фирма — более 130к.

      Еще раз прошу обратить внимание, что тут Сибирь, тайга, медведи шарятся по помойкам и руку отгрызли тетке в кафе… а оклады не шибко отличаются от ДС№1 и ДС№2.


      1. Mike-M
        24.05.2018 09:40

        Ясно, спасибо.


      1. Whuthering
        24.05.2018 15:01
        +1

        Интересно бы разобраться в причинах такой местной аномалии. По крайней мере, упомянутые вами числа в несколько раз отличаются от зарплат разработчиков (а они обычно находятся примерно на одном уровне с хорошими QA) в других городах-миллионниках, как по графикам из этой статьи, так и по моим личным наблюдениям.


        1. Skerrigan
          24.05.2018 19:27

          Разработчикам платят +- так же (тут вы все верно подметили).
          Думаю причин несколько:
          — Как бы не относились к современному образованию, но у нас 3-е место по стране по студентам в городе. И первое по Сибири. Ибо ВУЗы дают 150к студентов (у нас реально «тьма» учебных заведений). И сюда съезжаются с центральной Азии, с Китая, а порой и из Африки (угу, на ломанном английском-русском порой приходится помогать блуждающим неграм). Т.е. по сути дела есть из кого выбирать.
          — У нас одна из немногих ОЭЗ (особых экономических зон), что еще при Медведеве (если не ошибаюсь) пытались по всей стране создать, вышла естественным образом в плюс. Перешла от федерального управления к областному. И там действительно много IT фирм, занимаются не только «сайтами-визитками». До сих пор строят новые корпуса судя по технике строительной.
          — В виду первого пункта худо-бедно, на уровне «моя твоя понимать», есть эрзац кадры, что «умеют в английский из коробки».
          — В виду всех выше указанных пунктов первыми стали тут окучиваться аутсорс конторы.
          Потом пришли «игроки» по интересней. Скажем так, я тут проходил пару лет назад собеседование в фирме, которые были не официальным отделом разработки фирмы в Сингапуре (ну правильно, сейчас не в почете говорить, что работают с русскими… можно и по шапке за это получить).

          Совсем недавно прошла городская ежегодняя IT конференция — 700 разработчиков и еще сотня менеджеров и управленческого состава от 150 компаний. Снимали целый корпус ТГУ (одного из крупных ВУЗов) для этих целей.

          В доле обще-областного ВВП IT сектор занимает ощутимую роль — один из немногих сегментов Томской области не из категории «купи-продай».

          Надеюсь моя сумбурная заметка смогла внести ясности больше, чем вопросов :)

          P.S. До событий 2014 у нас были не официально даже отделы разработки фирм из USA. С очень-очень-очень жирными зарплатами. Разумеется это так же не особо афишировалось.


  1. Donquih0te
    23.05.2018 14:01

    Интересная статистика. Спасибо


  1. Whuthering
    24.05.2018 15:04
    +1

    Интересно узнать, а как вы фильтровали в выборках по городам вакансии, у которых отмечен определенный город, но по факту она висит как предложение релокации или удаленки? К примеру, ради интереса пролистал Уфу, там почти половина предложений, особенно в высоком зарплатном диапазоне, по факту к Уфе отношения вообще не имеет — это или удаленка, или переезд в другой город (а иногда и в другую страну), хотя в поле «город» стоит «Уфа», и есть аналогичные дубликаты позиции для других городов (судя по всему, для максимального охвата аудитории по стране).
    Логично, что если специально такое не фильтровать, то на статистику это может влиять довольно сильно, причем не в лучшую с точки зрения объективности сторону.