Предисловие

Каждому TL хочется показывать высокие результаты в своей работе. Это нужно не только для карьерного роста, каких-то преференций от компании, но и для собственного эго, для понимания того, что ты не стоишь на месте. К сожалению, насколько я знаю, нет специальных “тимлидских” метрик эффективности. Есть общие - время закрытия задачи, закрытие спринта, выполнение целей, сдача функционала / проекта / продукта в срок так далее.

В предыдущем посте я говорил про важность людей, с которыми вы работаете, про их развитие и результаты, а закончил я следующим тезисом: “Ваш результат зависит от команды”. Но вопрос следующий - как набрать команду так, чтобы эффективность TL даже в “попугаях” была высокой? Как понять на этапе собеседования, которое ограничено по времени, уровень компетенций сотрудника, будет ли он частью коллектива, сможет ли ужиться с коллегами и с вами?

За время работы в двух больших компаниях TL, я пообщался с огромным количеством других лидов, people partner’ов, HR и Senior’ов, которые специализируются на технических собеседованиях. Эта статья - грубый чертеж процесса собеседований, который мы собирали с этими людьми в разных компаниях, к которому можно стремиться.

Обзор

В компаниях часто следующая система собеседований:
- Беседа с HR
- Техническое собеседование (1 час - 3 часа)
- Собеседование с TL (1 час)

Мы не будем рассматривать подробно первый этап, так как он чаще всего мало касается TL.

Больше всего меня интересует два последних этапа - техническое и собеседование собеседование (знакомство) с TL. Многие могут сказать, что последний этап не так важен, но на самом деле на этом этапе решается подходите ли ВЫ кандидату. Я выделил это неслучайно и рассмотрю этот тезис ниже.

С техническим тоже все не так просто, как хотелось бы. В сети постоянно идут споры о необходимости livecode сессии, о методиках оценивания и вопросах на собеседованиях. Уровень неопределенности достаточно высок, поэтому одного кандидата могут оценить в трех компаниях на три разных уровня. Согласитесь, было же такое?
О прохождении технической части мы сначала и поговорим.

Техническая часть

Три интервьюера или два, или один? По какой матрице спрашивать? А что спрашивать? Давать livecode? А как организовать структуру собеседования, чтобы оценить? А какую оценку дать? И еще 100+ вопросов, на которых нет однозначного ответа. Хотя есть - “Везде по-разному”.

Стиль собеседования

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

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

А как построить диалог, если с TL будет напарник в виде TechLead или Senior? Заранее подготовиться и пройтись по структуре собеседования. Одна такая подготовка - это всего 15 минут времени перед собеседованием, небольшая страничка в Notion со структурой и перечнем тем с проставленным временем и закреплением темы за интервьюером.

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

Матрица компетенций как инструмент оценки

Когда мы выбираем темы, мы примерно должны прикинуть какие вопросы мы будем задавать. Ведь время ограничено, а кандидата нужно спросить желательно “все”. Конечно спросить все не удается, но мы же должны стремиться к идеалу.

Вопросы по темам можно взять в матрице компетенций. На просторе интернета их сотни и сотни, но не каждая матрица отражает специфику вашей работы и ваших требований к кандидату. Выход в такой ситуации тоже есть - собрать всех TL и сделать свою матрицу под требования продуктов / проектов, которые вы создаете. Такое решение будет самым лучшим, и эта матрица будет идеально вписываться в процесс собеседования.

Матрица - это всего лишь договоренность о том, как мы будем оценивать, что мы будем оценивать и посредством чего мы будем оценивать. Она может иметь любой вид, но ключевое в ней:

  • Темы

  • Уровни (junior, middle, senior)

  • Вопросы

  • Критерии оценивания

Livecode

Часто многие говорят, что livecode давать - изжило себя. Да и это большой стресс для кандидата - не каждый может при всех в открытую писать код. И в целом заставлять Senior разработчика писать код иногда странно, соглашусь.

Но с другой стороны - это необходимость. Если мы оцениваем человека с небольшим количеством опыта, то livecode обязателен, так как в резюме, к сожалению, можно написать все что угодно. Мы же должны убедиться в умении кандидата писать код, подходить к задаче с разных сторон.

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

Во время livecode я всегда обращал внимание на:

  • На стилистику написания

  • На скорость решения задачи

  • На сложность решения

  • На количество и уместность предложенных решений

Конечная оценка

После прохождения секции, выставляется оценка. Оценка, естественно, выставляется на основе ответов кандидата, результата livecode. Дается краткая характеристика, пишется обратная связь.

Интересный факт
Если матрица компетенций хорошо работает и достаточно “отлажена”, то два интервьюера дают независимо друг от друга одинаковую оценку

Итог

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

Ведущий: Nick
16:00 Приветствие, план собеседования — ведущий
16:15 Вопросы по проектам с предыдущего места работы — помощник ведущего
16:30 Общие вопросы (CI/CD, архитектурные принципы) — помощник ведущего и ведущий
16:45 livecode-сессия — Ведущий
.....

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

Стоит обратить внимание на фиксацию ответов. Иначе оценку в дальнейшем выставить будет очень сложно (вы можете все что угодно забыть)

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

Беседа с TL

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

Кандидат ищет для себя комфортное место работы, где его нервная система будет в покое, где он сможет получать адекватную обратную связь, развиваться и быть частью команды. Все что я перечислил - зависит от TL команды. И задача кандидата определить не токсик ли TL, а задача TL определить сможет ли кандидат взаимодействовать с командой и с ним.

Здесь нет жестких критериев оценивания кандидата. Возможно результатом такого собеседование станет какое-то подобие психологического портрета кандидата, но это уже космос.

Обычно здесь принимается решение о возможности сотрудничества с кандидатом.

Обратная связь

Самая спорная часть статьи.

Не все пишут развернутый фидбек в конце технического или не технического собеседования. Иногда просто не хватает времени, но мне кажется фидбек кандидату - это хорошая тенденция.

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

Я часто прикрепляю нужные статьи по темам, какие-то источники информации, общие рекомендации, которые помогут соискателю подтянуть уровень знаний. Кто знает, может через несколько месяцев (или лет) мы снова встретимся на собеседовании.

Заключение

О чем все это?

О том, что даже такой “конвейерный” процесс, как собеседования может иметь человеческое лицо, где каждому соискателю дают трезвую оценку без надменности (которая иногда встречается на собеседованиях в некоторых компаниях). И процесс выставления этой оценки - это не просто мнение одного человека, а целая система.

В свою очередь, система должна быть отлажена. С матрицей компетенций, с критериями оценивания, с нетиповыми вопросами и доброжелательным отношением к соискателю.

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

Как мне кажется, с таким процессом очень быстро можно собрать команду, которая будет сворачивать горы.

Благодарности

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

Хочу поблагодарить:
Senior Frontend - разработчика Дмитрия Тусаева,
PM Андрея Пономаренко,
TL Юрия Секина,
L&D специалиста Нелли Лакосину,
HR Елизавету Лагиреву,
TL Станислава Шурупина,
TechLead Backend Дмитрия Яковлева

Комментарии (13)


  1. Elpi
    03.01.2022 15:26

    1. Вычленен скелет, голая суть без излишеств. Это гравится.

    2. Везде упоминается про обратную связь и критерии оценки. Тоже нравится.

    3. Слишком много англицизмов.

    4. Не уверен, что скелет адекватно выстроен. Чего-то мне не хватает, а что-то вызвает сомнения уместностью.

    5. Автор упоминает психпортрет (как космос). Тут масса вопросов сразу возникает. Достаточна ли компетенция для составления таких документов? По каким критериям подтверждается? Для кого портрет предназначен? Если, не дай Бог, для соискателя - то понимает ли автор свою ответственность?

    6. Автор говорит об обратной связи для кандидата. Опять же, много вопросов. Стоит ли таким образом тратить оплачиваемое компанией рабочее время сотрудника? Какую ценность это может представлять для кандидата? Сможет ли он извлечь эту пользу? Уверен ли автор, что кандидат будет адекватно оценивать? или это нанесет ему психическую травму?

    В целом понравилось. Но - на мой взгляд - можно было бы чуть расширить. Ну и почистить язык.


    1. gecube
      03.01.2022 19:52
      +1

      Автор говорит об обратной связи для кандидата. Опять же, много вопросов. Стоит ли таким образом тратить оплачиваемое компанией рабочее время сотрудника? Какую ценность это может представлять для кандидата? Сможет ли он извлечь эту пользу? Уверен ли автор, что кандидат будет адекватно оценивать? или это нанесет ему психическую травму?

      имхо, обратную связь стоит давать. Это ситуация win-win. Потому что, во-первых, кандидат точно понимает, что ему стоит подтянуть. Во-вторых, это создает у кандидата позитивное отношение к работодателю. Не забывайте, что кандидат (в третьих) может прийти через полгода и год к вам повторно. И лучше, если он уже будет соответствовать вашим ожиданиям от его компетенций.

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


      1. elamaunt
        04.01.2022 02:33

        Можно просто спросить самого кандидата, нужна ли ему обратная связь независимо от того, будет ли оффер или нет. Сразу снимается вопрос о том, стоит ли это делать. Репутация компании не страдает, кандидат лишний раз не ущемлен и время просто так не тратится.


  1. Elpi
    03.01.2022 21:39

    1. Я работодатель. РК (руководителю команды) зарплату плачу я. А он самостоятельно тратит время на письма к человеку, который в компании не работает и ей, как выяснилось, не нужен. Правильно ли это? Не уместнее промолчать и продолжить выполнять свои обязанности?

    2. По сути. Почему вы неявно полагаете, что ваша обратная связь будет содержательной, компетентной и объективной? Это, как правило, просто субъективное мнение отдельного индивида, родившееся под влиянием совокупности объективных и субъективных факторов. Зачем, понимая, что это лишь мое субъективное мнение, его "вываливать" на другого человека? Я ему отказываю - как можно прогнозировать его реакцию? Может, он будет кланяться и благодарить за науку. А может, начнет травлю против компании. Или против меня. Оно мне надо? Тем более, что - подчеркну - я не могу быть уверенным в полноте и объективности своего отзыва. Возможно, у вас и у автора иное мнение - но я по опыту полагаю, что правильнее промолчать.

    3. По этим же причинам эта ситуация вовсе не типа win-win. Понимаю, очень хочется. Но желательно сохранять объективность.

    4. Наконец, главное. Автор пишет, что при исполнении этой процедуры можно набрать команду, способную "своротить горы". Т.е. он верит в волшебную силу регламентов и БП. А я знаю, что решение принимает иррациональное "ядро" личности РК. Которое неизученными способами коммуницирует с психикой кандидата. Да, процедуру можно и нужно четко организовывать, прописать, подготовить. Это верно и я об этом сказал. Но не надо думать, что после получения всех ответов решение можно получить простыми арифметическими операциями. Цель процедуры совсем другая. Хорошая сильная команда - это не следствие процедур. Это следствие природной одаренности и личностной зрелости лидера команды.


    1. GospodinKolhoznik
      03.01.2022 21:50
      +1

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

      У-у, как всё запущено!


    1. gecube
      03.01.2022 21:52
      +3

      Вы комментом промазали. Потому что по тексту похоже отвечали мне.

      Я работодатель. РК (руководителю команды) зарплату плачу я. А он самостоятельно тратит время на письма к человеку, который в компании не работает и ей, как выяснилось, не нужен. Правильно ли это? Не уместнее промолчать и продолжить выполнять свои обязанности?

      Потому что интервьювер ВСЕ РАВНО это должен делать, чтобы оценка была максимально объективная. Во многих же компаниях как - есть общий пул кандидатов, которых предлагают разным внутренним командам. По скиллам интервьюируемого. Поэтому добавочные затраты на нормальный отзыв по сути нулевые. Это раз. Два. Если Вы говорите так, то скорее всего это означает, что процессы найма у Вас не поставлены на поток. Т.е. Вы нанимаете людей от раза к разу. Ну, это, наверное, не так уж и плохо, но просто данность. В третьих, что значит "самостоятельно тратит время на письма"? Вы сейчас пытаетесь вымарать весь процесс найма зачем-то. Какую цель преследуете? Просто если дальше продолжать - давайте вообще не будем проводить собеседования, а фигли - руководитель команды же должен заниматься руководством, а не собеседованиями, так ? И линейных сотрудников тоже отстраним. В такой парадигме идеальным собесом будет дать кандидату тестовое задание и пускай его машина оценивает. Как думаете, что потом с Вашей воронкой найма будет?

      Это, как правило, просто субъективное мнение отдельного индивида, родившееся под влиянием совокупности объективных и субъективных факторов.

      ставьте на собеседование конкретные вопросы, конкретные ситуации, которые предполагают детерминированные ответы. Приглашайте более 1 интервьюера. Ах, да, я забыл, что это дорого :-D А им еще код писать надо для продуктива... Уверен, что есть масса способов снизить субъективность собеседования. А еще попробуйте поставить себя на место кандидата. Что лучше - получить отказ в духе "у тебя еще мало хард скиллов, точка, диалог окончен" или все-таки развернутый ответ в духе "нам кажется, что у тебя немножко подкачала часть по траблшутингу линукса, подучись и мы тебя с радостью готовы увидеть через полгода"?


      1. Elpi
        04.01.2022 00:15

        Да, вам. Судя по вашему тексту, вы в теме. Я - не совсем, это не моя профессия. Тогда давайте я вас спрошу, возможно, я чего-то не понимаю.

        Во-первых, я не предлагал упразднить процедуру найма, это вы мне приписать пытаетесь. Размещение вакансий, первоначальный отсев, формальные проверки навыков - отлично. В статье это написано. Речь о стадии собеседования с РК. Вопрос - кто принимает окончательное решение о найме (говорю только об этой цепочке, не про начальников утверждающих, если есть)? Не вообще, давайте конкретно по этому тексту - кто принимает решение? Далее, что является принципиально важным для этого сотрудника? образование, стаж, формальные навыки? способность работать в команде? человеческая совместимость с непосредственным руководителем команды? Что? Ведь у вас после 2 этапов отсева, допустим, есть 3 формально равных кандидата. Кадры свою работу сделали нормально. Но кто в итоге будет принят и почему?

        Во-вторых, вы понимаете, что чем больше вы формализуете процедуру, тем меньше информации получите о кандидате? Или вы подгоняете тесты типа MMPI? И вы напрасно иронизируете о дороговизне. Деньги любят счет. Поскольку я от темы достаточно далек, спрошу о критериях, по которым оценивается (должна объективно и надежно оцениваться) работа кадровиков? И кем? В какой команде играет РК (teamleader) - с кадровиками в их высокоинтеллектуальной процедуре найма или за свой проект? Ему кто требуется? формально прошедший сито отбора - или член команды, на которого можно положиться? Способны кадровики помочь ему именно в последнем вопросе?


        1. gecube
          04.01.2022 10:45

          Небольшой disclaimer - я тоже, как и Вы, не являюсь HR, но зачастую участую в собеседованиях как технический специалист. Изредка - как бенефициар процесса.

          Не вообще, давайте конкретно по этому тексту - кто принимает решение?

          ок

          Далее, что является принципиально важным для этого сотрудника? образование, стаж, формальные навыки? способность работать в команде? человеческая совместимость с непосредственным руководителем команды? Что?

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

          Ведь у вас после 2 этапов отсева, допустим, есть 3 формально равных кандидата. Кадры свою работу сделали нормально. Но кто в итоге будет принят и почему?

          ох, сложный вопрос :-) Не было такой ситуации. На рынке такой лютый кадровый голод, что кранты. Но если бы, предположим, было 3 равных кандидата - вообще нет никакой разницы кого нанимать, не так ли? Ну, или можно было бы ввести дополнительные критерии оценки. Например, желаемый уровень з/п. Или поговорить о мотивации, чтобы понять, насколько долго "пассажир" с нами. В конце-концов не делать же из 3 кандидатов игру кальмара на выживание? :-) И, да, нормальная работа кадров - это когда сотрудник оформлен и прошел испытательный срок, а не просто предложен для рассмотрения команде или РК.

          В какой команде играет РК (teamleader) - с кадровиками в их высокоинтеллектуальной процедуре найма или за свой проект?

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

          Способны кадровики помочь ему именно в последнем вопросе?

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

          Ну, окей, как минимум, HR могут отфильтровать людей, которые прыгают по работам, на первичном интервью. Понять мотивированность. И все такое.

          что чем больше вы формализуете процедуру, тем меньше информации получите о кандидате?

          не факт.

          Поскольку я от темы достаточно далек, спрошу о критериях, по которым оценивается (должна объективно и надежно оцениваться) работа кадровиков? 

          т.к. заказчиком работы кадровиков HR является в конечном счете бизнес - он и определяет. Какие метрики, на мой взгляд важны:

          • время закрытия вакансии (очевидно, в комментах не нуждается)

          • attrition (текучка кадров, очевидно, что HR должны на нее влиять - как через найм мотивированных и высококлассных спецов, так и через создание комфортной атмосферы внутри компании, внутреннее обучение, все такое, плюс удержание сотрудников). Причем речь о "плохом" attrition. Я думаю, что сюда же можно как-то посчитать ситуации, когда человек не проходит исп. срок.

          • наверное, где-то еще должна фигурировать стоимость найма (это как раз все то, что мы с вами пытаемся сэкономить и возможно - принять решение, что нам выгоднее работать с КА, чем искать самому).

          Метрики, конечно, любопытно было бы посмотреть, но опять же это про эффективность работы HR. И, да, я кадры зачеркнул, потому что это точно не речь про то, как мы оформляем сотрудника и с какой скоростью даем ему ноутбук и доступы. HR - это все-таки чуточку более широкое явление. Более полный список метрик можете посмотреть, например, https://www.linkedin.com/pulse/70-hr-metrics-examples-build-your-own-dashboard-issam-assaf/


          1. Elpi
            04.01.2022 12:45

            Спасибо за ответ. Многое стало понятнее. Прежде всего то, что вы правильно расставляете акценты. А то из текста статьи многое не очевидно.

            Например, насколько РК может идти против кадров? не получит он в свою запись слова о том, что плохо выстраивает отношения с коллегами? Кадровикам ведь важно показать свою значимость.

            Про критерии полезности кадровиков согласен. Хотя я бы предпочел видеть скрин отчета, который предоставляется руководству. Какие критерии и как считаются. При условии, что это не отчет по запросу, а отчет, самостоятельно построенный руководителем на текущих данных в БД.

            Я люблю все примерять на себя. И всегда спрашиваю консультантов, что и как они бы делали для себя. Вот вы, допустим, накопили и заняли денег на собственную компанию по разработке ПО. Для определенности, на 100 сотрудников. Бились за заказы, "работали печенью" с нужными людьми. И вот какой HR отдел вы бы себе выстраивали? в порядке приоритетности выделения ставок?

            Для меня очевидно, что коллеги рассуждаю с точки зрения кадров как подразделения крупной компании. Им спустили бюджет - они его пилят и доказывают свою полезность. Добиваясь увеличения бюджета. А меня интересует ситуация с точки зрения максимальной эффективности. И не кадров - а всей организации в целом. Согласитесь, это много шире. Поэтому и вопрос - а как бы сделали вы?

            Да, про 3 равных кандидатов. Не готов с вами согласиться. Не бывает одинаковых людей. И после общения с РК они ранжируются. Т.е. окончательный выбор не случайный - а по личным ощущениям заказчика.

            Кстати, недавно моя сестра в стартап в Бостоне устраивалась. Не увидел особой разницы с моим пониманием. Вначале "входной фильтр" КА. А потом все одно свободное собеседование с заинтересованным лицом, который и решает, кто ему подходит.


    1. sad_random
      05.01.2022 21:26
      +1

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


  1. vutmuk123
    03.01.2022 23:46
    +1

    уровень проверок для приема на работу в ит где-то на уровне службы на ядерной ПУ.


  1. dimoff66
    04.01.2022 09:48

    Во время livecode я всегда обращал внимание на:

    • На стилистику написания

    • На скорость решения задачи

    • На сложность решения

    • На количество и уместность предложенных решений

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


    1. Nikita_Churakov Автор
      05.01.2022 22:29
      -1

      Лайвкодинг дается всегда выборочно. Плюс мы спрашиваем отношение кандидата к этому процессу. Если он не хочет, или предупреждает, что стрессует в такие моменты - мы пытаемся найти компромисс. Но это относится к старшим разработчикам senior / high middle уровня. На junior-уровне лайвкод нужен. Да и потом - проводить лайвкод тоже надо уметь. Допустим, попросить кандидата сначала провести анализ задачи и решить ее на словах