Как ответить
Да, занимался. На прошлом месте я участвовал в найме трёх разработчиков за полтора года: двух middle и одного senior. Моя роль была технической — я не решал финально, кого брать, но моя оценка была решающей.
Вот как это выглядело на практике:
- Скрининг резюме. Я просматривал стек и опыт в стеке, который мы использовали (PHP, Laravel, PostgreSQL). Отсеивал тех, кто писал «Java» в ключевых навыках, но не упоминал наш стек. Из 50 резюме в среднем оставалось 10-12.
- Техническое задание. Мы давали небольшой проект — написать REST API для управления заказами. Ограничение по времени — 4 часа. Я проверял не только работоспособность, но и архитектуру: как кандидат разбивает на классы, использует ли DI, пишет ли тесты. Один кандидат сделал всё за 2 часа, но код был «говнокодом» — всё в одном файле. Я его отклонил.
- Собеседование. Я задавал вопросы по проекту: «Почему ты выбрал именно этот паттерн?», «Как бы ты масштабировал это приложение?». Проверял, как человек мыслит, а не просто знает ли он синтаксис. Например, один кандидат на вопрос про кэширование начал рассказывать про Redis, но не смог объяснить, когда его не стоит использовать.
- Фидбек. После собеседования я писал краткое резюме: сильные стороны, слабые места, риски. Например: «Кандидат хорошо знает Laravel, но слаб в SQL — писал запросы без индексов, что на нагрузке убьёт базу».
Из трёх нанятых двое проработали больше года, один уволился через три месяца — не вписался в команду. Сейчас я бы добавил этап общения с командой перед оффером, чтобы проверять культурную совместимость.