Найм разработчика начинается с ответа на вопрос, какой результат должен появиться благодаря этому человеку. Список из десяти технологий редко помогает: часть навыков осваивается быстро, а ключевыми могут быть самостоятельность, качество решений и умение работать с существующим кодом.
Опишите рабочий контекст
- Что предстоит создавать или поддерживать
- Как устроена команда и кто принимает технические решения
- Сколько legacy и насколько свободен выбор решений
- Какие требования к надёжности и скорости
- Что сотрудник должен сделать за первые три месяца
Определяйте грейд по самостоятельности
Junior решает ограниченные задачи с поддержкой, middle самостоятельно выбирает способ решения типовой задачи и отвечает за качество, senior видит системные последствия, работает с неопределённостью и усиливает других инженеров. Стаж и знание синтаксиса не заменяют эту разницу.
Как изучать опыт
Выберите один релевантный проект и разберите его глубоко: цель, ограничения, архитектурное решение, альтернативы, личный вклад, ошибки и результат. Такой разговор сложнее подготовить по шаблону, чем ответы на набор теоретических вопросов.
Техническая оценка
- Короткий code review существующего фрагмента
- Проектирование небольшой системы
- Парное решение ограниченной задачи
- Разбор инцидента или ошибки
- Обсуждение компромиссов производительности, сроков и поддержки
Формат должен быть близок к реальной работе и занимать разумное время. Большое домашнее задание отталкивает занятых специалистов и не гарантирует, что его выполнял сам кандидат.
Мотивация и предложение
Уточните, какие задачи кандидат хочет решать, что его не устраивает сейчас и по каким критериям он сравнивает предложения. В оффере зафиксируйте роль, доход, формат, дату пересмотра, испытательный срок и договорённости о команде.
Финальная проверка
Перед решением сопоставьте оценки всех интервьюеров по заранее согласованным критериям. Если команда обсуждает только общее «понравился — не понравился», процесс остаётся зависимым от субъективного впечатления.