Два типа технических собеседований в IT
Часто в компаниях исповедуют два полярных подхода к найму.
Первый - спрашивать по стеку как теоретические так и практические вопросы и, соответственно, заранее понимать, куда нужен новый человек. Второй - искать разработчиков с “базой” в разработке ПО и нанимать в “пул”, т.е в общий набор, из которого людей выбирают команды, или сам новичок выбирает, куда было бы интересно пойти работать.
Второй подход выбирают в FAANG’e. Они ищут разработчиков-инженеров в широком смысле, поэтому проверяют умение писать алгоритмы, работать со структурами данных и проектировать фичи. Проще говоря, это задачи с Leetcode и систем дизайн. Количество этапов и грейд, на который вы целитесь, по сути определяется эйчаром по результатам скрининга и резюме. На технических этапах будут задания, соответствующие уровню. Все мои знакомые из Meta, Amazon и тд попадали на новый для себя стек. Почему именно так, можно узнать от Senior Staff developer из Netflix.
На мой взгляд, этот подход применять легко, т.к на LeetCode есть уже 2000+ задач и вам не нужно составлять их, а на секции по системному дизайну просто задать вопрос в стиле “Как бы ты задизайнил WhatsApp?”. Но если вы не FAANG, то такой способ найма работать не будет. Вам нужен профильный инженер со знанием стека, например, iOS и времени на то, что он будет перекатываться, у вас тоже нет. Поэтому, алгоритмы убираются и делаются профильные задачи.
Здесь возникает другая проблема. Такого же сервиса как LeetCode для задач на техсобесы по определенному стеку нет (звучит как стартап). Команда собирается и выстраивает свой процесс найма и оценки кандидата. Зачастую это live coding и проектирование фичей, приближенных к проблемам, с которыми столкнется новый разработчик, если попадет в команду. Но чтобы придумать хорошие задачи и протестировать их, уходит много времени. По итогу все компании используют одни и те же задачи, воруя друг у друга)
Особо отличившиеся, не буду называть кто именно, не меняли процесс найма два года! Хотя у них хайринг большой и непрерывный. Вне зависимости от уровня iOS разработчика они спрашивают одну и ту же задачу на проектирование нотификейшн центра. Предлагаю посмотреть, какие ответы я бы ожидал от кандидатов с различным опытом работы и заявленным грейдом.
#interview #iosdevelopment
Часто в компаниях исповедуют два полярных подхода к найму.
Первый - спрашивать по стеку как теоретические так и практические вопросы и, соответственно, заранее понимать, куда нужен новый человек. Второй - искать разработчиков с “базой” в разработке ПО и нанимать в “пул”, т.е в общий набор, из которого людей выбирают команды, или сам новичок выбирает, куда было бы интересно пойти работать.
Второй подход выбирают в FAANG’e. Они ищут разработчиков-инженеров в широком смысле, поэтому проверяют умение писать алгоритмы, работать со структурами данных и проектировать фичи. Проще говоря, это задачи с Leetcode и систем дизайн. Количество этапов и грейд, на который вы целитесь, по сути определяется эйчаром по результатам скрининга и резюме. На технических этапах будут задания, соответствующие уровню. Все мои знакомые из Meta, Amazon и тд попадали на новый для себя стек. Почему именно так, можно узнать от Senior Staff developer из Netflix.
На мой взгляд, этот подход применять легко, т.к на LeetCode есть уже 2000+ задач и вам не нужно составлять их, а на секции по системному дизайну просто задать вопрос в стиле “Как бы ты задизайнил WhatsApp?”. Но если вы не FAANG, то такой способ найма работать не будет. Вам нужен профильный инженер со знанием стека, например, iOS и времени на то, что он будет перекатываться, у вас тоже нет. Поэтому, алгоритмы убираются и делаются профильные задачи.
Здесь возникает другая проблема. Такого же сервиса как LeetCode для задач на техсобесы по определенному стеку нет (звучит как стартап). Команда собирается и выстраивает свой процесс найма и оценки кандидата. Зачастую это live coding и проектирование фичей, приближенных к проблемам, с которыми столкнется новый разработчик, если попадет в команду. Но чтобы придумать хорошие задачи и протестировать их, уходит много времени. По итогу все компании используют одни и те же задачи, воруя друг у друга)
Особо отличившиеся, не буду называть кто именно, не меняли процесс найма два года! Хотя у них хайринг большой и непрерывный. Вне зависимости от уровня iOS разработчика они спрашивают одну и ту же задачу на проектирование нотификейшн центра. Предлагаю посмотреть, какие ответы я бы ожидал от кандидатов с различным опытом работы и заявленным грейдом.
#interview #iosdevelopment
boosty.to
Шестой урок. Потокобезопасный нотификейшн центр. - Vadim Chistiakov | IT Community
Популярная задача на собеседованиях. Встречалась на интервью в AliExpress и Озон.