Разбор процесса фронтенд-собеседований

0
3814
views

Перевод статьи «Decoding the Front-end Interview Process».

Фронтенд-собеседование

Если вы фронтенд-разработчик, вы неизбежно попадете на техническое собеседование (и даже не одно). К сожалению, весь процесс собеседований может быть не до конца понятным и варьироваться в зависимости от компании.

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

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

Процесс собеседований

Я много раз проходила собеседования на позицию фронтенд-разработчика. Многие люди считают умение проходить собеседование чем-то само собой разумеющимся. Однако собеседования по фронтенду можно считать одними из самых сложных.

От вас требуется концептуальное понимание языков, с которыми вы работаете (HTML, CSS, JavaScript), умение сразу выдать на-гора код, использовать алгоритмы сортировки и поиска и иметь представление о многих сопутствующих технологиях и сферах деятельности (HTTPS, REST, методологии разработки).

Исходя из моего опыта, приобретенного на собеседованиях, проходивших по всем Штатам, а также в Германии, в большинстве компаний процесс собеседований выглядит так:

Процесс собеседований на должность фронтенд-разработчика

Давайте рассмотрим все составляющие этого процесса.

Собеседование по культуре

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

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

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

Обычно собеседования по культуре начинаются с фразы «Итак, расскажите мне о себе». При этом важно иметь хорошо продуманный ответ.

Например, сравните эти два ответа:

Макс

«Ну, я фронтенд-разработчик. Работаю в основном с React. Диплом по информатике получил в Сиене (в Нью-Йорке). И… что еще вы хотели бы узнать?»

Пейдж

«Я фронтенд-разработчик. В настоящее время работаю в LogMein в Карлсруе, в Германии. Во втором семестре учебы в Сиене я увлеклась информатикой и бизнесом. Я училась за границей, в Лондонском городском университете. После выпуска приняла предложение работы в IBM в Остине (Техас), где работала над интересными проектами, связанными с квантовыми вычислениями. Три года спустя я переехала в Германию и теперь работаю в LogMein. Моя работа в основном связана с JavaScript, с использованием React и Redux. В свободное время люблю читать, писать статьи для блога и играть со своими кошками».

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

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

Советы:

  • Подготовьте короткий рассказ о себе.
  • Имейте в запасе 1-2 истории о своих наибольших достижениях и самых сложных проблемах, которые вам удалось решить.
  • Будьте честны относительно своего набора навыков. Вы точно не захотите попасть в неловкую ситуацию, когда вас спросят о деталях Redux и окажется, что вы просто вставили это название ради красного словца, чтобы попасть в следующий тур собеседований.
  • Не критикуйте вашего настоящего или бывшего работодателя. Когда вы говорите плохо о предыдущей работе, это показывает недостаток уважения. Потенциальные работодатели хотят быть уверенными, что вы будете лояльны к ним даже когда ваше сотрудничество подойдет к концу.
  • Подготовьте вопросы о компании и интересной вам должности, которые хотите задать своему интервьюеру. В конце собеседования интервьюер спросит, не хотели бы вы что-нибудь узнать. Задайте пару вопросов. Хороший формат – «Я видел, что ваша компания только что сделала Х… как это отразится на Y?». Это покажет, что вы поискали информацию об их компании, да и вообще интересуетесь новостями мира технологий. Также можно спросить у рекрутера, что ему нравится в работе на эту компанию. Возможно, его ответ вас удивит!
  • Ведите записи. Вероятно, вы побываете на многих собеседованиях, так что важно сразу все упорядочить.
  • Не спрашивайте о зарплате или других выгодах. Эти детали можно уладить, когда получите оффер. Если поднять этот вопрос сразу, может показаться, что вас интересуют только деньги.
  • Будьте собой. Собеседование это улица с двусторонним движением. Вам нужно убедиться, что культура компании совпадает с вашей личной культурой, так что не притворяйтесь и будьте самим собой.

Техническое собеседование

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

Спонтанность – не мой конек. Если вы попросите меня написать псевдокод сортировки слиянием, высока вероятность, что я просто уставлюсь на вас, будто вы это на китайском сказали. Но если попросить меня создать сайт, тут уж я развернусь.

К счастью, есть множество онлайн-ресурсов по теме прохождения технических собеседований. И да, важно не просто запомнить правильные ответы. Важно понять, ПОЧЕМУ эти ответы правильные.

Я не буду приводить список вопросов, которые вам могут задать: в конце статьи я перечислю свои любимые ресурсы, где эти вопросы можно посмотреть.

Но мы все же пройдемся по основным вещам, с которыми вы должны быть знакомы. Предупреждаю, это лишь набросок, который, разумеется, можно дополнять!

Список необходимых навыков

Я знаю, что здесь много всего, однако, если практиковаться каждый день, вы все это освоите.

Советы:

  • Размышляйте вслух. Интервьюеру важно слышать ваш мыслительный процесс!
  • Если вам непонятно, в каком направлении двигаться, спросите. Возможно, интервьюер вам подскажет.
  • Проваливайтесь часто и быстро. Всегда испытывайте свои идеи и, если они не работают, делайте выводы и двигайтесь дальше.
  • Если вам уже попадался такой вопрос раньше и вы знаете ответ, скажите об этом интервьюеру. Честность всегда лучшая политика.
  • Если у вас есть решение, попробуйте улучшить производительность. Оптимизация это ключевой момент.
  • Если вы не знаете ответа, это нормально. Я часто признавала: «Честно говоря, я не уверена, но могу предположить, что…». Мне случалось видеть кандидатов, которые несли совершенную околесицу, пытаясь сделать вид, что знают ответ. По-моему, лучше признаться, что не знаешь, но при этом высказать свою догадку.

Домашнее задание

Это не обязательный пункт, но некоторые компании дают такие задания на дом. Если это ваш случай, то вы имеете возможность продемонстрировать свои прекрасные навыки разработки и при этом не чувствовать давления.

Задачи, которые даются домой, довольно разнообразны. Это может быть простое «Создайте приложение – to-do список». Хорошая задача. Она позволяет вам как использовать JS-фреймворк, так и писать на чистом JS. К тому же и времени не много займет.

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

Или вас могут попросить воссоздать часть приложения компании.

Какова бы ни была задача, постарайтесь выполнить все как можно лучше и написать чистый код. При выполнении «домашних заданий» я обычно выполняю следующие шаги:

Домашнее задание

Вопросы, которые стоит задать себе перед отправкой выполненного задания:

  • Выполнил ли я все требования проекта?
  • Достаточно ли хорошая производительность у моего решения?
  • Является ли мое решение responsive/mobile friendly?
  • Доступно ли мое решение?
  • Хорошо ли оно выглядит?
  • Является ли мой код чистым и эффективным?
  • Горжусь ли я своим решением?

Если на какой-то из вопросов вы отвечаете отрицательно, стоит вернуться и что-то переделать.

Советы:

  • Не тратьте на выполнение задания больше одного дня. Если у вас на это уходит несколько дней, вероятно, вам следует поработать над своими техническими навыками.
  • Будет вполне приемлемо отказаться участвовать в конкурсе. У меня были случаи, когда я писала рекрутеру и говорила, что мои навыки оказались не настолько хороши, как им нужно. Это показывает ваш уровень самосознания. Бывало, рекрутеры даже возвращались ко мне несколько раз, чтобы переспросить, не хочу ли я пройти собеседование. Признавать, что вам нужно над чем-то еще поработать, совершенно нормально. Это избавит вас от стресса работы над непосильным заданием как сейчас, так и в будущем, ведь, приняв оффер, вы скорее всего будете получать такие же задания.
  • Проясняйте требования проекта. Хотят ли ваши интервьюеры, чтобы вы использовали JS-фреймворк? Можно ли использовать CSS-фреймворк, чтобы сэкономить время?
  • Если вам нужно дополнительное время, просто попросите. Рекрутеры знают, что вы занятой человек, да и жизнь всегда вносит свои коррективы. Так что, вместо того чтобы отправлять полусырое решение, напишите интервьюеру и скажите, что эта работа для вас очень важна и вы хотите уделить достаточное количество времени выполнению их задания. Большинство компаний предпочтет дать вам время, но не жертвовать качеством.

Финальная встреча и оффер

Если вы зашли так далеко, поздравляю!

Получение оффера

Вы настоящий умник, и компания об этом знает! Вот несколько вещей, которые следует иметь в виду, когда получаете предложение:

  • Спросите, сколько времени можно подумать. В большинстве случаев на ответ вам дадут около недели.
  • Вполне можно сказать «нет». Если вы не считаете, что эта работа придется вам по душе, не беритесь за нее!
  • Можно попросить больше денег, если сумма будет соответствовать средней зарплате для вашей должности в вашем регионе.
  • Спросите, могут ли вам помочь с переездом. Если вам придется ради этой работы пересечь всю страну или даже полмира, а финансовой поддержки не будет, это может помешать заключению договора.

Итоговые размышления

Вы просто суперзвезда

Вы просто суперзвезда и вы обязательно пробьетесь сквозь болезненный процесс собеседований к работе своей мечты.

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

Ресурсы

Практика программирования

Вопросы для технических собеседований

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here