Как стать востребованным программистом с помощью антирейтинга Stack Overflow
Неочевидный способ построить карьеру и стать суперполезным сотрудником. На заметку новичкам и опытным программистам.
С 2010 года сообщество Stack Overflow проводит ежегодный опрос и выясняет предпочтения разработчиков — спрашивает об образовании, заработке, рабочих технологиях, опыте программирования и других нюансах.
Ответы публикуют в виде отчёта, который делится на разделы. В одном из них находится антирейтинг — список языков программирования и инструментов, которые участникам голосования не понравились, потому что они посчитали эти технологии устаревшими, неудобными или сложными.
На основе отчёта Stack Overflow выходят статьи, видео, подкасты, вебинары, авторы которых копируют друг у друга один совет: нужно следить за трендом и не тратить время на то, что не пригодится. То есть «не стоит изучать технологии из антирейтинга».
Сегодня мы посмотрим на ситуацию с другой стороны. Вы узнаете, как с помощью антирейтинга выделиться среди остальных разработчиков и стать востребованным специалистом. Это не критика исследований Stack Overflow и не руководство к действию. Рассматривайте статью как запасной парашют, который полезно держать под рукой на случай проблем с карьерой.
В чём смысл
Если разложить результаты отчёта Stack Overflow на кривой Гаусса, то все технологии можно условно разделить на популярные, трендовые и антирейтинговые. Это называется нормальным распределением и считается постоянной величиной, которая существует в любой момент времени. Цифры могут меняться, но всегда будет диапазон с наиболее популярными технологиями.
Популярными технологиями пользуется большая часть разработчиков; трендовыми и антирейтинговыми — меньшинство. К тренду относятся любые хайповые новинки, которые со временем могут стать популярными. Про антирейтинг вы знаете — здесь всё, что можно раскритиковать после какого-то исследования.
Знание популярных технологий — ключ к разработке новых продуктов в крупных компаниях. Это полезно и современно, но есть нюанс: чем больше специалистов владеют одинаковыми технологиями, тем ниже ценность этих специалистов для работодателя. Если на вакансию претендуют кандидаты с похожими опытом и навыками, то больше шансов окажется у того, кому можно меньше заплатить.
Есть разные способы обойти конкурентов, и часто встречаются такие варианты: стать узконаправленным специалистом или освоить трендовую технологию, у которой высокие шансы стать популярной в будущем.
Это хорошие карьерные стратегии, но их не всегда получается реализовать. Одно дело, когда программист уже работает в крупной компании и понимает, в какой узкой нише он может прокачаться или какие технологии будут актуальны для организации в будущем. Другая ситуация, когда человек только ищет работу и вынужден угадывать специализацию или тренд.
У нас нет статистики, но есть предположение и уверенность, что большинство новичков и соискателей будут действовать наугад: попытаются опередить конкурентов без точного понимания реальных потребностей работодателя.
Мы предлагаем не угадывать, а использовать антирейтинг — изучить нелюбимые технологии программистов, которые нужны работодателям.
Бизнес не обращает внимания на тренды. Ни одна компания не будет тратить деньги просто ради того, чтобы использовать более современный язык программирования. У любого обновления есть причина — желание сэкономить, больше заработать или избежать проблем.
Поэтому, если компании невыгодны обновления, она продолжит пользоваться антирейтинговыми технологиями и будет нанимать специалистов, которые умеют с ними работать. Если обновления принесут прибыль, понадобятся другие специалисты — те, кто сможет взять условно устаревшую технологию и переписать код на актуальный язык программирования. При любом сценарии компаниям нужны программисты, которые умеют работать.
Как это работает
Вот неполный список технологий, которые в 2020 году вошли в антирейтинг Stack Overflow: Perl, VBA, Objective-C, DevOps Chef, Puppet, IBM DB2 и другие.
Для примера возьмём язык программирования Objective-C. Откроем сайт HeadHunter и посмотрим на количество вакансий по запросу «программист Objective-C». На момент обзора было доступно 803 предложения. Больше всего вакансий опубликовали работодатели, готовые платить от 115 тысяч рублей.
Objective-C попал в антирейтинг, поскольку считается устаревшим языком программирования. Вместо него критики рекомендуют учить Swift. Снова откроем HeadHunter и посмотрим вакансии по запросу «программист Swift».
На момент обзора было открыто 1 513 предложений, а больше всего вакансий опубликовали работодатели, готовые платить от 85 тысяч рублей.
Получаем ситуацию, когда язык Objective-C попал в антирейтинг Stack Overflow и вытесняется Swift, но по-прежнему нужен работодателям. У Objective-C-программистов выше средняя минимальная и максимальная зарплата, достаточное количество предложений и в два раза более низкая конкуренция по сравнению со Swift-разработчиками. То есть антирейтинг Stack Overflow не подтверждается ситуацией на рынке труда.
Разумеется, наш пример условный, и в антирейтинге могут находиться старые или неактуальные технологии. Мы этого не отрицаем, но смысл в другом. Вы можете перепроверять информацию, рассматривать разные варианты развития карьеры и не ограничиваться общепринятыми рекомендациями:
- Если вы знаете только Swift, то можете откликаться на вакансии по запросу «программист Swift». Меньше вариантов — выше конкуренция.
- Если знаете Swift и Objective-C, то у вас три варианта: «программист Swift», «программист Objective-C» и «программист со знанием языка Swift и/или Objective-C». Больше вариантов — больше возможностей.
Когда что-то популярно и в тренде, это не обязательно лучшее решение.
Что не так с антирейтингом Stack Overflow
Первое. В мире около 24 миллионов разработчиков, и где-то 14 миллионов зарегистрированы на сайте Stack Overflow. Это крупнейшее ИТ-сообщество, в котором ежегодные рейтинги и антирейтинги формируются по результатам голосования небольшой группы людей — менее 1% программистов готовы выделить время и рассказать о своих предпочтениях. Посмотрите на цифры:
В 2020 году отчёт сформирован по результатам опроса 65 000 человек.
В 2019 году опросили 90 000 человек.
В 2018-м — 100 000 человек.
В 2017-м — 64 000 человек.
В 2016-м — 56 000 человек.
В 2015-м — 26 000 человек.
В 2014-м — 7 500 человек.
В 2013-м — 10 000 человек.
В 2012-м — 3 500 человек.
В 2011-м — 2 800 человек.
В 2010-м году опрос только запущен, никто не голосовал.
В других ИТ-сообществах мы не нашли похожей статистики и ограничились данными Stack Overflow — это условность, которая не влияет на общую картину. После прочтения статьи вы сможете использовать антирейтинг любого сообщества.
Второе. На Stack Overflow опубликован раздел с описанием методологии исследования. В нём есть только общая информация, которая относится к технической части сбора данных: расписаны логика вопросов, средняя длительность опроса, география участников и прочие исходные данные.
В методологии Stack Overflow нет алгоритма для интерпретации данных. Если 65 тысяч человек проголосовали против какой-то технологии, то это не значит, что остальные участники сообщества и все программисты мира согласны с таким решением. Это просто мнение 65 тысяч человек — результат, который не получится подтвердить или опровергнуть. Никто не сможет собрать в одном месте всех программистов мира и организовать опрос ради проверки прошлых ответов.
Поэтому отчёты Stack Overflow нельзя считать полностью достоверными — не стоит ждать, что они точно определят перспективную или вымирающую технологию. Это просто одно из исследований, которое не учитывает многих факторов и требует повторной проверки.
Третье. В 2020 году в антирейтинг Stack Overflow попал фреймворк Angular. Это технология компании Google, которую никто из критиков не считает бесперспективной — той, что скоро исчезнет и перестанет быть нужной.
Получается выборочная трактовка: если у технологии есть поддержка со стороны крупной компании или сообщества, то антирейтинг не имеет значения. Такую технологию не будут критиковать. И наоборот: нет поддержки — есть критика, упоминание антирейтинга и советы о том, что технология устарела и практически нигде не используется.
Антирейтинг отображает мнение небольшой группы людей. На его основе выходят статьи и советы, которые часто не учитывают потребности работодателей. Поэтому проверяйте информацию, рассматривайте разные карьерные сценарии и помните, что лучшее решение не всегда популярное.
Что дальше
- Прочитайте статью «Java или Kotlin». В ней мы объясняем, почему современный и удобный Kotlin вряд ли когда-нибудь вытеснит устаревшую Java. Если коротко: на Java создаётся такое количество кода, что его нереально переписать на Kotlin. Поэтому оба языка продолжат существовать и понадобятся работодателям.
- После прочтения статьи пересмотрите антирейтинг Stack Overflow или найдите список непопулярных технологий на сайте любого другого сообщества, которому вы доверяете. Выпишите языки программирования и технологии, которые, по мнению большинства участников, являются непопулярными, сложными или старыми.
- Поищите информацию и подумайте, что из списка связано с вашими текущими навыками. Например, iOS-разработчику со знанием Swift подойдёт в качестве дополнения язык программирования Objective-C.
- Откройте HeadHunter или другой сайт с вакансиями. Посмотрите, нужны ли работодателям специалисты со знанием тех непопулярных технологий, которые вы для себя выписали.
- Если увидите достаточное количество интересных предложений, задумайтесь над тем, чтобы приобрести дополнительный навык и научиться делать то, что другие не хотят. Чем меньше специалистов оказывают востребованную услугу, тем выше спрос у работодателей. Пользуйтесь этим знанием!