Все статьи | Истории успеха

Как верстальщик стал фронтенд-разработчиком

Как верстальщик стал фронтенд-разработчиком главное изображение

Всем привет! Давно думал рассказать, как я попал на Хеслет, и как он изменил мое представление об онлайн-курсах и подходе к самообразованию.

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

Первые шаги: изучение рынка, случайная встреча с Хекслетом, изучение вёрстки в Академии и работа

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

HTML и CSS я изучал в HTML Academy, в то время это был лучший сайт с интерактивными курсами по вёрстке. Моей первой ошибкой было то, что я надолго застрял в вёрстке, даже нашёл работу и просидел на ней полтора года, пока второй раз в жизни не решил, что нужно что-то менять.

JavaScript я начал учить по онлайн-книге И.Кантора, плюс записался на онлайн-интенсив «JavaScript. Архитектура клиентских приложений» в HTML Academy. Курсы в Академии проходят в формате самостоятельного решения задач, и видеолекций, на которых показывают 80 % того самого решения. На выходе получается pet-проект. Этот подход распространён в большинстве курсов. Студенту в лайв-режиме показывают, как решить задачу, похожую на ту, которую ему дают для самостоятельного решения. В итоге получается так, что студент почти всё переписывает с решения учителя, и ему кажется, что в реальном мире все так же просто.

Вторая встреча с Хекслетом, изучение программирования и трансформация верстальщика во фронтенд-разработчика

На Хекслет я попал по рекомендации одной хорошей знакомой, с которой познакомился в Telegram. Уже в июне у меня было первое собеседование на должность фронтенд-разработчика. Спрашивали в основном стандартные вопросы про типы данных в JS, указатели на область видимости, замыкания, способы объявления функций, наследование. Из вёрстки спросили только, что такое БЭМ и пользовался ли я препроцессорами раньше.

Ответы на 90 % этих вопросов есть в серии книг You don’t know Javascript. Я бы посоветовал всем, кто ищет работу, прочитать эти книги, они небольшие.

Через пару часов в Telegram мне пришло сообщение, что я прошел собеседование. Так мне наконец-то удалось сменить профессию верстальщика на фронтенд-разработчика. Несмотря на это, я продолжил по вечерам заниматься на Хекслете.

В первый день мне достался обычный ПК с установленным на нем Линуксом. Мне сказали, чтобы я установил все нужные программы. Это было моё первое знакомство с этой операционной системой. Помню, как я с красным лицом гуглил «как установить WebStorm на Линукс» и надеялся, что никто в этот момент не посмотрит в мой экран. Уже к середине дня мне поставили задачу сделать небольшую правку на сайте одного из клиентов. Все сайты этой компании были написаны на Ruby, с которым я не имел ранее опыта. Тимлид мне помог развернуть проект, и уже к вечеру от меня улетел первый комит. Работая в этой компании, начал изучать React и связанные с ним библиотеки. На нём было несколько проектов, в которых я выполнял отдельные задачи.

У меня осталась проблема — зарплата была не очень высокой из-за отсутствия конкуренции IT-компаний в моём городе. Решил, что нужно попробовать поискать удалённую работу. Поиск я начал на площадках hh.ru и Хабр-карьера. Но этот поиск не дал результатов. Либо я не получал ответов на отклики, либо рекрутёры куда-то пропадали.

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

Смена работы и дальнейший рост

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

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

Все было уже по старой схеме: компьютер, установка программ, чтение внутренней документации. Помню, как в тот момент меня впечатлили на данный момент казалось бы обычные вещи. Платная подписка на Slack, Gmail, Jira и так далее. На следующий день дали первый проект, который был написан частично на устаревшем фреймворке Backbone. Хорошо, что первые задачи не были связаны с ним.

Ах да, новая компания, и новый backend-язык. В этой компании на бэкенде использовался Python. Помню, как на развертывание первого проекта у меня ушло 8 часов, а на решение задачи часа два. Впоследствии мне всё же пришлось покопаться в Backbone — не такая сложная библиотека, какой кажется на первый взгляд.

Вместо итогов: полезные советы для новичков

В конце истории хочу добавить несколько советов:

  1. Начинайте ходить на собеседования как можно раньше. Так вы быстрее сможете понять, чего от вас хотят работодатели. Мне кажется, в моём случае я с этим затянул.
  2. В конце собеседования не бойтесь задавать вопросы об оплачиваемых отпусках, больничных, оплате курсов, пересмотрах зарплаты и тому подобное.
  3. Не бойтесь задач, которые вам будут давать на новой работе. Эти задачи скорее всего будут не похожи на те, которые вы решали на курсах. Первое время это меня доводило до паники. Но если компания решила вас нанять, то она отвечает за задачи, которые вам ставят.
  4. В начале своего рассказа рекомендовал прочитать YDKJS, ещё раз настоятельно рекомендую это сделать. Так же у автора YDKJS есть серия видео лекций по темам, которые покрываются в этих книгах.