Ещё один довод против алгоритмических задачек на собеседованиях
Разберём, из-за каких особенностей нашего мозга алгоритмические задачи поджигают задницу и как это прекратить.
Не всё поддаётся сознательным усилиям
Модель Медицинской школы Стэнфордского университета выделяет в человеческом мозге три функциональные сети.

Центральная исполнительная сеть (Central Executive Network) — отвечает за осознанную деятельность и работу с краткосрочной памятью.

Сеть выявления значимости (Salience network) — отвечает за познание: распознавание объектов и событий, их фильтрацию и приоритизацию.

Сеть пассивного режима работы (Default Mode Network) — самая хитрая. Она поглощает отвлекающие сигналы, устанавливает связи между глубинными воспоминаниями и объединяет восприятие себя и окружающего мира в целостную картину. Сеть умеет вытаскивать забытые сведения из глубин памяти и отвечает за способность генерировать новые идеи.

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

Главный вывод: творческие задачи требуют включения сети пассивного режима, а сеть включается в бездействии и рассредоточенности.
Не всегда сложную задачу можно решить с ходу. Иногда её нужно загрузить в мозг и дать ему всё связать.
Из этого следует, что чудес не бывает и если на ваших глазах кто-то решает сложные задачи без обдумывания, то, вероятнее всего, для него эти задачи стали рутиной. Он уже проделал всю подготовительную работу и нужная информация лежит, образно говоря, на поверхности памяти. Ну, или он просто сверхчеловек и его пример нам бесполезен.

Не буду утверждать, что эта теория — абсолютная истина, но идея коррелирует с моим опытом, поэтому примем к сведенью. Попозже расскажу, как это помогает мне в работе, а пока вернёмся к теме статьи.
Поиск решения требует переключения
Сторонники собеседований с алгоритмическими задачами говорят, что алгоритмы хороши для проверки мышления кандидата. Как обычно это выглядит.

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

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

В обычной рабочей ситуации мы не решаем задачи на скорость, а рассуждаем:

  • Обдумываем задачу, прежде чем хвататься за её выполнение
  • Если фиксим баг, который не фиксится, отвлекаемся и решение приходит само собой.
  • Когда делаем код-ревью, то проходимся по коду несколько раз, берём паузу, думаем и пишем комментарии
Мы используем общепринятый приём решения неочевидных задач — не зацикливаться на проблеме, а переключиться на что-то простое. Помыть посуду, погладить кота, сходить в парк. Для творчества нужна сеть пассивного режима, а она включается в спокойной ситуации без эмоционального давления и сознательной концентрации на задаче.
Как сделать правильно
Если работодателю нужно выявить сильные и слабые места кандидата, а не загнобить и сбить зарплатные ожидания, стоит дать кандидату возможность подумать.

Если кандидату нужно что-то накодить или поревьюить, высылайте задание заранее. Например, так делают в ThoughtWorks.

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

Современная разработка состоит не только из алгоритмов и структур данных. Разработчики добрым словом и пистолетом выбивают требования, тушат пожары по аджайлу, общаются с коллегами и руководством. Самый крутой технарь с нулевыми софт-скилами принесёт проекту больше вреда, чем пользы. Особенно если ваше конкурентное преимущество не состоит из одних алгоритмов, как в навигаторах или высокочастотном трейдинге. В большинстве случаев компаниям нужны не гики-энциклопедисты и олимпиадники-с-хакатонов, а адекватные и ответственные специалисты, умеющие осмысленно искать решение.
P. S. А еще мы ведем канал в телеге. Приходите читать полезноту и негодовать в комментариях :)
Читайте также