ElenaHarris
New member
Когда мы с партнёром запускали свой первый продукт, я был уверен, что нанять разработчика — это как нанять дизайнера: посмотрел портфолио, поговорил, взял. Реальность оказалась больнее. Первого кандидата мы отсеяли на тестовом, второй прошёл всё, отработал три месяца и ушёл, оставив после себя половину кодовой базы, в которой не разбирался даже он сам. С тех пор я провёл десятки собеседований и выработал несколько правил, которыми хочу поделиться.
Самое важное, что я понял: тестовое задание нужно не для того, чтобы проверить, умеет ли человек писать код. Это проверяется по резюме и паре вопросов. Тестовое нужно, чтобы увидеть, как человек думает, когда задача сформулирована криво и никто не подскажет. Поэтому мы даём не алгоритмическую головоломку, а кусок реальной продуктовой задачи: небольшой сервис, парсинг данных, простенький API. Два-четыре часа работы, не больше. И обязательно предупреждаем, что идеального решения не ждём.
Отдельно про оплату тестового. Если задача занимает больше двух часов, я плачу. Не потому что я добрый, а потому что бесплатные многочасовые тесты отсеивают сильных кандидатов с горящим рынком — они просто не станут тратить вечер на вашу «небольшую задачку для галочки». А слабые соглашаются. Получается обратная селекция, ровно наоборот от того, чего вы хотите.
На собеседовании я почти не спрашиваю про технологии. Спрашиваю про прошлые проекты: что было самым сложным, что бы сделал иначе, почему выбрал именно этот стек, с кем конфликтовал и как решал. Хороший разработчик легко рассказывает про грабли и ошибки. Плохой — рассказывает только про успехи и как всё было идеально спроектировано с первого раза. Это враньё, потому что так не бывает, и я это слышу сразу.
Красные флаги, которые для меня теперь стоп-сигнал. Первый: кандидат не задаёт ни одного вопроса про продукт, команду и бизнес. Ему интересен только стек и зарплата — значит, через полгода он уйдёт на проект с более модным стеком и плюс двадцать процентов. Второй: на вопрос «почему у вас на прошлом месте так вышло» отвечает исключительно про плохих менеджеров, тупых коллег и глупый бизнес. Возможно, всё так и было, но человек, который ни разу не сказал «я ошибся», в стартапе будет токсичен. Третий: агрессия на уточняющие вопросы. Спросил, почему выбрал эту библиотеку, — а в ответ раздражение и «а вы вообще в теме?». В маленькой команде такая реакция на обычное любопытство выстрелит на второй неделе.
Четвёртый флаг, самый дорогой: неумение сказать «я не знаю». Я специально задаю вопрос за пределами его компетенции, чтобы посмотреть на реакцию. Нормальный человек говорит: «Не работал с этим, но вот как я бы подошёл». Плохой начинает выкручиваться, выдумывать термины и нести чушь с уверенным лицом. В стартапе, где всё делается впервые и наугад, умение честно признать незнание — это половина выживания команды.
Что реально важно для первого найма? Не миллион лет опыта, а чувство ответственности за результат. Я всегда спрашиваю: «Что вы сделаете, если через неделю после релиза окажется, что фича не работает, а вас никто не просил её проверять?» Правильный ответ — что-то вроде «пойду разбираться сам, а потом скажу команде». Формально это не его работа. Неформально — именно такие люди вытаскивают продукты. Ещё я всегда беру испытательный срок и говорю об этом прямо: три месяца, обе стороны смотрят, никто не обижается. Честность на входе экономит месяцы взаимного раздражения.
И последнее, уже про деньги. Первому программисту не обязательно платить как в корпорации, но и торговаться до последнего рубля глупо. Вы покупаете не строчки кода, а человека, который будет рядом, пока вы ищете продукт-маркет фит. Дешёвый senior, которого вы выторговали на двадцать процентов, уйдёт через полтора месяца к тому, кто предложил больше. Дешевле сразу договориться по-человечески и не пересматривать условия каждые три месяца.
А теперь вопрос к вам, форумчане. Какой самый неожиданный красный флаг вы ловили на собеседованиях, который в итоге оказался стопроцентным предсказанием провала? Поделитесь — вместе мы соберём народную энциклопедию найма, которая сэкономит кому-то первому месяцы работы и кучу денег.
Самое важное, что я понял: тестовое задание нужно не для того, чтобы проверить, умеет ли человек писать код. Это проверяется по резюме и паре вопросов. Тестовое нужно, чтобы увидеть, как человек думает, когда задача сформулирована криво и никто не подскажет. Поэтому мы даём не алгоритмическую головоломку, а кусок реальной продуктовой задачи: небольшой сервис, парсинг данных, простенький API. Два-четыре часа работы, не больше. И обязательно предупреждаем, что идеального решения не ждём.
Отдельно про оплату тестового. Если задача занимает больше двух часов, я плачу. Не потому что я добрый, а потому что бесплатные многочасовые тесты отсеивают сильных кандидатов с горящим рынком — они просто не станут тратить вечер на вашу «небольшую задачку для галочки». А слабые соглашаются. Получается обратная селекция, ровно наоборот от того, чего вы хотите.
На собеседовании я почти не спрашиваю про технологии. Спрашиваю про прошлые проекты: что было самым сложным, что бы сделал иначе, почему выбрал именно этот стек, с кем конфликтовал и как решал. Хороший разработчик легко рассказывает про грабли и ошибки. Плохой — рассказывает только про успехи и как всё было идеально спроектировано с первого раза. Это враньё, потому что так не бывает, и я это слышу сразу.
Красные флаги, которые для меня теперь стоп-сигнал. Первый: кандидат не задаёт ни одного вопроса про продукт, команду и бизнес. Ему интересен только стек и зарплата — значит, через полгода он уйдёт на проект с более модным стеком и плюс двадцать процентов. Второй: на вопрос «почему у вас на прошлом месте так вышло» отвечает исключительно про плохих менеджеров, тупых коллег и глупый бизнес. Возможно, всё так и было, но человек, который ни разу не сказал «я ошибся», в стартапе будет токсичен. Третий: агрессия на уточняющие вопросы. Спросил, почему выбрал эту библиотеку, — а в ответ раздражение и «а вы вообще в теме?». В маленькой команде такая реакция на обычное любопытство выстрелит на второй неделе.
Четвёртый флаг, самый дорогой: неумение сказать «я не знаю». Я специально задаю вопрос за пределами его компетенции, чтобы посмотреть на реакцию. Нормальный человек говорит: «Не работал с этим, но вот как я бы подошёл». Плохой начинает выкручиваться, выдумывать термины и нести чушь с уверенным лицом. В стартапе, где всё делается впервые и наугад, умение честно признать незнание — это половина выживания команды.
Что реально важно для первого найма? Не миллион лет опыта, а чувство ответственности за результат. Я всегда спрашиваю: «Что вы сделаете, если через неделю после релиза окажется, что фича не работает, а вас никто не просил её проверять?» Правильный ответ — что-то вроде «пойду разбираться сам, а потом скажу команде». Формально это не его работа. Неформально — именно такие люди вытаскивают продукты. Ещё я всегда беру испытательный срок и говорю об этом прямо: три месяца, обе стороны смотрят, никто не обижается. Честность на входе экономит месяцы взаимного раздражения.
И последнее, уже про деньги. Первому программисту не обязательно платить как в корпорации, но и торговаться до последнего рубля глупо. Вы покупаете не строчки кода, а человека, который будет рядом, пока вы ищете продукт-маркет фит. Дешёвый senior, которого вы выторговали на двадцать процентов, уйдёт через полтора месяца к тому, кто предложил больше. Дешевле сразу договориться по-человечески и не пересматривать условия каждые три месяца.
А теперь вопрос к вам, форумчане. Какой самый неожиданный красный флаг вы ловили на собеседованиях, который в итоге оказался стопроцентным предсказанием провала? Поделитесь — вместе мы соберём народную энциклопедию найма, которая сэкономит кому-то первому месяцы работы и кучу денег.