- PVSM.RU - https://www.pvsm.ru -
Прошлые статьи с цифрами нашли положительный отклик среди читателей, поэтому — на этот раз нечто совершенно иное — ещё один статистический сборник: рынок труда в Java, цифры из вакансий, резюме и заработные платы. Сам наш hh.ru в большей части написан на ней — уже ~15 лет мы следим за всей экосистемой Java и за динамикой джавистов на рынке.
Под катом — сравнение Java с совокупным рынком, реальные/предлагаемые/ожидаемые зарплаты, конкуренция и общие тренды. 21 график, время чтения — примерно 7 минут.
Считали только те вакансии, в названии которых нашлась Java в сочетании с developer/разработчик/tech и так далее. Количество вакансий считается по дате публикации, i.e. вакансии, опубликованные в январе и дожившие до n числа февраля, попадают в статистику только по январю.
Помимо количества, в статистике по вакансиям есть ещё одна глобальная сущность — зарплаты. Не в каждой вакансии они есть. Существующих данных по зарплатам более чем достаточно для построения статистики, но отсутствие их в значительной части вакансий всё-таки влияет на объективность данных, как и факт существования отношений на рынке труда вне hh.ru. Далее по порядку.
Ниже — динамика вакансий для джавистов за последние 4 полных года, базис — 2013 год. Скачок 2016-го, в частности по Москве, быть может связан с посткризисным ростом. Санкционный год внёс некоторую смуту в поставки ПО из-за рубежа, отчасти стимулировал импортозамещение, ещё больше стимулировал экспорт и заставил посмотреть в сторону цифровизации ради экономии некоторые ранее далёкие от неё компании. Это касается не только Java, а в целом всей ИТ-отрасли, которая значительно опередила совокупный рынок весной 2016-го по росту кол-ва вакансий.
Только города-миллионники. Мы взяли все вакансии в стране за прошлый год и посчитали долю каждого города — почти половина всех вакансий пришлась на Москву. Нынешняя ситуация по доле вакансий для города, ключевые навыки из резюме и проч. в открытом доступе в расширенном поиске [2], если нужно.
Опять же миллионники, весь 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 — получается хорошо и понятно. Ниже в статье будут зарплаты по уровням, которые посчитаны иначе и чуть лучше отражают ситуацию конкретно для крупных компаний. Что такое квартили — коротко [7].
Было время, средняя зарплата джавистов в Петербурге была выше, чем в Москве. С того же 2016 года (см. динамику вакансий [9]) вместе с количеством вакансий стали расти и зарплаты, почти стабильно вверх до настоящего момента.
Здесь сравнение средних зарплат по вообще всем вакансиям в регионе с зарплатами в вакансиях джавистов. Показательное: в 2017 году в России средняя предлагаемая зп — 45к в среднем по рынку, в Java — в 2,5 раза больше.
Есть у hh.ru проект [12] (не пиара ради, а пользы для — кликать стоит, только если хотите глянуть демо или рассматриваете для компании), суть его — компании предоставляют фактические зарплаты своих работников, в общей выборке зарплаты обезличиваются. Сами компании привязываются к отрасли, региону и кол-ву сотрудников, типу капитала и т. д. Зарплаты привязываются к профессиям и уровню позиции. На выходе участник проекта видит, какие компании в отрасли уже предоставили данные, выбирает регион, специализацию и профессиональную область — в итоге получается отчет с общим значением зарплат по выборке.
Ниже — скриншоты банка по Java-разработчику в Москве, 4 шт. по уровням.
Медианная зарплата у Java-тимлида в Москве — 183к. Любопытна дельта диапазона фактических зарплат с ожиданиями из резюме и предложениями из вакансий. Сами диапазоны — интерквартильный размах [13]. Уточню, зарплатные ожидания — это цифры, которые указывают соискатели, зарплатные предложения — это цифры из вакансий, а фактические зарплаты — это данные банка.
У «сеньоров» медианные значения фактических зарплат всё-таки ниже предложений и ожиданий.
Если вы мидл в Москве на Java — это примерно соточка. Больше — лучше.
Фикс для джуна в Москве — 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 [25].
То же самое, что и выше, только в группировке по опыту работы.
Автор: Николай Величко
Источник [27]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/java/280771
Ссылки в тексте:
[1] Image: https://habrastorage.org/webt/h6/dg/kp/h6dgkprxdjp16tk_vwar4aam31a.png
[2] расширенном поиске : https://hh.ru/search/vacancy/advanced
[3] Image: https://habrastorage.org/webt/l8/gq/4m/l8gq4ms7lpqpzusevdvcuzhsiku.png
[4] Image: https://habrastorage.org/webt/ri/zh/od/rizhod9agew3neb2bndm9gf4yjs.png
[5] Image: https://habrastorage.org/webt/u5/vf/rp/u5vfrpriw-hkv4ty-xzdp1ecptm.png
[6] Image: https://habrastorage.org/webt/7p/qi/ka/7pqika4xkaefwvt-xb-5aweddx0.png
[7] коротко: https://www.mathsisfun.com/definitions/quartiles.html
[8] Image: https://habrastorage.org/webt/7m/k3/54/7mk354cness6zxbcensphsovo9o.png
[9] динамику вакансий: #dynamics
[10] Image: https://habrastorage.org/webt/im/7i/y1/im7iy1zah6hp-sxl8afk4hfasl8.png
[11] Image: https://habrastorage.org/webt/wo/a-/li/woa-li-phpuczdiwa2qlcc2idaa.png
[12] проект: https://salary.hh.ru
[13] интерквартильный размах : http://statistica.ru/glossary/general/interkvartilnyy-razmakh/
[14] Image: https://habrastorage.org/webt/yp/i9/sn/ypi9snkcv0cmc4toncn3hsjwbme.png
[15] Image: https://habrastorage.org/webt/24/eb/c8/24ebc8uhp7jzavbi7cguocg-ksy.png
[16] Image: https://habrastorage.org/webt/di/-v/rj/di-vrjm2uvwlxpgksz3jx8imvts.png
[17] Image: https://habrastorage.org/webt/dm/te/nw/dmtenwnkpxhmu4ftux1-jg1efjm.png
[18] Image: https://habrastorage.org/webt/ub/_x/t1/ub_xt1sqcwicdmn6mnt5ilonadc.png
[19] Image: https://habrastorage.org/webt/co/0y/7q/co0y7qolmvh1waxzjwqrlo7am1w.png
[20] Image: https://habrastorage.org/webt/dw/fi/_8/dwfi_8zvrab3oft7sm-vnfgcp3m.png
[21] Image: https://habrastorage.org/webt/pm/ps/jz/pmpsjzo4p4bo7gs1p_ftwdn0-ru.png
[22] Image: https://habrastorage.org/webt/o3/a2/ok/o3a2ok_fywmku0l0m_etrcfdkdg.png
[23] Image: https://habrastorage.org/webt/vn/f-/mw/vnf-mwk3bjoqkgiskg2ru_4jn2a.png
[24] Image: https://habrastorage.org/webt/jg/-q/rm/jg-qrmuxs4p6ewmum52rvvcsdt4.png
[25] odds ratio: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2938757/
[26] Image: https://habrastorage.org/webt/fc/bp/on/fcbponhvgsmtidersnjtguofcd0.png
[27] Источник: https://habr.com/post/359036/?utm_source=habrahabr&utm_medium=rss&utm_campaign=359036
Нажмите здесь для печати.