Cпустя много собесов я понял, что всех самых конченых интервьюэров, с которыми мне приходилось столкнуться, можно условно разделить на 4 категории.
Кишкодрочер. Человек, дрочащий на внутреннее устройство технологий, которые он использует. Читает всякие статьи о том, как устроены каналы в Go, индексы в PostgreSQL, байт-код виртуальной машины Java, умные указатели в С++ и т.д. Знания у него фрагментированные и ни в какое сравнение не идут с квалификацией тех, кто все эти системы создал и контрибутит в них. А почерпнуты они из всяких статей из интернета. Человек прётся со всех этих знаний, использует их как основание полагать, что именно он - тру, а все остальные - нет, после чего мучает соискателей соответствующими вопросами на собесах. Также очень любит вопросы из серии “А какое в точности сообщение об ошибке выскочит, если мы запросим у системы 10^666 Гб памяти? А что выведется, если написать console.log({0, 1, ‘a’} + - ‘2’ / 3)?”. Как контрить? Только чтением тех же самых статей и заучиванием содержимого, штудированием всех на свете опросников по собеседованиям, патч-ноутов и т.д. Следует иметь в виду, что от версии к версии у каждой технологии внутренности меняются. Кишкодрочер может потребовать от вас знать изменения той или иной приблуды на протяжении всех её итераций или иметь представления о её работе, отличные от ваших.
Паттерналист. Человек, который дрочит на SOLID, MVC, банду четырёх, гексагональную архитектуру, чистую архитектуру и прочие баззворды и аббревиатуры. Постоянно читает книги и статьи об архитектуре и паттернах. Стремится применять это в своём коде, даже если это никак не приносит пользы проекту и только усложняет его восприятие, внедрение нового функционала и багфиксов (например, добавление нового поля в сущность приводит к тому, что это самое поле придётся добавить в кучу самых разных слоёв логики; а если произошла ошибка, то поди пойми ещё, на каком в точности уровне). Соискателя задрочит вопросами о знании паттернов, задачами на кишащие аномалиями цепочки наследования, за написание которых на реальном проекте следовало бы бить по яйцам, и цитированием Мартина Фаулера, Роберта Мартина или ещё какого-то самопровозглашённого гуру проектирования. Ссытся кипятком от UML. Если кишкодрочер - это wannabe разработчик фундаментальных штук, то паттерналист - это wannabe-архитектор. Как контрить? Читать всякие дурацкие архитектурные талмуды на 1000+ страниц и статьи по паттернам (хотя в случаях с крупными компаниями достаточно просто книжки Crack your system design interview). В принципе, это проще, чем с кишкодрочерами, но даже в области паттернов всё может меняться. Сначала говорят, что наследование круто, затем - что это антипаттерн. Сначала пишут всё на callback’ах, а потом говорят, что так не надо, потому что получается лапша. Если кишкодрочеры фапают на циферки, на оптимизации, то каждый паттерналист уникален в том, каких именно подходов он придерживается. Самый запущенный случай - это приверженец функционального программирования, критикующий ООП. Эти типы самые отбитые, лучше к ним даже не приближаться.
Олимпиадник. Нет, это необязательно реальный победитель ICPC. Так можно назвать любого человека, который дрочит на алгосы и мучает соискателей задачками с LeetCode на собесах. Обитают в основном в крупных компаниях, которые адаптируют схему LC-интервью, поскольку она позволяет очень быстро фильтровать огромный поток кандидатов. Как контрить? Задротить LC и проводить мок-собесы с такими же задротами, штурмующими вакансии. Или использовать прогу, которая сразу распознаёт вопрос интервьюэра и пересылает его ChatGPT. Да, я слышал, такая есть. Думаю, если её использование станет повальным, будет введён людоедский прокторинг с мониторингом десктопа собеседуемого. Стоит отметить, что с ростом конкуренции в IT растёт и сложность спрашиваемых на собесах LC-задач. Раньше просто просили написать FizzBuzz, сегодня уже надо за 30 минут решить хардовую задачу на графы. Возможно, в будущем компании будут использовать что-то ещё более ядрёное и несправедливое, чем LeetCode.
Сноб. Человек имеет кучу каких-то регалий, будь то красивые строчки в резюме, дипломы, сертификаты, научные степени, статьи, участия в конференциях, контрибуции в FOSS. Очень легко распознать такого с порога: общаться будет подчёркнуто высокомерно и надменно, уже по ноткам в голосе и поведению можно понять, кто перед вами. Как контрить? Да если честно, не могу сказать. Просто если люди 3-ёх вышеописанных категорий хотя бы имеют какие-то измеримые критерии, то сноб может считать соискателя лохом по любому поводу (не работал в FAANG, не учился на физтехе, родился не в семье родителей-инженеров, не смотрит такого-то подкастера), кроме того, иногда такой тип просто всех встречных унижает и тешит своё эго, не больше.
На самом деле, универсальный рецепт контрмер - быть ещё большим задротом, чем тот, кто вас интервьюирует. Это сложно, особенно если учесть, что в основном будет попадаться не чистый типаж, а комбинация. IT-индустрия больна, и тут уже только от вас зависит, на что вы готовы, чтобы продолжать в ней существовать. Сами решайте, во что вам упарываться. Или можете поступить, как вот эти ребята =3



Комментарии (198)