Как проводить и проходить собеседования

Как проводить и проходить собеседования

Дмитрий Алин

Обо мне

Меня зовут Дмитрий Алин, я в IT уже больше 20 лет. Работаю то лидом, то сеньором. Сейчас работаю в Совкомбанке главным разработчиком, являюсь лидером сообщества Live PHP, где организую митапы, дринкапы, шашлыки и по мелочи всякое.

За свой продолжительный опыт работы я провёл больше полутора сотен технических собесов и ошибался в грейде и в том, подойдёт ли специалист по вайбу команде, довольно редко.

Мой последний опыт поиска работы начался в январе, и вот я вышел на работу. Сия статья будет о том, что я узнал из последнего опыта поиска работы, и как я офигевал от происходящего на собеседованиях и на ХедХантере.

Как оно начиналось

Я не искал работу уже года три и, после новогодних праздников, сначала повспоминал что за это время произошло, чего достиг, что делал, и внёс последний опыт работы в своё резюме. Опубликовал. Сижу как раньше, жду. Сезон начинается в начале февраля, так как в декабре и январе подбивают отчётность и планируют бюджеты, поэтому я несуетливо релаксирую на кровати перед ящиком, периодически играю в компьютерные игры, занимаюсь пет-проектом, наслаждаюсь свободой и независимостью. Прошли лениво между делом пара разминочных собесов.

И вот, наступил февраль. Я продолжаю наслаждаться жизнью, потыкивая пару раз в неделю на кнопочку «Поднять резюме» в ХХ, с надеждой что вот-вот наступит счастье и у меня будет работа, но фиг вам. Перестаю понимать что происходит вообще, потому что откликов ноль повдоль, хотя три года назад я собеседования проходил полный рабочий день с утра до вечера и отлёживался на выходных, даже не откликаясь на вакансии.

И вот он март. Старая зарплата подошла к концу, начинаю расчехлять первую заначку. Советуюсь с друзьями – покупаю ХХ про. Откликаюсь сам – ничего. Отказы на отклики, меня не находят, что происходит – я совершенно перестаю понимать. Чуть позже заказываю анализ резюме, отчёт я так и не прочитал, хотя отдал за него целое состояние - 799 рублей. Те редкие собеседования, которые бывают, валю напрочь. Прохожу тестовые собесы, прошу друзей посмотреть резюме и сказать, что не так – без толку. В апреле расчехляю вторую заначку и начинаю потихоньку паниковать.

Но всё-таки я справился. Что пошло не так - сейчас я вам и расскажу.

Как оно было на ХХ

Тариф ХХ про – не берите, абсолютно бесполезная штука, которую можно заменить тыканием в приложение два раза в день. Всего лишь за два клика в день вы экономите 199 рублей в неделю. Однако апать резюме надо, иначе вы опускаетесь в конец списка, но платить 199 рублей денег за это в неделю – да они просто жадные негодяи.

Я подумал над новым заголовком резюме. Было «Тимлид/Руководитель группы разработки», стало «PHP Senior/Teamlead». Я был не уверен, что изменение заголовка сильно повлияло, но всё же. Как позднее оказалось, это нужно чтобы рекрутеры, которые ищут PHP в названии резюме, не пропустили его. Да, я решил отказаться от чистого менеджмента, который без программирования, а вот в сеньоры податься можно, там до тимлида не далеко, да ещё и с моими навыками в менеджменте.

Далее я удалил свой старый опыт работы. Было 14 лет, стало 9 в резюме, хотя полный стаж у меня уже больше 20 лет. Это я сделал одновременно с Машей, нашей конферансье, по её подсказке. Она удалила старый опыт до 5.5 лет. И вот, оно заработало. Маша нашла работу, а у меня пошли собеседования. У нас было предположение, что рекрутеры триггерятся на большой опыт или даже сам ХХ не показывает таких кандидатов.

Что говорят рекрутеры

Я пообщался с рекрутерами и эйчарами, постаравшись собрать максимум информации по теме. Они мне открыли глаза на многое, чего я не знал.

По тому, как работают рекрутеры

  • Рекрутеры могут быть неопытные и иметь некоторые ошибочные стереотипы (раскрою ниже)
  • Триггер на название позиции, надо указывать ключевой стек, т.е. сработало добавление «PHP» в название резюме
  • Триггер на большой опыт и зарплату. Если опыт больше 6 лет, то неопытные рекрутеры могут считать, что зарплата уходит в стратосферу, будет слишком оверквелифайд, либо за свои 20 лет опыта кандидат сформировал свои «понятия» и будет плохо обучаем
  • Искать вакансии можно в телеграм каналах, а также публиковать там своё резюме; просить знакомых эйчаров протолкнуть через свои каналы
  • Иногда неопытные рекрутеры не хотят понимать кого они нанимают и ищут на «отвали», они стараются быстрее передать дальше и могут брать «массой»
  • Если пришёл отказ по резюме, можно или даже нужно запросить обратную связь, если очень нравится компания и проекты у них классные, то можно найти HRD в линкедине, и попросить откликнуться на резюме

По моему резюме

  • В моём резюме не хватает конкретики, то есть не хватает ключевых слов и что конкретно было сделано и к чему привело
  • Надо убрать из резюме самодисциплину из «О себе», так как если я сеньор или лид, то это уже говорит само за себя
  • Нужно более подробно описывать что я делал и что получилось в «О себе» и в опыте, что хотелось бы получить в компании, а также добавлять побольше ключевых слов (фреймворки, СУБД и т.д.)
  • Есть роботы, которые сканят резюме. Они пробегают по ключевым словам в опыте, составляя выборку для рекрутеров
  • Если переходил на какой-то новый стек или ввёл ещё какие-то глобальные изменения – описать подробно: что, зачем и почему, и какой результат был достигнут

По опыту скажу, что мне, как интервьюеру на собеседованиях интересны последние 2-3 места работы и общий стаж.

Кроме всего прочего, я успешно продолжаю валить собеседования.

Как проходят собеседования с эйчаром

Тут я опишу то, с чем я встретился, оно полностью не описывает того, с чем вы столкнётесь в реале, в этом случае стоит открыть в интернетах документацию и почитать внимательно про скрининги. Вообще, скрининг нужен для теста на адекватность и составления психологического портрета кандидата, тоже самое нужно для кандидата относительно компании.

  • Спрашивают про опыт. Тут нужно раскрывать подробно, но не углубляться в технические детали. Не стоит также негативно высказываться о предыдущих компаниях и сотрудниках, лучше обернуть в какую-нибудь красивую обёртку, что-то типа: «у нас не получилось сработаться с начальником, потому что сильно расходились во мнениях» или «мы разошлись во мнениях по поводу процессов, они считают так, а я эдак». Но если такое происходит – надо быть готовым пояснить за слова в позитивном ключе. А также заранее подготовить и рассказать про то, почему уходил(а) откуда либо.
  • Спрашивают технические вопросы. Чаще всего, а точнее почти всегда, эйчары не понимают сути этих вопросов, записывают ответы или, чего хуже, пишут ответил или нет. На эти вопросы надо быть готовым ответить сразу и не углубляться в детали, а то можно прослыть душнилой. Если вы будете на одной волне с эйчаром, то будет легче пройти скрининг, даже если будут ошибки в ответах. Примеры вопросов:
  • Как работает протокол HTTP, что будет после того, как ввели адрес в браузере и нажали энтер
  • Объясните что такое REST, какие ещё способы обмена существуют
  • Какие методы HTTP существуют, если забыл про PATCH – то собеседование может быть завалено
  • В чём разница между HTTP и HTTPS
  • Вопросы по типу «какие у вас были успехи и факапы». Ответ на этот вопрос тоже стоит подготовить заранее и литературно приукрасить, чтобы выглядеть в позитивном свете.
  • Рассказывают про компанию. Если явно не просят задавать вопросы в конце, то можно смело перебивать и задавать свои вопросы. И вопросы задавать нужно – это показывает заинтересованность в компании и в будущей работе, если вы её получите.

При беседе с рекрутером, нужно:

  • Говорить уверенно, стоит потренироваться, не надо бояться – компаний много, где-то найдёте себе применение
  • Быть готовым к неожиданностям
  • Быть на позитиве и создавать плюс вайб
  • Задавать вопросы, интересоваться компанией, но не задавайте вопросы по архитектуре, тут стоит задавать вопросы по трудоустройству, графику, официальности зарплаты и так далее
  • Составьте скрипт для собеседования по своему опыту, которому будете следовать, можно сделать карточки; у меня, например, листочки с подсказками висят вокруг ноутбука на некоторые темы
  • Не стесняйтесь запрашивать обратную связь, даже в случае позитивного результата

И ни в коем случае нельзя называть эйчар специалиста эйчаркой, рекрутеркой, кадровичкой и так далее по списку. Потому что это (DeepSeek):

  • Обесценивается профессия – не кадровик, а какая-то там кадровичка
  • Сексизм – суффикс «-ка» часто используется для уменьшительно-уничижительных форм, что может звучать как намёк на несерьёзность профессии
  • Неуважение – типа мы технари, а они бумажки перекладывают

Ну и имейте ввиду, что если вас собеседует эйчарка, то вы собеседуетесь на должность кодерка.

Кроме того, у нас в сообществе можно запросить тестовое собеседование. Мы помогаем потренироваться, можем даже провести несколько раз с разными специалистами, в том числе HR. Это абсолютно бесплатно и без СМС.

Ещё немного про эйчаров и не только

Нужно ещё разделять разные профессии и понимать для чего они нужны. В зависимости от компании, HR специалист может объединять какие-то функции, а может заниматься каким-то конкретным направлением.

Talent Acquisition (TA) — направление, связанное с привлечением талантов и их развитием в компании. TA подразумевает не только знание рынка труда, но и глубокий анализ бизнеса работодателя. К этим ребятам как раз и относятся рекрутеры, они же могут вести и онбординг.

HR администратор – это те, кто занимается оформлением сотрудников, кадровым делопроизводством, военным учётом, трудовым правом и так далее.

HR BR (HR бизнес-партнёр) – эти ребята работают в основном с руководителями (лидами, руководителями разработки, бизнесом) и нацелены на эффективность производственного процесса с вовлечёнными сотрудниками. Это про разработку политик и процедур управления персоналом, развитие навыков, расстановку кадров, разработку системы оплаты труда, коммуникации внутри компании и т.д.

Что было коряво с моей стороны

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

  • Первое собеседование – это скрининг: у меня за спиной несколько курсов ораторского и актёрского мастерства и я умею производить впечатление, тут на изи
  • Собеседование по менеджерским навыкам – тут я тоже на коне
  • System Design – был ли я на коне и был ли вообще конь – я не в курсе, но мне сказали, что я его прошёл, зачёт сдан
  • Собеседование по знанию языка – и тут ой, всё

Суть в том, что к предыдущим собеседованиям я хоть как-то готовился, но про знание языка я думал, дескать, да что там не знать-то? Вот и не стал повторять, и приземлился интерфейсом в легаси. Осмыслил, понял, пошёл исправляться. Но было «но».

До этого работал полгода менеджером, поэтому знания по коду несколько улетучились. Надо повторять базу всегда: паттерны, stdlib, обработку ошибок, базы, Zval.

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

Что было коряво со стороны компаний

А вот тут я буду поднимать холиварные вопросы, на которые я высказываю своё мнение, не более того. Захотите похоливарить – похоливарим на дринкапе.

На технических собеседованиях порой проводят собесы на джуна, а не на сеньора, где спрашивают про знания mb_str*(), сортировки и тому подобное, что для сеньора, в общем-то надо отдалённо помнить, но не знать на уровне отскакивания от зубов. Сеньор занимается более глубинными задачами и ему надо про некоторые вещи только помнить, а дальше работает умение пользоваться документацией.

Было такое, что меня спрашивали по знанию SQL на очень высоком уровне. Иногда разработчики его знают, иногда не очень. У меня в резюме нет описания того, что я работаю с SQL на уровне DBA, сразу об этом говорю, если спрашивают подробно. Если нужен DBA со знанием PHP – надо, наверное, брать DBA со знанием PHP, а не PHP лида, у которого в команде может быть человек, знающий SQL сильнее него самого. Специалист не может быть экспертом во всём, а тимлид – не техлид, это вообще руководитель с умением писать код.

Ещё была такая реакция интересная, компанию называть не буду. Я, как лидер сообщества, провожу митапы и, приняв оффер и ещё не заключив договор, решил обсудить с будущим шефом то, чего мне хотелось бы от компании при проведении митапа. Описываю руководителю, что происходит во время организации митапа:

  • Нужно уйти пораньше с работы, чтобы всё организовать и проконтролировать
  • Следующий день отлежаться, потому что после митапа нетворкинг, который не хотелось бы пропускать
  • У нас митапы проходят четыре раза в год

Сообщаю, что я могу перепланировать по-другому таким образом, чтобы на рабочий процесс мероприятие не влияло. Однако встречаю резкую реакцию, дескать, а почему я не знал об этом раньше? А у меня в резюме указано, что я лидер сообщества. Оффер отозвали. Я спросил Яндекс Алису: в чём может быть проблема? На что она мне ответила (укороченно): «возможно им не нужны специалисты, которые имеют своё мнение». Истинных причин я не знаю, на запрос руководитель не ответил, указав, что взяли другого специалиста.

Как бы я сделал со стороны компании

Во-первых, всегда старайтесь переходить на «ты». Это даст более комфортное общение, так как в нашей области всегда принято общаться на «ты».

Скрининг – это опрос по резюме с фильтром на адекватность. Это вполне нормальное явление, но вот технические вопросы у меня вызывают сомнения. Они заключаются в том, что человек может внезапно что-то подзабыть и не пройти скрининг из-за того, что в методах HTTP забыл сказать про PATCH или OPTIONS, а реально специалист толковый. Заранее подготовленные вопросы должны иметь чёткий и однозначный ответ, который сможет понять рекрутер.

Собеседование всегда с камерой или лично. Когда видно собеседника – лучше считываются невербальные сигналы.

Техническое собеседование, за исключением скрининга, должен проводить человек, к которому в команду идёт соискатель, то есть непосредственный будущий руководитель. Иначе получается так, что соискатель не может задать вопросы о команде, а интервьюер может одобрить кандидата, которого не примет команда. А собеседовать отдельно с командой – это странно, так как увеличивает время проведения всех 100500 собеседований с обеих сторон.

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

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

План собеседования

Что нам надо понять в кандидате

  1. Грейд
  2. Умение и желание учиться и обучать ближнего
  3. Подойдёт ли к команде по вайбу
  4. Софты, умеет ли разговаривать и спрашивать – это будет понятно в конце собеседования
  5. Подходит ли по техническим навыкам
  6. Достаточная ли стрессоустойчивость
  7. На сколько мотивирован для работы в конкретных условиях – спрашивать тут надо прямо, рассказывая про команду и задавая вопросы
  8. Прочее, что важно для команды – это я не буду расписывать, всё индивидуально

Грейд

Конкретный грейд нужно определять по вашей матрице. Но тут я опишу, что плюс-минус попадание в грейд можно определить по следующему принципу:

  • Джун – работает на поверхности, может написать какой-то простой алгоритм, типа сортировки, знает какие-то базовые принципы и способы их применения
  • Мидл – может копать глубже, но при сложных архитектурных задачах теряется в сути бытия; умеет стилизовать код, знает SOLID, DRY, KISS, PSR и понимает как их применять
  • Сеньор – может глубоко проработать архитектуру, возможно знает ТРИЗ; знает паттерны, стандарты и умеет это всё применять

Можно придумать какую-нибудь задачку типа (взято с одного из моих собеседований):

  • У нас есть 10 серверов
  • Есть лог-файл, он бесконечный и постоянно дописывается
  • Надо распарсить этот файл и сложить статистику в базу данных

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

Обучение

В зависимости от того, кто конкретно в команде нужен, определяем умение и желание обучаться. Будет ли это человек, который тащит, или же тот, кто будет привносить новые идеи. Определить можно по следующим примерным критериям (да/нет):

  1. Читает что-то из художественной и профессиональной литературы
  2. Участвует ли в сообществах, активно общается
  3. Заинтересован ли в посещении конференций и митапов
  4. Читает ли рассылки
  5. Что нового в PHP версии X.X
  6. И так далее

Умеет ли обучать – это следующие примерные критерии такие:

  1. Спросить прямо умеет ли и хочет ли
  2. Софт-скилы, умеет ли объяснять и доказывать свою точку зрения

Команда

Тут, на самом деле, всё просто. Команды бывают с позитивным вайбом, бывают душные и/или токсичные. Как сложилось – кому-то приятно работать с токсиками, кому-то нет. В процессе беседы с кандидатом вполне можно прочувствовать и понять. Если сложно понять, тогда стоит почитать что-нибудь про эмоциональный интеллект.

Харды

Для понимания по хардам не обязательно устраивать лайвкодинг, достаточно задавать вопросы и смотреть на ответы.

  • Какие языки знаешь – даёт понимание в обширности знаний
  • Какие типы данных, что такое ресурс – это даёт понимание джун это хотя бы или нет
  • Принципы ООП и модификаторы доступа – джун/мидл
  • Множественное наследование, тут задеть интерфейсы – мидл

И так далее. Тут вопросы не про написание кода, а про понимание сути. Так же нужно задавать вопросы по конкретным хардам, которые активно используются в команде. Не надо спрашивать по тем хардам, которые реально не потребуются. Тут работает YAGNI.

Также не нужно подбирать идеального кандидата, который будет строго подходить по техническим навыкам. Во-первых, ему может по итогу оказаться скучно при отсутствии чего-то нового, чему можно научиться в рамках проекта. А во-вторых, всегда всему можно научиться.

Стрессоустойчивость

Если у вас спокойная работа, то это тестировать не надо. А вот если она связана с постоянными переключениями между задачами и общением, то тогда можно устроить блиц-собеседования на 30 минут со всеми теми же самыми вопросами, прерывая кандидата и скача из темы в тему. В конце станет понятно на сколько вы измотали человека и как он будет реагировать на стресс.

Однако, этот кейс является несколько опасным, так как кандидат может успешно отвалиться, даже если он подходит команде. Этот эксперимент нужно очень внимательно продумать, прежде чем начинать и не предупреждать кандидата заранее.

Как надо беседовать соискателю

Надо заранее подготовиться независимо от того, что в голове есть впечатление что всё знаешь. Обязательно просмотреть вакансию, посмотреть технологии, которые используются, повторить всё в любом случае. Так же, для PHP кандидата, нужно повторить SOLID, KISS, DRY, ACID, индексы, нормализацию, обработку ошибок, сборку мусора, Zval, Saga и базовые паттерны. И перед техническим собеседованиям их каждый раз повторять. Лишние 10-20 минут перед собеседованием, потраченные на это, обеспечат более быстрое прохождение собеседования и у компании будет более приятное впечатление о вас.

Однако, к прохождению собеседования надо готовиться не только по техническим навыкам. Потренируйтесь на кошках, уточках, друзьях, в сообществе и так далее. Это часто бывает стрессово, особенно для начинающих специалистов, но со временем мандраж проходит. Чтобы было меньше мандража можно регулярно знакомиться и общаться с новыми людьми.

Использование алкоголя для снятия напряжения или достижения пика Балмера не рекомендую. Это может привести к неприятному впечатлению, если интервьюер определит опьянение по лицу, голосу или поведению. А на техническом собеседовании начинает всё вылетать из головы. Лучше не пить даже накануне. Учитесь быть трезвыми и преодолевать стресс без алкоголя или наркотиков.

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

Задавайте вопросы, интересуйтесь компанией, процессами, командой, продуктом.

Ссылки

https://backendinterview.ru – огромное количество вопросов и ответов по интервью.

https://github.com/avito-tech/playbook/blob/master/developer-profile.md - это профили инженеров в Авито

https://t.me/live_php_news/60 - ссылка на презентацию

https://rutube.ru/video/21df3c4b4fc59971db6aa048a5ca1f0a/ - ссылка на доклад

Спасибки

Тамара Алмаметова, IT HR и карьерный консультант.

Ирина Руттенберг, Head of recruitment, Garage Eight


Report Page