Как готовиться к таким штукам? Практиковаться! Есть целые сборники вроде «Cracking the Coding Interview» (для разработчиков – настольная библия). Если ты не разработчик, а, скажем, менеджер продукта, тебя могут ожидать продуктовые кейсы: «Как бы вы улучшили наш сервис?» или «Придумайте новую функцию для приложения и обоснуйте». Это аналог интеллектуальной задачки, только без кода.
Общие советы для технического интервью:
Думай вслух. Интервьюеры хотят видеть ход мыслей. Не молчи, строча код как терминатор. Комментируй: «Я бы использовал такой алгоритм, потому что…», «Здесь нужен цикл, который…». Даже если споткнулся, рассуждай.
Задавай вопросы. Часто задачи специально даются без полной информации, чтобы проверить, будешь ли уточнять. Не стесняйся прояснить требования: «А что должно быть на выходе, можно пример?» – это нормально.
Проверяй себя. Решил – пройди на маленьких тестовых примерах, сам найди баги до того, как их ткнет интервьюер. Покажи, что умеешь тестировать свое решение.
Не сдавайся. Если не знаешь решения сразу, скажи: «Интересно, я бы попробовал такой подход…» и начинай пробовать. Хуже, если просто стоишь молча и говоришь «не знаю».
А что делать с легендарными головоломками вроде тех, что приписывают Google (про количество шаров для гольфа, помещающихся в автобус)? Сейчас их меньше спрашивают, предпочитают реальные задачи. Но если уж нарвешься – алгоритм тот же: думай вслух, разбивай проблему на части. Никто не требует точного числа шариков – хотят увидеть, как ты оценишь объем автобуса и шара и получишь приближенный ответ, рассуждая логично. Ну и, конечно, сохраняй спокойствие и юмор: в таких вопросах нет «правильного» ответа, есть только здравый смысл.
Из практики: Мой знакомый программист проходил собеседование в Google. Его предупредили, что будут задачки, и он серьезно готовился: прорешал сотни алгоритмических задач, тренировал «думать вслух». На интервью ему дали сложный головоломный вопрос: сколько зарядных станций нужно для всей линии беспилотных такси в городе? Задача нетривиальная, и правильного ответа как такового не было. Он не растерялся: начал рассуждать шаг за шагом, выяснил у интервьюеров параметры (число такси, пробег на одном заряде и т.д.) и на глазок посчитал примерное количество станций, поясняя логику. После интервью ему сказали, что впечатлены его подходом – большинство кандидатов либо молча тупят, либо бросают попытки. В итоге он получил оффер. Его пример показывает: компании уровня Google ценят не магическое знание всех ответов, а умение аналитически мыслить под давлением. Кстати, он вспоминал, что другой кандидат, пришедший с ним в один день, не задал ни одного уточняющего вопроса и быстро сдался – и не прошел. Так что подготовка и правильная стратегия поведения на таких интервью решают все.
Кейс-интервью и дизайн-задачи
Кроме кода, есть и другой формат, позаимствованный из мира консалтинга: кейс-интервью. Это когда тебе дают бизнес-ситуацию или проблему и предлагают решить. Например: «Наш доход упал на 10%, что делать?» или «Как бы вы вывели на рынок новый продукт X?». Для менеджеров, директоров – самое то проверить стратегическое мышление.
Секрет тут – структурный подход. Не бросайся сразу давать идеи. Лучше скажи: «Я бы хотел уточнить несколько деталей» – и задавай вопросы, чтобы собрать данные. Потом озвучь план решения: «Думаю, надо проанализировать 3 направления: продукт, рынок, и внутренние процессы». И по очереди проходись по ним: ищи причину падения дохода во всех трех. Это впечатлит: интервьюер увидит аналитический склад ума.