Список крутых редких вопросов для тех. собеса.

От разработчика разработчикам, то, что я мечтаю чтобы спросили меня (но не спрашивают 🥲).

Сперва я хотел выделить классные / любимые вопросы, а потом понял, они почти все такие, от сердца отрываю.🙂

1. Покажите примеры кода, попросите указать на проблемы, найти их максимальное количество. - Лучший вопрос! Он банально экономит время.

2. Попросите написать абстракцию и интерфейсы для мини кейса, например заказ в ресторане,  какие поля у официанта, заказа, меню? Показывает насколько хорошо человек понимает архитектуру и взаимосвязь кода и умение предвидеть проблемные места.

3. Разбивайте вопрос на подуровни сложности: 3.1. Какие неизменяемые типы есть в пайтоне. (Любимый вопрос для джунов). 3.2. Как создать такую структуру самому? 3.3. В чем реальный смысл с точки зрения айти теории?

4. Какие 3 самых сложных бага вы встречали? Именно сложность багов отражает реальный уровень, это самый быстрый способ оценить кандидата.

5. Какие самые необычные / крутые / редкие методы приходилось использовать или реализовывать? Глубокий вопрос, среди прочего показывает опыт и специфику, насколько глубоко кандидат знаком с фреймворком / библиотекой / технологией или может ее повторить. Не всегда такие методы есть, иногда они совсем стандартные и выделять буквально нечего.

6. Реализация каких задач / функций займет больше времени (предоставьте их условия, ТЗ) ? Вопрос на правильную оценку времени и сложности, можно сверять с оценкой ваших сотрудников.

7. Назовите любимые хоткеи, алиасы, часто используемые команды в ОС / терминале / программе для работы. Показывает насколько тесно и быстро человек работает.

8. Любимые плагины, скрипты и автоматизация? - вопрос неоднозначный потому что многие вещи могут быть встроены в ide, т.е. ответ нужно будет правильно интерпретировать.

9. Какие области и техники считаете лёгкими и сложными, расположите по порядку (тут можно предоставит список вашего стека).

10. Насколько считаете продукт узкоспециализированным (или нет)? Для программиста, при достаточном отдалении, кругозоре / насмотренности, любой сервис это форма ввода данных в БД. Вопрос сколько ступеней / абстракций будет учтено. Как сказал илон Маск: "Твиттер это просто раздутый текстовой мессенджер".

11. Дайте названия функциям (и рядом из код). Спойлер - в разработке сформировался очень устойчивый стиль именования, терминология, это примерно 20 конкретных слов почти на каждый случай, соответственно применения, различия и кейсы тоже можно спросить.

12. Напишите комментарий / документацию к готовому коду (предоставьте код). Вопрос не нуждается в комментариях😅.

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

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

15. Покажите список импортов (библиотек / фреймворков), спросите какие использовал и попросите назвать основные методы. Стандартная библиотека тоже подойдёт.

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