Особенности трудоустройства в 2024 (golang)
За свои 15+ лет в разработке я прошёл наверное 100+ собеседований — и почти четверть из них в этом году, в течение последнего месяца:) Что‑то необычное происходит — подумал я — и решил поделиться наблюдениями — может вы тоже что‑то заметили? А может это просто кому‑то чуть поможет в поиске работы или наоборот в рекрутинге.
Бэкграунд
Что‑то около 10 лет в Java, последние 3 переключился на Go (сейчас бэкенд уверенно переползает в эту сторону т.к. в условиях популярности кубернетеса и микросервисов джава выглядит излишне жоркой и притом её популярное преимущество «run anywhere» теряет смысл — во всех подах одна ОС). Резюме в этом году — то же самое что и год назад (ну, добавился опыт работы в озоне почти годовой) — зарплата та же. В том году трудоустройство заняло недели две и собеседований было может штук 7 (из них 4 с вк и озон с которыми дошли до оффера) — почти все сразу начинали с собеседования с менеджером или техлидом.
Статистика сейчас
Хедхантер радостно заявляет что я откликнулся уже 120 раз и нужно продолжать, ибо «шансы растут» (откликов 40% «отказ» и примерно столько же «просмотрено» или «не просмотрено» поровну.
Собеседования я стал записывать в отдельный гуглдок чтобы не сбиться — рекрутёрских созвонов в духе «для познакомиться» — 18 штук. Техсобесов до последней недели было только 4. На этой, последней, прошли 3 технических, 3 менеджерских и 1 с hr. Это раза в 3 больше чем обычно уходило на поиск работы (а я успел поработать больше чем в дюжине компаний так что некая статистика накопилась).
А результаты? Они последовали все почти разом в последнюю неделю. Один оффер есть, другой ждёт анкеты для СБ и третий пока под вопросом (теперь муки выбора).
Проблема во мне?:) или что‑то случилось с индустрией? Я конечно не без странностей, но давайте посмотрим некоторые кейсы.
Показательные кейсы
Пишет рекрутёр из Яндекса, по имени Софья. Мол, давайте созвонимся на полчасика. Я говорю «слушайте, этих созвонов уже слишком много — может вы просто по резюме спросите что непонятно? реально надоело отвечать на тупые однообразные вопросы (которое в резюме кстати освещены)» — нет, говорит, надо хоть на 15 минут. Ну хорошо, мы созвонились, она говорит что готова назначить первое из цепочки дальнейших собеседований и скринингов (обещает всего 4 или 5 — ну это не ново, я уже устраивался в Яндекс и даже до офера доходил).
И вдруг она обнаруживает что первый (!) тех‑собес она может назначить только через 2 недели. Не хватает интервьюеров. Мы собеседуемся 6 сентября, собес на 20-е. Естественно собес я прохожу уже имея офферы в другие конторы… Бред.
Тех‑собес кстати проходит в духе «лив‑кодинга» в собственном «онлайн‑блокноте» Яндекса, в котором однако отсутствует возможность выполнения кода. Аналогичный «блокнот» у Т‑Банка такую фичу имеет — да и любой из нас с навыками докера конечно наклепает «песочницу» за несколько дней (говорю с уверенностью т.к. наклепал когда‑то и для своего сайта).
На тех‑собесе решаю две задачки за 30 мин из 60 отведенных (ну, интервьюер добродушно подсказывает когда где‑то чего‑то забыл) — и оказывается что больше ничего не нужно. Поболтали за жизнь, посмеялись. Дней через несколько назначают секцию «по алгоритмам» — и там… опять две задачки! практически такого же плана, может одна чуть сложнее. Даже интервьюеры похожи…
На момент написания статьи это эпопея тянется уже три недели и пока неизвестно к чему придёт.
Очень милая рекрутёр из Т‑Банка, всё сравнительно дельно излагает, обращает внимание что с разношёрстным опытом из моего резюме она сможет в довольно разные проекты его предложить — и назначает первые интервью (всего их должно быть 3 или 4, как и у яндекса).
Первое интервью — скрининг по общим навыкам кодинга, простейшим алгоритмам — три задачки, самая продвинутая на «Динамическое Программирование». Я с ними справился, в т.ч. благодаря дружелюбным подсказкам интервьюера — и получил отзыв «превышает ожидания».
Зато второе интервью — по самому Go — я успешно слил. Особенно доставил вопрос о том, куда указывает пойнтер, в котором адрес переменной, у которой закончился скоуп — в частности, внутренней переменной цикла for — на это я ответил правильно, но позже с удивлением обнаружил что в свежих версиях Go поведение изменилось, у них просто старая версия 1.19.8 в запускалке для интервью :)
Ну и мне сообщают что «немного недотянул» и «дальше общаться не готовы». Я их понимаю. Но разбирая ретроспективно вопросы обнаруживаю что интервьюер сам несколько заплутал в массивах и слайсах и возможно часть моих ответов не понял или неверно истолковал.
Субъективность таких собеседований — это не моё личное мнение. В одной из предыдущих контор где была похожая ситуация, менеджеры и лиды мне не раз жаловались «ты понимаешь что кандидат может пройти или не пройти просто в зависимости от того какой интервьюер попался. Хуже того половина интервьюеров друг у друга собеседование не пройдут.» Это пожалуй верно — попробуйте спросить на интервью про «шестнадцатеричные константы с плавающей точкой» — есть такой изврат в Go, гляньте в спецификации примерчики — верный способ вынести мозг кому угодно, но я вам ничего не говорил:)
Через пару недель рекрутёр которая изначально меня собеседовала возвращается из отпуска и спрашивает мол «если у тебя с Go так плохо, то может на Python пособеседуешься»?:))) я ласково объясняю что на питоне пишу давно, но коммерчески — мало — и шансов там меньше чем с Go. Деликатно поясняю насчет того что их оба собеса (с динамическим программированием и с указателями на невалидные переменные) — это в целом мало релевантно задачам энтерпрайза —, но понимаю что всё это как пук в воду. Компания большая, процесс налаженный и едва ли кому‑то охота думать над его недостатками и путями улучшения.
Необычное собеседование в небольшую gamedev компанию (кажется, «Силиз») — у них проект с бэкендом на эрланге — на котором пропал единственный разработчик. Поддержать пока есть кому — один из основателей компании (видимо тот с кого эрланг и начался когда‑то) занимается этим понемногу, но так продолжать опасно и они ищут разработчика с эрлангом или хотя бы того кто готов погрузиться в этот необычный, архаичный, жестоко функциональный, довольно тормозной (несмотря на JIT в 24 версии иммутабельные структуры данных тормозят сильно) язык.
А у меня оказывается есть опыт на Эрланге несколько лет назад — в компании где похожая ситуация. Искать разработчиков на этот язык конечно непросто. Так что по результатам часового (!) собеседования с эйчаршей я оцениваю свои шансы как неплохие —, но мне она через несколько дней пишет что «Мы решили остановиться на кандидатах, имеющих больше опыта в управлении.»
Я скромно оцениваю что с управлением у меня норм, два года назад диковинный криптостартап из десятка человек с «около нуля» поднимать помогал (и бэкенд к нему натоптал) —, но думаю пущай как хотят конечно. Только непонятно как рекрутёр сопоставляет опыт в эрланге и навыки управления:)))
Кейс некой дочки Газпрома — я успешно прохожу собеседования с рекрутёром (юноша), менеджером и техлидом. Немного смущает что задают достаточно общие вопросы, но ничего. Все очень милые ребята, никаких претензий — приятные в общении, толковые. Рекрутр меня хвалит после каждого этапа и говорит что я то и то умно ответил и это идеальный «мэтч». Причём это по резюме тимлида (я по совету кого‑то из эйчаров сделал себе копию сеньорского резюме и подписал «Team Lead Golang / Java»).
Наконец говорят что готовы сделать оффер. Только надо анкету. Для службы безопасности. Анкету надо в вордовом файлике заполнить и переслать через рекрутёра. И там всевозможные данные, сведения о родственниках, у кого судимость и так далее. Кто может дать рекомендации и согласны ли они на это.
Мне это не очень нравится —, а главное с учётом наплыва других собесов мне откровенно лень в эту ерунду погружаться. Как результат, к моменту когда я наконец собрался с силами, опросил родственников и так далее — у меня уже есть офферы из других контор.
Необычный кейс, компанию называть не буду — эйчар на созвоне рассказывает про компанию, они коммерческие, но работают на госконторы — и вот они пишут приложуху для росреестра (карты, кадастры, звучит недурно). Роадмап расписан на 5 лет. Я уточняю —, а сколько времени до внедрения —, а вот именно до внедрения 5 лет. До 2030 года. Я прям сказать немного удивлён — в наше время планировать что угодно на 5 лет может только человек совершенно оторванный от реалий (ну ладно, это личное мнение, может не прав).
Через несколько дней пишет что «по результатам собеседованИЙ они с коллегами пришли к выводу что пока будут рассматривать кандидатов с другим опытом». А вы знаете что в Go у нас опыт довольно однообразный — сам Golang, почти всегда Postgres, Kubernetes, из очередей Kafka, Rabbit или Nats например.
Рекрутёры кадровых агентств — это несчастные люди, лучше время по‑моему на них не тратить.
Одна мне пишет, присылает портянку с компаниями и вакансиями. На просьбу вести себя «человечнее» извиняется, сбрасывает «портянку» ещё раз, потом говорит мол «я ещё только учусь». Задаёт банальные вопросы (на которые ответы есть в резюме) и говорит что организует звонок —, но не с ней, а с её коллегой. Одна умеет писать, другая говорить. Оки. Созвонились с той, другой — она вся довольная, ах‑ах, я передам ваше резюме в магнит и в Ламоду, там будут такие этапы, ла‑ла‑ла. Потом тишина на недельку. И в какой‑то момент наконец приходит письмо из Ламоды — совершенно общее, мол — посмотрите вакансии у нас на сайте.
Другой (парень) ищет для МТС. Задаёт те же вопросы, убеждает что я им очень нужен и т. п. Потом говорит «теперь я должен кое что узнать»… И через час «ох, оказывается у них уже есть ваше резюме, поэтому нам нельзя будет с вами пообщаться».
И вновь девочка от Яндекса —, но теперь уже через какое‑то КА. Я ей сразу пишу «не теряйте времени, у них уже моё резюме есть, в нескольких экземплярах — вы за меня от них денег не получите» — она молча исчезает.
Остальной «общий» кейс — немного похожий на ситуацию с кадровыми агентствами. Рекрутёры назначают собес, задают общие вопросы по шаблону, который я под смех уже каждому (каждой) из них оглашаю в начале разговора — потом говорят что «всё круто, передадим резюме дальше» — и исчезают навсегда.
Выводы
Наконец, что происходит?
Последние годы (пандемия и прочее) немало приучили нас работать удалённо. По отзывам некоторых HR нередка ситуация «попросил друга пройти собес за меня». Это наверняка немало мешает рекрутингу, но всё же вероятно чаще случается с позициями джуниорскими. Возможно «эйчарская проверка» — часть стратегии по противодействию этой ситуации —, но кажется что немного чересчур.
В то же время заметен резкий наплыв низкоквалифицированных сотрудников в отрасль рекрутинга — по‑видимому фрилансеры которым пообещали, что если они будут массово рассылать всевозможные вакансии в почту, в телеграм, в вк и так далее — и кто‑то из кандидатов дойдёт до оффера — им дадут кучу денег. К сожалению по‑видимому именно низкий уровень таких «сорсеров» мешает им хоть сколько‑то разумно таргетировать свои усилия.
Проверка скиллов, технический скриннинг — часто становятся боттлнеком. Эйчар может набрать (гипотетически) хоть сто кандидатов со своими 15-минутными обзвонами —, но если техсобес требует присутствия опытного айтишника на 60 или 90 минут (притом что айтишнику ещё и работать надо по основным задачам) — то понятно что из этой сотни приходится более менее рандомно выделять 5–10 с которыми только можно будет пообщаться.
И что тут можно поделать?
В озоне я обратил внимание на проект который они пилят для отбора на внутренние курсы. Я общался с этим проектом — реалии такие что регистрантов может быть несколько тысяч человек —, а на курсы всё‑таки нужно отобрать несколько десятков. У этого проекта пока есть некоторые сложности (например, менеджеры просят более приближенные к индустрии задачи, а не все эти «мама подарила Васе миллион строк в которых нужно…» — в частности например SQL, интерактивные, с веб‑интерфейсами что‑нибудь).
Было что‑то отдалённо похожее и под названием «Яндекс.Контест» — строго говоря оно и сейчас ещё влачит в каком‑то виде существование, но кажется почти забыто даже самими сотрудниками.
В принципе подобный сервис для отбора может (по нынешним временам — небольшими усилиями) позволить себе почти любая компания. Если сделать его публичным (приходите, упражняйтесь на наших тестовых задачах — и оставляйте контактные данные если потенциально вам интересно у нас работать) — можно более‑менее автоматично пополнять свою базу кандидатов.
Можно себе такое позволить и на уровне кадрового агентства, хотя попытавшись общаться с таковыми я понял что возможно уровень агентств у нас пока не готов для этого.
Спору нет такое не всегда легко воплотить. Например значительная разница как проверять задания по бэкенду и фронтенду. Или по тестированию.
И конечно понятно что это способ не универсальный — возможно он будет привлекать больше джуниоров чем сеньоров например.
Тем не менее как альтернатива вот этим «рекрутёрским обзвонам» и «техсобес через две недели» — он кажется не совсем безжизненным.
Сам я по результатам этого опыта думаю запилить подобный сервис (благо у меня достаточно наработок) и посмотреть будет ли толк. Но конечно если какие‑то из крупных компаний (хоть те же упомянутые Яндекс и Т‑банк) возьмутся за ум — тут шансов на положительный эффект гораздо больше. Ну, мне так субъективно кажется :) А вам?