Собеседование - это начальный шаг для расширения масштабов / будущего компании. Насколько это важно для кандидата, это также важно для компании. Хорошее и профессиональное собеседование может стать хорошим ресурсом для компании. Мы найдем в Интернете массу статей об этикете интервью с точки зрения собеседника, но меньше с точки зрения интервьюера. Вот несколько советов / процессов, которым я следовал во время собеседований при найме инженерных ресурсов младшего ~ высшего уровня для моих компаний. Я надеюсь, что это, по крайней мере, даст вам возможность структурировать время / содержание интервью. Я помнил о ситуации с COVID-19 и, следовательно, больше подхожу для онлайн-собеседований.

Представьтесь [5–10 минут]

Собеседник всегда будет нервничать больше, чем интервьюер. Представьте, что вы идете на собеседование, нервничаете, и первое, что вас просят, - это рассказать о себе совершенно незнакомому человеку в течение 5 минут! Немного страшно, правда? Позвольте себе стать ледоколом в этой ситуации. Не выключайте видео, чтобы они видели вас и знали, что интервью - это не какой-то полубог, с которым они пытаются связываться! Это успокаивает нервы, особенно если вы улыбаетесь и ведете себя скромнее.

Вы также можете спросить о ситуации в их регионе (если они находятся в другом месте, чем ваше). Как они делают свой распорядок дня с точки зрения изоляции, вы можете быть удивлены тем, как у людей появились новые увлечения в это время.

Начните с краткого представления о себе, о компании, а затем о своей повседневной работе. Поверьте, все это кажется долгим, но если вы практически попробуете, это займет не более 4–5 минут. Для более крупной организации вы можете сказать не о компании, а о команде. Это может помочь кандидату узнать о вас и немного утешить его.

Вы можете рассказать о себе то, что, по вашему мнению, расскажет о себе кандидат. Это будет косвенное сообщение ему о том, что вы хотите о нем услышать.

Представление кандидата [5–10 минут]

Позвольте ему поделиться с вами своим опытом. Дайте свободу того, что он может сказать. Если вы чувствуете интерес к какому-либо конкретному навыку, запишите его и сохраните для обсуждения позже во время оценки навыков. Если знакомство происходит по совершенно иному пути, то вежливо попросите придерживаться того, что вы хотите знать. Было бы полезно узнать об одном из недавних проектов, над которыми они работали, или о любых недавних навыках, которые они приобрели.

Оценка навыков [40 минут]

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

Наем внешнего интерфейса: [40 минут]

Для интерфейсной части вопросы просты, они либо знают, либо нет. Во внешнем интерфейсе нет ничего лучше «Лучшего алгоритма». Вы можете спросить, с какой структурой они работают, какие в них текущие проекты и т. Д. От базовых до глубоких знаний о JS, шаблонах проектирования JS, стандартах CSS и концепциях HTML.

Если вы имеете опыт работы в интерфейсе, вы можете глубже погрузиться в оптимизацию внешнего интерфейса (минификация, объединение, спрайты и т. Д.), Функциональные возможности браузера (синтаксический анализ, рендеринг, рисование). Понятия о кешировании, локальном хранилище и файлах cookie. Вы можете попросить погрузиться в функциональные возможности консоли разработчика, жизненный цикл страницы и т. Д. Некоторые вещи, такие как развертывание CI / CD, также могут быть протестированы, по крайней мере, для веб-приложений в этом случае.

Наем серверной части: [40 минут]

Кодирование [20–40 минут]

Попросите написать код для проблем со структурой данных. Начните с объяснения вопросов с примерами. Старайтесь приводить примеры, которые не вызывают двусмысленности или путаницы в отношении самой проблемы.

Дайте кандидату время подумать, а затем попросите его высказать свое мнение вслух. Так что в случае, если он приближается не в том направлении, вы можете намекнуть или поправить его. Помните, вы берете интервью, чтобы нанять ресурсы, а не отказываться от него. Если кандидат по-прежнему не может уловить намек и приблизиться, лучше переходите к следующему вопросу с учетом красного флажка.

Дизайн системы [20 минут - 40 минут]

В зависимости от стажа должности вы можете пропустить первый шаг и сразу перейти к проектированию системы и внутренней архитектуре. Здесь вы можете попросить его спроектировать систему. Немногочисленные известные мировые проблемы, такие как система бронирования билетов, электронная коммерция, система доставки еды, дизайн социальных сетей, стали обычным явлением в наши дни. Помимо того, что они распространены, они также дают много места, чтобы задать вопросы / обсудить концепции. В эти вопросы в конечном итоге будут включены такие концепции, как теорема CAP, микросервисы, общие ресурсы и т. Д.

Дизайн базы данных очень важен с точки зрения оценки набора навыков инженера. Могут задавать вопросы, основанные на индексировании, архитектуре Master-Slave, запросах между базами данных, сегментировании и многом другом.

Для инженеров BackEnd справедливо попросить инструменты CI / CD, шаблоны проектирования, инструменты командной строки и т. Д. Но эти наборы навыков могут легко варьироваться от компании к компании, поэтому не исключайте кандидатов только на основе его / ее отсутствие опыта в конкретном инструменте.

Наем полного стека [40–60 минут]

Такие интервью похожи на дегустацию вин двух миров. Вы должны объединить оба приведенных выше раздела, но с меньшим уровнем сложности. Очень редко можно найти ресурс, одинаково хороший в обеих областях. Попробуйте погрузиться в FrontEnd, BackEnd и DB / System Design по 15 минут каждый, чтобы проверить общие способности кандидата.

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

Вопросы / ответы после интервью [10 минут]

Последние 40–50 минут были полностью посвящены тому, что вы хотите знать об интервьюируемом и его / ее навыках. Сейчас хорошее время для интервьюера, чтобы ответить на любые сомнения / вопросы, которые он имеет в виду. Это может быть что угодно: о культуре, о команде, о бизнес-стратегии, о расширении, о предлагаемой роли и т. Д. Расслабьтесь, а также позвольте кандидату расслабиться: что сделано, сделано, хорошее или плохое, это в прошлом.

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