Привет! Меня зовут Алексей Стратонов, я экс-техлид Авито Недвижимости. До Авито я 8 лет проработал в аутсорсе: управлял четырьмя отделами, успел нанять и уволить многих, в том числе руководителей. В аутсорсе есть специфика — зарплаты тут ниже, а задачи те же, что и в продукте. Поэтому тимлид должен уметь собирать команды под определенный проект и качественно собеседовать.

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

Что внутри статьи:

Мои «нет» в кандидатах

Мои «да» в кандидатах

Немного про возраст

Чем мотивировать сотрудников

Напутствие тимлидам

Мои «нет» в кандидатах

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

Хорошая новость в том, что вычислить таких ребят просто: на финальном этапе собеседования задавайте им открытые вопросы или уточняющие, если они отвечают односложно и стандартно. Как пример — один из финальных вопросов: «в чем заключается интерес бизнеса?». Если кандидат отвечает простое «в прибыли», можно уточнить: «а существуют ли бизнесы, главный интерес которых — не прибыль?». Так вы поймете, как человек мыслит и понимает ли, о чем говорит. Для меня важно услышать рассуждение человека, поэтому можно задавать больше проверочных вопросов: 

  • любой ли бизнес нужен для зарабатывания денег? 

  • а как же пирамида Маслоу? 

  • а где здесь интересы пользователей? Как они сходятся с интересами бизнеса?

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

Обычно хороший специалист владеет несколькими языками программирования хотя бы на уровне понимания. Это позволяет широко смотреть на проблемы и находить нетривиальные решения. Например, декораторы в Python — это более мощный инструмент, чем аннотации в Java. А зная, как работают потоки в Java, легко разобраться с горутинами в Go.

Я собрал несколько моих «красных флагов» в кандидатах — ниже расскажу про них подробнее.

Инженер банально и односложно отвечает на вопросы

Разберу это на примере реального вопроса с собеседования.

Вопрос: «Был ли ты с чем-то не согласен внутри своей команды? Как ты решал эту проблему?»

90% кандидатов отвечают, что их не устраивали длинные митинги — это дефолтный ответ. Обычно в командах есть много процессов, и если самое интересное, что смог выбрать инженер, это проблема длинных встреч — значит он был не до конца погружен в процессы своей команды.

Плохой диалог с кандидатом:

- Что тебя не устраивало в процессах команды?
- Длинные митинги

- Как ты решил эту проблему?
- Пошел к тимлиду, и он решил разделить большую встречу на несколько маленьких.

Почему? Тимлид всё решил за кандидата — это говорит о том, что человек не особо заинтересован в улучшении процессов и, возможно, придумал этот ответ на ходу.

Чуть лучше, но все равно не очень:

- Что тебя не устраивало в процессах команды?
- Длинные митинги.

- Как ты решил эту проблему?
- Предложил тимлиду разделить встречу на несколько маленьких.

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

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

Лучший ответ:

- Что тебя не устраивало в процессах команды?
- Длинные митинги.

- Как ты решил эту проблему?
- Сначала предложил разделить митинги по направлениям разработки, но потом обсудил с тимлидом, и мы решили разделить их по проектам. Тогда коллеги будут ходить на встречи только по своим задачам и не тратить время на другие.

Почему? Кандидат предложил решение и доработал его вместе с тимлидом — значит он инициативный и умеет работать в команде. А решение сделать отдельные встречи под каждый проект действительно экономит время.

Жми сюда!

Инженер не умеет планировать

Может показаться, что на собеседовании невозможно проверить, как человек планирует. Но на самом деле это легко: нужно спросить про внерабочие планы кандидата на полгода, год и три года. Это даст понимание, умеет ли человек планировать краткосрочно, среднесрочно и долгосрочно. Худший ответ: «А как в наше время можно что-то планировать?». Для меня это серьезный красный флаг — человек не берет ответственность за свою жизнь в свои руки и рассчитывает, что все решится как-нибудь само.

Но если у кандидата есть планы только на полгода — скорее всего, это низкоквалифицированный инженер. У нас в Авито часто бывают абстрактные задачи: например, нужно сделать профиль риэлтора. Никаких больше вводных — и инженер уровня Е5 должен сам разобраться в ней, задать вопросы тимлиду и спрогнозировать сроки реализации. Все это невозможно, если инженер не умеет планировать долгосрочно: тогда посыпятся все дедлайны.

Мои «да» в кандидатах

Теперь к «зеленым флагам» — собрал их по убыванию важности:

  • Кандидат точно знает, чего хочет

Это, опять же, про планирование. Однажды у меня на собеседовании был 22-летний дата-инженер, который учился на бэкендера в университете. Он хотел начать применять знания, которые получает в ВУЗе, на практике, а предыдущее место работы не могло дать ему эту возможность прямо сейчас — только через год. Кандидат решил не ждать и поискать другое место — и меня подкупило то, что он четко знал, что ему нужно от работы.

  • Кандидат рассуждает и задает вопросы

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

  • Кандидат открыт к общению

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

  • Кандидат не читерит

Всегда видно, когда человек пользуется подсказками: «книжные» ответы из ChatGPT или со слитых собеседований, использование заумных слов бросаются в глаза. Когда у меня есть подозрение, что кандидат откуда-то читает ответы, я задаю ему один и тот же вопрос с интервалом — такие ребята обычно отвечают на них по-разному.

Немного про возраст

И я сейчас не про эйджизм: у нас есть ожидания от каждого возраста, и это нормально в контексте найма в команду. Например, если человек в 40 лет постоянно путешествует и не живет в одном месте — это показатель нестабильности в жизни. А для 20-летнего — это нормально и не будет вызывать вопросов.

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

Возраст может быть и красным флагом: если человеку 30 лет, а последние 2 года он нигде не работал, это напрягает. Если до этого времени у человека нет стабильности в жизни, вряд ли стоит ждать ее на работе.

Чем мотивировать сотрудников оставаться в компании (кроме денег)

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

  • Прозрачность

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

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

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

  • Профессионализм коллег

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

  • Ответственность и безопасность

В Авито есть архитекторы, с которыми инженеры согласуют придуманные технические решения. И у разработчика может возникнуть мысль: зачем самому продумывать и прорабатывать идею, если архитектор может сделать это за меня? Я стараюсь это пресекать: инженер должен быть лидом своей идеи и уметь брать ответственность за нее.

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

  • Неформальное общение

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

Сотрудники на таких встречах отдыхают, а тимлиды — работают. Нам нельзя много пить и нужно найти время на каждого своего подчиненного, чтобы поговорить по душам. Это как обычный 1-2-1, только с пивом.

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

Тут еще больше контента

Небольшое напутствие тимлидам

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

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

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

А какие лайфхаки применяете на собеседованиях используете вы? Доводилось ли вам сталкиваться с какими-то из этих приемов в качестве соискателя? Расскажите о своем опыте и поделитесь мнением в комментариях!

Удачи вам на тимлидском пути!