В веб-разработку после иняза. Наш выпускник Андрей Володченко
- 25 января 2022
Андрей Володченко — React-разработчик в компании Perfect Art и выпускник HTML Academy. В подкасте «Да как так-то» мы поговорили о его карьерном пути, узнали, как он пришёл в разработку, чем занимается и какие задачи решает.
В первый рабочий день мне показывают проект и я не понимаю, как половина элементов нарисованы. Лежит куча файлов, куча папок, всё очень плохо структурировано, где-то CSS, где-то SCSS, где-то какой-то ангуляр, который как-то скомпилировали и он как-то запускается. Ты поднимаешь какой-то сервер, ещё что-то, но этот код нельзя трогать, а этот можно, а поправить... И ты стоишь и думаешь, нужно ли тебе это всё.
Что было до фронтенда
Андрей: После школы я поступил в Бауманку, но на третьем курсе окончательно убедился, что это не то, чем я хочу заниматься, и ушёл оттуда.
После армии поступил на иняз, успешно завершил обучение и получил диплом. Язык — очень крутое дополнение к чему-то созидательному, но заниматься всю жизнь переводами и преподаванием мне не хотелось. Хотелось что-то создавать, но начинать выпиливать лобзиком было уже поздно, и это не совсем востребовано, поэтому я решил поискать что-то ещё.
На портале «Открытое образование» я нашёл курс, который назывался «Веб-программирование». Я записался и пошёл на этот курс, но тогда ещё не знал, что это был курс HTML Academy.
Женя: Ты помнишь, в каком году это было?
Андрей: Я начал 6 марта 2017 года. Смотрел лекции, записывал теорию в толстую тетрадку (она у меня до сих пор осталась) и проходил тренажёры. Успешно закончил курс и пошёл на сайт Академии. Немного сомневался и посоветовался с другом, который уже какое-то время был в разработке. Он говорит: «Нормальные ребята, я посмотрел, всё по делу».
Сначала я прошёл бесплатные тренажёры, потом те, что по подписке, а в конце записался на три профессиональных курса — два по вёрстке и один по JavaScript.
Про ощущения на первом интенсивном курсе
Андрей: У меня было ложное чувство, что если я прошёл до этого все тренажёры, то сейчас покажу всем, кто тут босс. Но я быстро понял, что это так не работает. В итоге я всё равно выбрал самый сложный проект, потому что решил выжать максимум из курса, и успешно его завершил.
Лёша: Я хочу уточнить. Я правильно понял, что ты выбрал фронтенд случайно? Не целенаправленно шёл сюда, а просто нашёл портал открытого образования, где ничего не требовалось, чтобы начать, а уже потом увлекся этим всем?
Андрей: Отчасти так. Я понимал по рынку, что программирование, в целом, востребованная вещь. Для меня было важно, что есть работа, на которой можно что-то создавать. А когда в интернете стали появляться красивые сайты, я подумал «Круто, я тоже хочу так уметь».
Не пробовал учиться по ютубу и книжкам?
Андрей: Всё так совпало, что появилось время и сразу нашёлся курс. До этого я проходил другие курсы, не связанные с программированием, но фронтенд мне понравился больше всего. Но я не думал, что получится найти работу так стремительно.
Женя: А сколько времени прошло? Стремительно — это как?
Андрей: 6 марта — начало отсчета, а на работу вышел 27 октября.
Женя: По меркам стремительных вещей это довольно быстро.
Как не забросить обучение (если занёс деньги)
Андрей: Такие чувства до сих пор посещают. Думаешь, что происходит, зачем я это делаю, ничего же не получается. А потом чуть подумал, почитал, разобрался — всё, нормально, работаем. Но в начале всё равно было тяжело.
У людей, к сожалению, есть ложное представление о том, что достаточно занести денег, а дальше всё как-то само. Оплатил курс и через год ты фронтенд-разработчик, больше ничего делать не надо. Но так не работает.
У меня есть опыт преподавания — все зависит от желания ученика, можно помочь обучиться, но заставлять учить...
Женя: Мы тут разговариваем втроём, и у всех есть опыт преподавания. Я помню, как студенты приходили ко мне и спрашивали «А как разобраться-то в этой вирусологии дурацкой, зачем она вообще нужна?». И я пытался подобрать слова, чтобы они не забросили предмет. Но когда пытаешься сам чему-то учиться, эти же слова не работают, потому что у всех разная мотивация.
Андрей: Я хотел, чтобы был виден результат моей работы. В какой-то момент начало получаться и я подумал, что могу, как минимум, быть очень хорошим в этом деле.
Первая работа и страдания от JavaScript
Лёша: Ты прошёл два курса по вёрстке и понял, что верстать ты научился. Пришёл на курс по JS, а там совсем другая сфера. Программирование — это же не вёрстка. Какие были ощущения?
Андрей: Тут надо уточнить — два курса по вёрстке у меня прошли подряд и сразу после первого меня записали в программу трудоустройства выпускников, которая работала в пилотном режиме, и уже тогда со мной связался мой первый работодатель, к которому я в итоге вышел после второго курса по вёрстке.
Изначально мне сказали, что ищут верстальщика и гипотетически я подхожу. Дали тестовое задание по вёрстке, после него было собеседование с руководителем компании, после которого он предложил работу.
Тогда я ещё работал в Чехии, поэтому пришлось какое-то время совмещать две работы и обучение.
А курс по JavaScript я перенёс на весну 2018 года, когда уже был небольшой опыт реальной вёрстки. И страдал, думал, не слишком ли высоко я прыгаю. Но в итоге всё хорошо.
Приходилось работать с недоделанными макетами?
Андрей: У меня было много проектов за четыре года, но почти всегда макеты не были готовы целиком. Дорабатывались в процессе. Реальность вносит свои коррективы, а вообще я хорошо отношусь к дизайнерам и могу понять их.
Женя: Если твоя первая работа была в 18 году, получается, ты успел застать хвост фотошопных макетов, которые макет.psd, макет_финальный.psd, макет_финальный2_новый...
Андрей: Это классика. В первый рабочий день мне показывают проект и я не понимаю, как половина элементов нарисованы. Лежит куча файлов, куча папок, всё очень плохо структурировано, где-то CSS, где-то SCSS, где-то какой-то ангуляр, который как-то скомпилировали и он как-то запускается. Ты поднимаешь какой-то сервер, ещё что-то, но этот код нельзя трогать, а этот можно, а поправить... И ты стоишь и думаешь, нужно ли тебе это всё.
Лёша: А как с этим справиться? Тебе не хочется в этот момент убежать от этого всего?
Андрей: Да, хочется, размахивая руками. Хочется, конечно.
Лёша: Или сразу вопросы к Академии, почему меня этому не научили?
Андрей: Да нет, было понятно, что реальность отличается от тепличных условий на курсах. Наставники тоже предупреждали. Это можно принять, а можно не принимать. Те, кто не принимают, просто не срабатываются с коллективом и через какое-то время сами уходят.
Про английский язык
Андрей: Постоянно его использую, потому что работаю на международном проекте, где в принципе русскоязычных разработчиков очень мало. Документация, коммиты, комментарии — всё на английском.
Собеседования
Андрей: Собеседование — это очень крутая штука. Оно помогает понять твой уровень, особенно если ты какое-то время уже работаешь на одном месте. Почти всегда у меня сначала было тестовое задание, а потом собеседование — там уже разговоры про теорию, проверка soft skills и всё остальное.
Ты приходишь на собеседование, а там обычно тяжело: понимаешь, что ничего не понимаешь, потому что ты просто этими нюансами не занимаешься сейчас.
- К собеседованиям надо готовиться. Нужно понимать, какие вопросы бывают, в какое русло может пойти разговор, что лучше повторить, что подучить. Всё это в зависимости от позиции, на которую ты идёшь.
- Старайтесь не нервничать. Если ты нервничаешь, это может быть воспринято как неуверенность, как-то, что ты и в работе будешь так же себя вести. Излишняя бравада в духе «я всё знаю и всё могу» тоже обычно мешает.
- Задавайте вопросы по условиям работы: как команда, какой проект, что вообще будет, какие у меня будут обязанности, где я буду сидеть, что в столовке, нормально кормят или нет — такие вопросы, они важны. Долго ли ехать, условно говоря.
Если не знаешь ответа на вопрос по теории — выдумывать или сдаться?
Андрей: Лучше начать рассуждать хоть с чего-то, хоть какой-то мыслительный процесс показать. Не факт, что ты выйдешь на решение, но просто когда ты скажешь «Я даже и думать не буду», ничем хорошим это не закончится. Стоит хотя бы попытаться.
Лёша: Я в таких случаях выступаю за честность. Если ты чего-то не знаешь, то лучше прямо сказать и не юлить. Можно сказать, что ты пока с этим не сталкивался на практике, потому что во фронтенде бывает очень много всего, и это тоже будет нормально воспринято. Можно пофантазировать, как это могло бы быть, главное, не заходить слишком далеко.
И тогда собеседующий не будет думать, что ты просто не смог ответить на вопрос. Он знает, что ты не ответил на вопрос, но он видит, что ты готов размышлять о нем. И это всегда плюс.
Чем занимается React-разработчик?
Андрей: HTML и CSS, условно говоря, это просто верстка страничек без каких-то динамических вещей, которые пишутся на JavaScript, который для этого, собственно, и создавался.
JavaScript — язык, который работает в браузере и не только, но в браузере он работает хорошо.
React — такая библиотека, которая позволяет создавать приложения на JavaScript. Это очень популярная вещь, на которой много всего написано. И чтобы работать с React, нужно знать JavaScript, а без JavaScript в React просто нечего делать.
Фронтовые задачи связаны с добавлением новых возможностей в существующие приложения. Не просто рисовать странички, а обмениваться данными с сервером, изменять состояние приложения в зависимости от того, как ведёт себя пользователь. Он что-нибудь пролистал, нажал, подул, навёл — и у него состояние меняется. Этим я и занимаюсь.
Ты до сих пор находишь во фронтенде то, почему его выбрал?
Андрей: Да. Однозначно могу сказать, что мне это нравится, потому что это огромное море вещей, подходов и очень много ещё, в чём есть куда расти. И когда ты видишь результат своей работы и понимаешь, что всё работает — ты понимаешь это все не зря. В какой-то момент для меня какие-то знания казались заоблачными, а сейчас они уже в порядке вещей.
Теперь я хочу закрыть определенные пробелы в знаниях, нарастить опыт, чтобы справляться с любыми задачами, дорасти до сеньора, а там посмотрим, куда жизнь заведёт.
Хочется ещё и бэкенд пощупать, потому что сейчас это для меня как чёрный ящик — посылаешь запрос, что-то приходит в ответ, а ты это раскладываешь, как тебе надо. А как бэкенд устроен внутри очень интересно.
Лёша: У тебя интересная стратегия. Ты сначала пошёл вглубь, разобрался во фронтенде, а теперь начинаешь потихоньку развиваться вширь. Другие языки программирования хорошо изучать, когда вы уже владеете одним или двумя и постоянно работаете на них.
И в в идеале нужно быть не именно JavaScript-программистом, а просто программистом. Потому что язык — это инструмент, сегодня JavaScript, завтра другой язык. И нет разницы, потому что вы уже умеете решать задачи.
Андрей: Важно понять, что быстро ничего не получится, не бросать, не зазнаваться и слушать людей, которые работают с тобой.
«Доктайп» — журнал о фронтенде. Читайте, слушайте и учитесь с нами.
Читать дальше


Как попасть в компанию мечты, если там закрыты все вакансии. Советует HR
Не сдавайтесь — способы есть.
- 14 февраля 2023


Работа в удовольствие: как электронщик ушёл в айти и не жалеет об этом
История Алексея Груднова.
- 3 февраля 2023




Какие вопросы задают на собеседованиях
Нужно ли фронтендеру уметь вообще всё.
- 1 декабря 2022

