Часть первая тут:
Суровая правда о разработчиках и разработке / Хабр (habr.com)
Почти три года назад, в эпистолярном порыве, написал я значит дискуссионную статью посвященному текущему состоянию рынка IT. Для нашей отрасли три года — это достаточно большой срок, поэтому самое время подвести промежуточный итог с моей не самой высокой колокольни. Побудила меня к этому статья «Вас просто стало слишком много / Хабр (habr.com)» и комменты в ней, которые почти полностью противоречат моему текущему опыту как собеседующего и собеседующегося. Хочется начать как раз с разбора тезисов статьи и комментов, сравнить их со своим опытом и проверить свои прогнозы из 2021 года.
Начнем вот тут. Скажите, что вы думаете о человеке, который пишет так?
У меня тоже есть весьма фееричный опыт столкновения с машиной отбора. Мне однажды попался поехавший чел, который спрашивал: «Чем Git Flow отличается от GitLab Flow и GitHub Flow? Что делает команда VACUUM в PostgreSQL? Что такое ULID?» У меня в голове в тот момент были вот такие мысли: «Он вообще чёрт возьми О ЧЁМ? А это всё точно существует?»
Да, я понимаю, что совсем не обязательно синьору (А судя по гонору и токсичности автор претендует на синьора) знать отличия Git Flow и GitLab Flow. Можно не знать точные отличия ULID от UUID и зачем нужен вакуум. Но синьору не знать вообще, что это существует — это как раз таки симптомы деградации отрасли. Я допускаю конечно, что вопросы по VACUUM или ULID были заданы человеку, в резюме которого не было написан опыт работы с PostgreSQL (что тоже не свидетельствуют о здоровье отрасли), но скорее всего, где то в CV что‑то про этот PostgreSQL было. Просто теперь умение заселектить десяток строчек из БД через ORM у нас в 2024 это «опыт работы».
Все эти LeetCode‑задачи на собесах, странные вопросы о том, как внутри на уровне кода устроены индексы PostgreSQL, задача сложить 2 числа без использования оператора сложения или вообще любая ерунда, которую интервьюэр вчера прочитал в очередной статье от индуса на Medium… изначально не были придуманы, чтобы иметь какое‑то отношение к реальной работе, протестировать навыки или выявить каких‑то там гениев. Эти вещи служат всего лишь очередным шагом сужения воронки кандидатов.
Возможно, в каком‑нибудь Гугле это так. Хотя конечно неплохо бы синьору и понимать, как работают индексы и чем этот вопрос отличается от сложения чисел. Потому что индексы вам понадобятся в любых системах с миллионами записей, а сложение — нет. Другое дело, что компании сильно поменьше Гугла обычно не разбрасываются людьми, потому что к ним, почему‑то, не стоит очередь (об этом чуть позже). Мы например, собеседуем сотни людей не отказывая в тех собесе только лишь потому, что человек не знает про вакуумирование.
Что же предлагает автор?
задротить LeetCode и прочий стафф, который у вас будут спрашивать, врать в резюме, по возможности использовать для прохождения собесов ChatGPT и помощь живого человека со стороны, избегать при этом компаний с background‑чеком. МБ вообще посадить вместо себя спеца по прохождению LC и пр. и изменить его лицо под ваше с помощью DeepFake, аналогично для голоса (наверное, скоро у нас реально появятся специальные люди, которым будут платить, чтобы они вместо разрабов проходили собесы).
А может просто хоть что‑то знать специалисту уровня синьора?
Наш опыт
В настоящий момент наша компания ищет синьора дотнетчика на бэк, с зарплатой до 350 тысяч на руки + премии. Я лично просмотрел и прособеседовал по разным этапам больше сотни человек с возрастом от 25 до 48 лет (Это к вопросу не берут людей под 50). Чем мы столкнулись по другую сторону баррикад?
-
Возраст не значит ничего. Тупили люди и в 25, уверенно писали код и в 48.
-
Опыт не значит ничего. Люди с 15 годами «опыта» и ВМК МГУ не смогли распарсить строчку с арифметической формулой «Это же в универе было», «Я привык решать бизнес‑задачи!»
-
Вилка зарплаты имеет значение только нижним значением. При желательной зп до 250 в основном были маргинальные кандидаты, однако 15 лет опыта и желаемая ЗП в 350 не отсекает кандидатов, которые ничего не знают.
Почему из ста кандидатов мы не взяли никого? У нас десяток скринингов? Нет, у нас ровно 2 интервью, разговорное про опыт и техническое — кодинг сессия. Мы спрашиваем сложные вещи? Ну если написать SQL где для каждой даты выбирается значение с максимальной версией это сложно, то что тогда просто? Если распарсить (не посчитать) выражение вида 1.2*x*(5*y-2)/z это сложно, то что вообще может сделать кандидат? За спринт поле в json добавить?
Что изменилось с 2021?
В чем состоят разительные отличия 2021 и 2024? Удаленка прочно вошла в нашу жизнь. Теперь любой кандидат требует половину времени минимум работать из дома. Да, тот самый кандидат, который не может написать код без команды из 20 человек, не знает про вакуум и индексы теперь требует 2–3 дня из дома.
Теперь наш среднестатистический любитель ретроспектив, чистой архитектуры и DDD хочет проводить не половину (как раньше) а три четверти своего рабочего времени на различных созвонах, потому что самостоятельно работать он не умеет, а архитектора с аналитиком под боком нет! Больше созвонов богу созвонов!
Еще потихоньку стали сбываться мои предсказания из 2021
Если все это не сделать в ближайшее время и не повысить эффективность разработки, то есть высокая вероятность, что IT потянет на дно компании и нас будет ждать второй пузырь доткомов.
Например не так давно Microsoft сократил 1900 мест в игровом подразделении, eBay — 1000, SAP — 8000 и это только за январь 2024, в то время как в 2023 по оценкам экспертов сократили 100 тысяч мест в ИТ. Прекрасно видно, что IT перестал драйвить рынок. Facebook отчитывается о сокращении доходов от рекламы, Twitter получил на 2 млрд меньше на рекламе в 2023. Стриминговые сервисы перестали расти (а где‑то начали падать).
Безусловно, отчасти это связано с большим ростом доходов во времена ковида, но все менее и менее ясно, какой вклад в настоящее время вносят разработчики.
Да и Россия, в силу различных причин начинает подтягиваться за тредом. У нас никто конечно статистики увольнений не даст, но в последний месяц только у нас было 7 кандидатов из структур Сбера с 5+ летним опытом, что вряд ли свидетельствует о «нехватке специалистов». Другое дело, что мой опыт собеседований говорит о том, что для меня остается загадкой а чем вообще занимались данные специалисты на предыдущих местах работы.
Выводы (мои)
Поскольку до гуглов мне нынче далековато, то могу лишь обозначить свои выводы:
-
Рынок постепенно сокращается отчасти отскок после короны, отчасти потому, что инвестиции в стартапы становятся токсичными, отчасти потому, что непонятно чем вообще люди занимаются.
-
На рынке огромное количество некомпетентных специалистов, не важно джуны, мидлы или синьоры. Айти был лакомым кусочком где долго деньги давали просто так. Давать перестали, а временной лаг присутствует.
-
В то же время, на рынке есть огромная потребность в настоящих специалистах, который рынок удовлетворить не может. Создается ложное впечатление, что «после 40 не берут» и «джунов не берут», то есть десятки тысяч некомпетентных спецов пытаются занять тысячи вакансий, которые они не тянут.
-
Настоящие профи видимо отлично зарабатывают на своих местах, переходят к кому‑то по знакомству и выцепить их свободными на рынке практически невозможно.
Прогнозы и что делать кандидатам?
Судя по текущей политико‑экономической ситуации, расти рынок IT в ближайшие несколько лет однозначно не будет. Лично я прогнозирую дальнейшие сокращения, причем, как только по опыту одних компаний будет ясно, что от сокращений хуже сервисы работать не станут, сокращать другие компании будут быстрее и решительнее. Грубо говоря, если твиттеров станет больше, сокращения пойдут лавинообразно.
Наибольшая угроза — для околоразработчиков. Все эти скрам мастера, аджайл коачи и прочие дата саентисты могут уже сейчас думать, кем работать дальше. (И да, психология в ближайшее время тоже потеряет популярность). Джуны без опыта и высокооплачиваемые разработчики без умения показать полезность и вклад тоже в группе риска.
Если вы сейчас ищите работу — остановитесь на не модных вариантах. Например, инхаус разработка в каких‑то производственных отраслях, как то нефтехимия, энергетика. На крайний случай — поддержка легаси в банках. Если вы единственный знаете, как работают вот эти хранимки на проде — скорее всего, вас не уволят.
Если вы хотите «войти в айти» сейчас — вы должны действительно знать предметную область. Не вся эта фигня типа чистой архитектуры и чистого кода, а умение пользоваться языком и стандартными пакетами. Не падать в обморок от легаси из 2010. Знать базовые алгоритмы и структуры. Понимать как работают БД. Такие люди нужны всегда и везде.
Если у вас сейчас хорошая работа, где все знают про ваш вклад в общее дело — оставайтесь на месте. Сейчас точно лучшее — враг хорошего.
P.S. После чтения комментариев, где люди сомневаются что с нами что-то не так, хочу просто описать наш процесс найма.
Процедура состоит из двух этапов.
Первый — это общение, где мы рассказываем о фирме, о нашем стэке и подходах к разработке и задаем вопросы про опыт. По нашему опыту тут отсеивается 2/3 кандидатов по следующим причинам:
-
Работа в 3-2 или 4-1 в офисе, и хотя мне рекрутер говорил про это, но я думал что мне дадут 2-3 или полную удаленку. Тут процентов 20 кандидатов из этих двух третей
-
Процентов 50 из этой группы нормально не писали код в ближайшее пару лет или не хотят писать («Я тут придумал поднял проекта, код писали другие», я больше по чистой архитектуре, у нас на обсуждение задач тратится больше времени чем на код, я скорее тимлид и н хочу писать код больше 50% времени)
-
Процентов 20 это люди, которые вообще не могут вменяемо рассказать про опыт работы и отвечают — я кодил. А что кодили? Ну что говорили, то и кодил. Окей, что уж.
-
Оставшиеся 10 процентов из тех, кто не проходит на кодинг сессию — это люди которые не писали на современном дотнете совсем, застрявши на WPF и не делавших даже пет проекты на новом стэке.
Тридцать процентов приглашаются на кодинг сессию, из которых треть просто теряется по пути.
Кодинг сессия проводится отдельно, в удобное для кандидата время, в его удобной IDE, так что усталость — не тот вариант.
Задания даются итерационно, от простого к сложному, никто не требует написать за час алгоритм Дейкстры. В процессе сессии рекрутер помогает и направляет, если тупняки.
Предлагаются задачи на простые алгоритмы, максимум два цикла на десять строчек и пара функций на несколько строчек. И небольшой SQL где требуется IN со значениями из GROUP BY.
Что позволяет выявить такой тест?
-
Умение пользоваться любимой IDE (как человек использует шорткаты и рефакторинг). Это совместно с другими факторами позволяет понять насколько часто человек пишет код
-
Умение понять задачу, вычленить из нее подзадачи
-
Умение писать нормальный код — без копи-паста кусков, с вынесением отдельных методов, с нормальными названиями переменных/методов. Тут же идет и знание английского языка.
-
Охват знаний — например человек говорит, что строку можно распарсить регулярками. Не обязательно именно так делать, но то, что человек знает про регулярки или про ExpressionTree уже говорит о многом
-
Насколько человек вообще знает SQL, как оказалось, что 90% кандидатов ВООБЩЕ не способны написать что-то.
-
Насколько вообще человек умеет общаться с людьми
Конечно не совсем корректный пример, но лично мне на выполнение этой задачи в том виде, где я бы сам сказал «вы нам подходите» потребуется минут 15. Что мы встречали на этих этапах:
-
Человек послушал задание и просто отключился и пропал
-
Человек послушал задание и сказал — «Я вам не джун, чтобы код писать, я привык решать бизнес-задачи» (хотя мы рассказываем на первой встрече в чем состоит вторая)
-
Пара человек не смог написать простейшую реализацию двухсвязанного списка, один просто не знал что это такое
-
Один человек после интервью сказал рекрутеру — что токсичное интервью, что его как какого-то джуна отправили код писать
-
Человек пять формально задание сделало, но код состоял из такой лапши что я бы не хотел это потом рефакторить
-
Человека три (несмотря на то, что в вакансии написано про SQL и в резюме написано «уверенный SQL» не смогли написать простейший запрос и даже словами объяснить, как это сделать)
-
Пару человек мы хотели взять но они просто выбрали другое место
-
Пара человек понравилось мне, но CTO не захотел
Соответственно, очень бы хотелось услышать в комментариях, в чем мы не правы и действительно ли пара циклов и простейший запрос это супер требования на 350к в 2024 году?
ссылка на оригинал статьи https://habr.com/ru/articles/790754/
Добавить комментарий