Пять вопросов которые я задал бы на собеседовании.

1. Задача про часы

Что проверяем: абстрактное мышление, поиск решений.

Зачем: если способен абстрактно мыслить и самостоятельно искать решение, то сможет решать сложные задачи.

2. Fizz Buzz

Что проверяем: умение писать код.

Зачем: убедиться, что перед нами действительно программист.

3. Уровень знания OOP, паттернов, архитектурных принципов

Что проверяем: соответствует ли уровень знаний минимальному уровню для вакансии?

Зачем: иногда нет времени или свободных ресурсов чтобы несколько месяцев обучать ООП и вытаскивать на нужный уровень.

4. Навык командной работы

Что проверяем: как будет себя вести в сложной ситуации с которой не справляется?

Зачем: придëтся ли учить его командной работе? Это может быть сложно.

5. Писал ли он что-то для себя?

Что проверяем: нравится ли ему писать код?

Зачем: если пишет что-то для себя, то получает удовольствие от программирования, это плюс.

Мой опыт проведения собеседований

Когда в 2018 году я набирал людей в команду, задавал 4 из этих 5 вопросов.

Связано с вопросами или нет, но команда подобралась отличная.

Как составить список

Список вопросов отражает то что важно лично для меня. Для вас он может быть какой угодно.

Но спрашивая что-то на собеседовании, пожалуйста, убедитесь, что вы понимаете:

  1. А что мы собственно хотим проверить этим вопросом?

  2. Для чего нужно это проверять, зачем мы хотим это знать?

Если внятного ответа не получается, то нужно ли вообще задавать такой вопрос?