Как фронтендеру подготовиться к собеседованию. Советы выпускников Практикума

В Яндекс.Практикум приходят учиться с разным уровнем подготовки. Среди студентов есть те, кто только начинает карьеру в IT, с нулевым опытом, так и те, кто уже работает в сфере, но хочет перейти с позиции джуниора на мидла.

Многие приходят с желанием сменить место работы: получить должность в определённой компании или просто найти то место, где будет комфортно. Чтобы достичь такой цели, нужно не только успешно закончить обучение, но и грамотно подготовиться к этапу собеседований.

image-loader.svg

Мы собрали несколько историй от выпускников Практикума, которые после курса «Мидл фронтенд-разработчик» устроились на работу мечты: кем они работали ранее, почему пошли на курс и что могут посоветовать разработчикам в поисках работы.

Им слово.


grir5vxzec4k-8xo4crnqbqxoay.jpeg

Антон Субботин, Яндекс.Практикум


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

К тому же я был единственным человеком в команде. Не скажу, что клиентов было много, но в таком случае знания не распространяются внутри команды — никакого чувства локтя. А когда команда выросла, я уже ушёл из интеграции.

Месяцев через семь меня захотели перевести на позицию фронта. Но не потому что карьерный рост, а потому что предыдущий фронт решил уйти. Руководство решило не искать фронтов на стороне, а взять меня. Было, прямо скажем, нервно, потому что опыта у меня было мало, а ответственности привалило с запасом.

Когда я понял, что развивать особо нечего, а команду расширять не планируется, я пошёл в Практикум. До этого у меня был опыт прохождения курсов на HTML Academy.

Прошёл вводное тестирование, начал заниматься, прошёл первый одиночный модуль и уехал в отпуск на Кипр. Там проветрил голову, а когда вернулся — приступил к командному модулю, где у меня впервые в жизни появилась фронтенд-команда. И мы хорошо сработались. У нас отлично выстроились процессы по Agile, были чёткие проектные задачи, всё делали с нуля и вместе. В общем, было круто.

К финалу курса я значительно подтянул софт-скилы — команда же. Харды тоже улучшились — CI/CD, NGINX, да и вообще весь командный модуль был для меня в новинку. И эти же знания помогли на собеседованиях — я понял, как быстро делать интерфейсы на React.

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

После основного курса мне написали ребята из карьерного трека: обсудили желания и страхи, сферы, в которых хотелось бы работать, помогли составить резюме. После того как я его разместил на паре ресурсов, пришло немало предложений от больших компаний. Походил на собеседования, прошёл их и в итоге получил три оффера от Озона, ВТБ и Яндекса.

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

В итоге я выбрал Яндекс. На финальном собеседовании с командой мне сразу стало понятно, что я смогу тут работать. Всего было пять собеседований, и на них было всё от базовых вопросов по HTML/CSS до сложной вёрстки. Финал был уже в формате личностного общения и оценки софт-скилов.

При подготовке к собеседованиям советую найти примерный пак вопросов, которые вам будут задавать, и хорошо его проработать. Но не стоит усердствовать и репетировать именно перед собеседованием — забьёте себе голову и занервничаете, если что-то пойдёт не по тому плану, который вы выстроили у себя в голове. Резюме лучше сделать покороче и исключить оттуда всё нерелевантное, но это лучше уточнить у знакомых HR.

image-loader.svg

Андрей Артамонов, Авито


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

Соответственно, мои навыки росли примерно такими же шагами: сначала администрирование сайта и работа с CMS, затем JS и React на второй работе. На третьей работе задачи были куда разнообразнее и добавилось больше коммуникаций по продукту.

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

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

Что же касается поиска работы после курсов, то я не откликался на все вакансии скопом. Меня давно интересовала работа в Авито. Компания — лидер в своей отрасли, значит, задачи и цели у неё соответствующие. Насчёт сложности собеседования особо ничего сказать не могу. Кроме того, что я его прошёл.

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

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

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

Что касается подготовки к собеседованию, то сейчас есть много способов настроить себя на них. На ютьюбе можно найти записи тренировочных и настоящих собеседований и посмотреть, какие вопросы на них задают. Можно и даже нужно порешать задачки на Codewars и LeetCode. А ещё можно пройти мок-собеседование в Практикуме.

Если вы хотите найти отличную работу, могу посоветовать следующее:

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

Кирилл Пономарёв, Авито


До Практикума я работал разработчиком в промышленной компании. Я выполнял множество разных задач фулстек-разработчика, вдобавок работая с более отвлечёнными штуками типа макросов в Excel. В общем, такой разнорабочий от IT: и фронтенд запилить, и бэк доделать, и таблички распарсить. Все задачи были довольно сложными, но по фронту — самые серьёзные, включая вёрстку дашбордов со сложными графиками.

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

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

Сам курс очень помог мне систематизировать знания. Помогла и подборка литературы — не скажу, что я осилил её целиком (нет, не осилил), но при подготовке к собеседованию это мастхэв. Как ни странно, у меня были пробелы в алгоритмах. Заполнить их помогли задачки на LeetCode и мок-собесы.

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

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

На собеседовании было много из того, что мы проходили в Практикуме: безопасность на фронте, сетевое взаимодействие. Без подготовки не факт, что я бы это осилил. По теории было стандартно: поднятие, замыкание, контекст вызова, event loop. В статье »70 вопросов по js для подготовки к собеседованию» упомянуты все необходимые вопросы, но иногда для глубокого понимания искал информацию на learn.javascript.ru.

Задачки по js разбирал с помощью статей на Хабре — вот первая и вторая части. Задачки по алгоритмам разбирал на LeetCode. Также было полезно повторить материалы по сетевому взаимодействию.

Всего у меня было три встречи:

  • короткое техническое интервью в формате «вопрос — ответ», оно заняло полчаса;
  • двухчасовое техническое собеседование, где было много теории и лайвкодинг с задачками по js и алгоритмам;
  • финал с техлидом команды и HR — поговорили про мой прошлый опыт и про то, как устроены процессы в команде, с которой будем работать.


Через пару дней после финального собеседования мне сделали оффер.

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

mb0mqqthxufaccz1ozryrruqahc.jpeg

Алексей Щеглов, Яндекс


Мой бэкграунд не самый технический — я был преподавателем английского языка. В сферу IT попал через компанию Kameleoon, мы занимались A/B-тестированием. Там было сложно с фреймворками — это был чистый JS-мир. И месяцев через 10 я понял, что хорошо бы подучить фреймворки и по возможности сменить работу. Обзор вакансий давал понять: Angular, Vue и фреймворки востребованы. Так я и начал искать себе курсы по теме.

До этого, само собой, прошёл курсы на Coursera и HTML Academy и просмотрел кучу обучающих видео на ютьюбе. Курс Практикума — один из немногих с углублением по теме и хорошо нацеленный на мидла. К слову, я не считал себя мидлом в то время, но это и было интересным: посмотреть, как работает мидл, что он должен знать и уметь, какие требования будут предъявлять.

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

Я уделял учёбе около 20 часов в неделю, но порой это время доходило и до 30. Дополнительно сидел с задачами и на выходных. Самый главный плюс для меня — карьерный трек и помощь с нахождением работы. Эйчары вышли на связь за неделю до окончания курса, мы обсудили, как улучшить резюме. В четверг я его обновил, а в пятницу начал получать отклики от компаний, включая Яндекс.

Поиск работы и прохождение собеседований оказались для меня довольно простыми. Помогли мок-интервью Практикума — приобрёл уверенность. На собеседованиях были вопросы по RLE, всякие задачи на замыкания, вёрстка. Я не особо готовился, всего лишь немного освежал теорию. По итогу мне пришли офферы из Озона, Иннотеха и ещё пары компаний.

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

Сделайте себе сводную табличку с собеседованиями, по которым ходите, вроде календаря. Даты будут на виду, если вам потребуется куда-то втиснуть внезапное новое собеседование. А ещё вы сможете постфактум писать в табличку свои впечатления и сравнивать их: условия труда, зарплату, команду и коллектив, продукт, первые впечатления от компании и прочее. Это очень поможет в выборе.

О трудоустройстве в Практикуме


hzhkggw2itb6vkoitk9qahmww7c.jpegОльга Клочкова
Продакт-менеджер курса и карьерной программы «Мидл фронтенд-разработчик»

Процесс трудоустройства мидлов отличается от трудоустройства тех выпускников, которые только начинают свой путь в профессии. Во втором случае у студента нет опыта работы, и ему очень важно получить ту самую первую работу по новой специальности. Необязательно рассматривать её на долгие годы — важно просто открыть дверь в коммерческую разработку.

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

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

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

Затем студент проходит мок-интервью — это тестовое собеседование с техническим специалистом. Они помогают обрести уверенность и получить фидбек по слабым зонам. Всё это позволяет прийти на живые собеседования более подготовленным.

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

Кроме того, зарплата заметно разнится от вакансии к вакансии. Здесь важно уметь оценивать предложение в годовом скоупе: учитывать бонусы, опционы, премии, плюшки вроде ДМС и стоматологии, а ещё вклад компании в развитие самого разработчика.

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

И последний совет: не стоит недооценивать развитие софт-скилов. Чем лучше они прокачаны, тем больше вероятность получить оффер по верхней границе зарплатной вилки.

Помните, хорошая работа не приходит сама по себе. Мало просто освоить навыки программирования, чтобы получить оффер на желаемую должность — нужно научиться подавать себя потенциальным работодателям.

Советы


  • Повторите теорию на Javascript.info. Сделайте акцент на тех частях, где у вас есть ощутимые пробелы.
  • Порешайте задачи на Codewars, LeetCode и learn.javascript.ru.
  • Сделайте таблицу, куда будете записывать сложности, которые возникали на собеседованиях, чтобы в дальнейшем их проработать.
  • Прежде чем идти в крупные компании, лучше походить на разогрев в маленькие или средние.
  • Найдите примерный пак вопросов, которые вам будут задавать, и хорошо его проработайте.
  • Не репетируйте ответы перед собеседованием: если что-то пойдёт не по тому плану, который вы выстроили у себя в голове, вы станете больше нервничать.
  • Исключите из резюме нерелевантный опыт. Тщательно продумайте его содержание, потому что спрос с мидлов выше, чем с джуниоров.
  • Найдите на ютьюбе записи тренировочных и настоящих собеседований и посмотрите, какие вопросы на них задают.
  • Не забывайте о софт-скилах.
  • Учитесь правильно оценивать свои навыки, чтобы не потерять в зарплате.

© Habrahabr.ru