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

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

Проблема в том, что IT-индустрия предполагает, что любой опытный разработчик умеет собеседовать других разработчиков. Откуда такое убеждение? Это же вывод, не основанный ни на чём. Он этому обучался? Он что-то специально об этом читал? Он готовился? Не во всех случаях, разумеется, но чаще, чем хотелось бы, ответ на все три вопроса — нет. Потому что и так прокатывает. Тебе говорят — ищем сотрудника под новую вакансию, завтра у тебя собеседование. А у тебя кроме этого собеседования ещё задач столько, что на весь оставшийся день хватит. В итоге всё, что тебе остаётся — прособеседовать так, как когда-то собеседовали тебя, не задумываясь о том, насколько это эффективно.

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

С одной стороны, есть кандидаты, которые специально долго готовились к этим собеседованиям — запоминали ответы на эти вопросы. Нет, конечно, в работе им это не помогает, но собеседования в такие компании им проходить намного проще. В работе они могут ничего из себя не представлять, но интервьюеру не важно, какой код разработчик пишет. Им не важна практика. Заучил ответы наизусть — молодец. Нет — до свидания.

С другой стороны, те, кто специально не готовился, а тратил вместо этого своё время на обучение и практику, такие собеседования проходить вообще не способны. Нет, конечно, на какие-то вопросы они могут ответить. Это может быть даже довольно много вопросов, но обычно далеко не все.

Как результат — легче всего устроиться на работу «джамперам». Люди, которые всю карьеру раз в несколько месяцев меняют работу, лучше всего адаптировались к поиску работы и, в том числе, к таким собеседованиям. Это удивительно: компании не хотят нанимать людей, которые с большой вероятностью уйдут через несколько месяцев, но они строят свой процесс найма так, чтобы очень хорошая вероятность получить оффер была именно у этих кандидатов. Сложнее всего, соответственно, наоборот тем, кто обычно работает в одной компании несколько лет. У них могут быть очень хорошие способности именно в работе, а вот в поиске работы — нет. Такие собеседования они, в среднем, пройти без специальной подготовки не могут.

Разные разработчики — разный опыт, разные приоритеты, разный подход к обучению. Нельзя ожидать, что все учились в университете, прочитали не меньше 10 книг по программированию, запомнили наизусть всё, что есть в стандартной библиотеке и часто используется и теперь будут вам это всё пересказывать, как ребёнок, читающий стихотворение с табуреточки. Есть люди, которые просто много лет пишут код, и делают это так, как может мало кто из тех, кто всё-таки заучил ответы на их идиотские вопросы. Но только они об этом никогда не узнают, потому что этот кандидат, выражаясь словами Роберта Свини, по их мнению, «недостаточно синиор».

Роберт Свини о собеседованиях — перевод
Я отсеял Даниэля Бухмюллера на собеседовании в Netflix. После 60-минутного разговора у меня ещё оставались сомнения, так что я решил, что он, наверное, «недостаточно синиор». Тогда он устроился в Amazon и соосновал Amazon Prime Air (их сервис доставки дронами) и вошёл в список Fast Company «Most Creative People» под номером 2.

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

Robert Sweeney
Founder and CEO
Facet

Роберт Свини о собеседованиях — оригинал (на английском)
I turned down Daniel Buchmueller for a job at Netflix. After a 60 minute interview I was on the fence, so I concluded that he “wasn’t senior enough.” He went to Amazon instead where he co-founded Amazon Prime Air (their drone delivery service) and was #2 on Fast Company’s “Most Creative People” list.

At some point, we programmers are going to have to admit that we really can’t judge another programmers technical abilities in a 60 min interview. We end up hiring programmers that are good at interviewing, but not necessarily good at doing the job. And we miss out on engineers like Daniel.

Robert Sweeney
Founder and CEO
Facet

Поэтому да, так и происходит. Разработчик имеет 10 лет коммерческого опыта в разработке программного обеспечения, у него свободный английский, он работал во многих компаниях на разных проектах, был ведущим разработчиком, однако по итогам такого собеседования получается, что он — мидл.

Доходит до смешного. Бывают интервьюеры-бараны, которые в какой-то момент начинают получать удовольствие от того, что «завалили» кандидата. Там уже вопросы могут специально подбираться таким образом, чтобы кандидат на многие из них не смог ответить.

Компании в 2020 году в среднем потрясающе наивны. Им кажется, что достаточно узнать, заучил ли кандидат ответы на их 20 вопросов, чтобы определить, подойдёт ли он. Соответственно, даже очень хороший кандидат, который круто мог бы делать эту работу, возможно, ответит только на несколько вопросов. Может быть это и могло бы принести хотя бы какую-то пользу в оценке кандидата, но тогда во многих случаях вопросы надо было бы подбирать специально под него. Потому что, если вопросы общие для всех, с чего вдруг они дадут какое-то объективное представление о кандидате? Обычно интервьюер просто спрашивает о том, что хорошо знает сам. Но опыт интервьюера не может и не должен совпадать с опытом всех кандидатов. Они делали другие задачи, использовали другие подходы в разработке, читали статьи других авторов, общались с другими людьми, ходили на другие мероприятия. Если кандидат задаст тому же самому интервьюеру свои 20 вопросов, он точно так же ответит только на нескольких из них. Тогда, получается, он тоже «недостаточно синиор»? Абсурд.

Давайте будем рациональнее. Если вам нужен человек, чтобы делать работу, проверьте, как он делает работу. Ещё можете проверить, как он обучается и насколько легко ему начать использовать технологию, о которой он узнал час назад. Не надо проверять, заучил ли он наизусть ответы на вопросы. Каждый из этих ответов может быть нужен 1 раз в 2 года и гуглится за 3 минуты.

Почитать


На английском

Joel Spolsky: The Guerrilla Guide to Interviewing (version 3.0)
Eduards Sizovs: I never liked technical interviews
Glen McCallum: Senior Developers are Getting Rejected for Jobs

На русском

Вастрик.Инсайд #46 — «Краткий гайд о том, как нанимать нормальных людей»
Перевод статьи «Senior Developers are Getting Rejected for Jobs»
Антон Птицын — «Я провел сто собеседований, отказал сотне людей — и только потом научился собеседовать»