Тестовое задание: что мы вообще пытаемся им проверить?

К тестовым заданиям я отношусь нормально.

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

Но есть момент, который мне кажется интересным.

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

Гораздо интереснее посмотреть: - как человек понял требования; - какие вопросы задал до начала работы; - как декомпозировал задачу; - какие ограничения заметил; - почему выбрал именно такое решение; - какие компромиссы допустил; - подумал ли о тестах и ошибочных сценариях; - и может ли потом спокойно объяснить ход своих мыслей.

Поэтому тестовое, которое реально можно сделать за 2-3 часа, мне вполне понятно.

Но когда для оценки кандидата нужно несколько вечеров собирать почти полноценный кусок продукта, у меня уже возникает вопрос: мы всё ещё проверяем навыки или просто проверяем, сколько времени человек готов вложить в отбор?

Причём большой объём не обязательно даёт более качественный сигнал.

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

Наверное, для меня хорошее тестовое – это не попытка получить идеальный код. Это повод посмотреть, как человек думает.

А где для вас проходит граница адекватного тестового? Час? Три часа? Один вечер? Выходные? Или тестовых вообще быть не должно?

Тестовое задание: что мы вообще пытаемся им проверить? | Сетка — социальная сеть от hh.ru