В Академии учатся разработчики разного уровня: от совсем новичков до опытных разработчиков. Каждый из них со временем спрашивает себя (и нас)
Обучение закончилось, я что-то знаю и умею, что делать дальше?
Ответ простой — определиться с планом развития и учиться дальше. Важно понимать, что план — не панацея и не набор готовых решений. У каждого человека он будет своим, в зависимости от стартовых знаний, навыков и мотивации.
Конечным пунктом должен быть не просто апгрейд навыков, а конкретное достижение — повышение грейда, устройство в определённую компанию, освоение новых технологий. Вдобавок план поможет избежать прокрастинации или того, что называется «профессиональный простой».
План развития помогает понять, как ваши дела на профессиональном уровне, что вы уже знаете, а что ещё только предстоит изучить или сделать. По опыту нашего «Центра карьеры», составление дорожной карты — это хороший способ избежать неожиданностей и подготовиться к новым высотам.
Проверяем знания
Перед составлением плана полезно определиться с тем, что вы уже умеете.
Веб-разработка делится на две части: фронтенд и бэкенд. Первая отвечает за ту часть кода, которая видна пользователям, вторая — за всё, что выходит за рамки графического интерфейса: работу с данными и функциональностью.
Ещё бывают фулстек-разработчики, которые умеют работать и с фронтендом, и с бэкендом. В зависимости от направления вашей работы и будет формироваться список навыков.
Кстати, фронтендерам точно будет полезным одно из наших прошлогодних исследований — «Какие навыки нужны фронтендеру, чтобы стать мидлом»?
Если говорить о минимальном наборе профессиональных навыков фронтендера, здесь должны присутствовать:
- Языки: HTML, CSS, JavaScript;
- Фреймворки: React, Vue;
- Препроцессоры: Pug, Sass;
- Системы контроля версий: Git, GitHub.
Уровень детализации можно уточнять, но главные технологии такие.
У бэкендеров навыки несколько шире, ведь бэкенд в проектах может быть написан на самых разных языках. Но попробуем перечислить минимальный набор:
- Язык на выбор: PHP, Go, asp.net, C/C++, Python, Ruby, Java;
- API: REST, SOAP;
- Фреймворки: Node.js, Django;
- Системы контроля версий: Git, GitHub.
Сами бэкендеры говорят, что где PHP, там и Go, и вообще, под каждую задачу свой язык. Но всё сразу не выучить, стоит начать с чего-то одного.
Вдобавок любой разработчик должен разбираться в принципах работы серверов и понимать, как тестировать код на ошибки. Это «базовый» набор, он может варьироваться и дополняться; более того, бэкендер должен разбираться в основах работы фронтендера и, желательно, наоборот.
Теперь представим, что студент прошёл курс по веб-разработке и получил стартовые навыки. Дальше есть два варианта
- Пока не может попасть работу, потому что чего-то не знает.
- Нашёл работу, но от него ждут роста и развития, и непонятно, как с этим быть.
Какие бывают планы развития
Какой бы вариант составления профессионального плана вы не выбрали, у него будет одна из трёх структур:
- С привязкой ко времени (timeline roadmap). Для каждого пункта есть срок, к которому вы планируете его выполнить.
- Без привязки ко времени (no-dates roadmap). Сроков нет и вы прикидываете картинку широкими мазками.
- «Смешанный» тип (hybrid roadmap). Могут быть пункты обоих типов.
Выбирать тип схемы нужно исходя из ваших предпочтений и стиля работы. Например, для изучения нового фреймворка вы можете поставить конкретный дедлайн, а цель «выучить английский» вряд ли можно привязать к дате, ведь она будет напрямую зависеть от вашего текущего уровня и времени, которое вы можете уделять учёбе. Поэтому сначала определитесь с тем, какой вариант дорожной карты вы будете строить для себя, на что делать основной упор.
Охватить всё и сразу — плохая идея. Если в вашем варианте «карты профессионального развития» будут перечислены абсолютно все технологии и софт скиллы, о которых вы когда-либо слышали, план можно назвать нереализуемым.
Планы развития для сотрудников составляются и разрабатываются в компаниях, в этом должен быть заинтересован не только сам разработчик. К сожалению, далеко не все компании это практикуют. Например не все понимают, зачем это нужно и как правильно это сделать.
Мы делаем так: на собеседовании спрашиваем, как кандидат видит свой рост, что ему хотелось бы изучать, какой стек интересен. Если человек уже знает, что хочет прокачать, а компания может в этом помочь, то почему бы и нет?
Некоторые могут принести готовую дорожную карту, но скорее для ознакомления. Главное иметь в голове хоть какой-нибудь план.
София Петлякова, HR.html academy
Начинаем составлять план
Составляйте план исходя из следующих параметров:
- Timeline: есть ли у вас ограничения по времени.
- Soft skills: есть ли у вас пробелы в навыках вне кодинга.
- Hard skills: какой стек вы хотите изучить с нуля, а понимание какого — углубить.
- Grade: в какой компании вы хотите работать в будущем и какой для этого нужен уровень.
Когда наберёте достаточно данных, переходите к конкретике. Берите конкретную технологию, в которой хотите прокачать свои знания и ставьте перед собой вопросы:
Почему это важно для меня? Например, хочу выучить Vue.js, чтобы стать мидлом. Хочу выучить английский язык, чтобы читать документацию и статьи в оригинале.
Сколько у меня есть времени для обучения? За неделю можно прочитать небольшую книгу, за месяц — уложить в голове основы, за год-полтора — получить новую профессию. От срока зависит глубина погружения и итоговое качество знаний.
Какие способы прокачки мне доступны? Это могут быть курсы по вёрстке, учебники и книги, конференции, пет-проекты. Выберите то, что интересно, и действуйте.
С чем эта технология связана дальше. Что можно будет изучить после неё? Где предел, после которого можно учить что-то другое? Чтобы помочь себе, посмотрите карту компетенций, по которой можно построить свой путь от джуна до сеньора.
Так вы превратите план своего развития в инструмент для формирования целей и отслеживания их состояния.
Как прокачать навыки в веб-разработке
Главный принцип для успешного обучения вёрстке — практика. Вы можете
- Брать для практики готовые макеты с Dribbble или Figma;
- Искать информацию в портфолио дизайнеров на Behance;
- Брать готовые проекты на условном ThemeForest.
Берёте и верстаете, или хотя бы пытаетесь сверстать. Со временем придёт понимание, что делать, и на что нужно обращать внимание. Главное — не класть чужие проекты себе в порфтолио.
Другой вариант — посмотрите, как устроена программа обучения в Академии.
Для бэкенда можно изучить Backend Developer Roadmap или 12 вопросов, которые задают о бэкенде чаще всего. По ним видно, что точкой отсчёта для бэкендера могут быть очень разные стеки технологий: от вопросов работы протокола HTTPS до принципов функционирования веб-сервера.
Улучшаем код
Обратите внимание и на улучшение кода: он должен быть понятным и работать быстро, без ошибок.
Продумайте, к примеру, свой сайт с резюме. У первой версии должна быть хорошая адаптивная вёрстка, форма обратной связи, возможно, вы добавите какие-то интерактивные элементы.
Во второй версии можно решить проблему скорости загрузки страниц, внедрить пасхалки с демонстрацией ваших умений или портфолио, или сделать его с помощью SPA. Выгода от решения такой задачи простая: потенциальный HR и тимлид смогут оценить уровень вашего мастерства, просто посмотрев на код.
На что еще обратить внимание веб-разработчику:
- Фреймворки;
- SPA и приложения;
- Работа с CDN.
Эти навыки, вероятно, будут оцениваться на технической части собеседования, так что их стоит включить в свой план в обязательном порядке. Если вы заранее изучите информацию о предполагаемом или желаемом месте работы, то поймёте, на что сделать упор в первую очередь.
Основная ваша задача в кодинге — чистый и понятный другим код. Исходя из этой задачи и нужно будет составлять план и готовиться к интенсивной учёбе, ведь разработка не стоит на месте.
Дополнительные материалы
Как прокачать софт скиллы
В список гибких навыков обычно включают всё, что напрямую не имеет отношения к разработке. Например, способность общаться внутри коллектива (и делать это нетоксично) и уметь адаптироваться к сложным ситуациям.
Со стороны это описание кажется очень общим, но эти навыки точно пригодятся, поэтому стоит включить их в свой план развития.
Как это выглядит на практике: после нескольких встреч с HR вам могут предложить пройти что-то вроде теста на навыки лидерства или работы в команде. Иногда вместо теста устраивают поведенческие интервью или просят рассказать о том, как вы могли бы поступить в смоделированной ситуации.
Не все готовы ответить на вопросы о том, как поступить в ситуации, когда коллега нарушает «этический кодекс» компании или «что такое командный дух в среде веб-разработчиков». Однако именно такие интервью и вопросы помогают оценить «гибкие навыки».
Как прокачивать? Подумайте, с какими сложностями при общении вы сталкиваетесь чаще всего? Принято думать, что многие разработчики — интроверты, но между интровертом и человеком, который не умеет общаться, есть разница. К тому же, не все soft skills сводятся к навыку общения, некоторые касаются вашего умения принимать самостоятельные решения, решать конфликтные ситуации и доносить свою позицию.
Рассмотрим простой пример: после курсов вы пришли работать или стажироваться в компанию, вас взяли на проект. Какие навыки могут понадобиться и будут оцениваться во время работы?
- Креативность — хватает ли вам знаний и смелости, чтобы предложить нестандартное решение рабочей задачи;
- Навыки общения — от вас будут ждать не только идею, но и умение объяснить принцип её работы своим коллегам и руководству;
- Работа в команде — действуя сообща с командой можно добиться больших результатов, чем в одиночку;
- Лёгкая адаптация — если вас «перебросят» на другой срочный проект или задачу, собьёт ли это вас с толку?
В каждой компании отношение к ним может меняться: где-то будут готовы закрыть глаза на то, что разработчик слабо контактирует с новичками, где-то тимбилдинг будет обязательной опцией, наряду с ежедневными и еженедельными созвонами команды. Как проверить себя и включить недостающие элементы в план?
Есть очевидные пункты. Например, если вы идёте работать в стартап, вам нужно оценивать риски, планировать и генерировать идеи. Английский — важный бонус и почти обязательное требование, если вы хотите быстро получать и обрабатывать новую информацию.
Дополнительные материалы
- Common Behavioral Interview Questions
- 45 software developer behavioral questions for non-technical interviews
- 112+ Behavioral Interview Questions for Software Developers
Как не испортить план развития
Если представить карьерные шаги как временную шкалу от состояния «сейчас» до «дедлайна», единицами измерения могут быть и год, и пять, и десять лет. Тогда план будет макетом будущего, который вы можете заполнить чем угодно.
Дробите задачи. Например, если конечная цель будет слишком глобальной, со временем она может переехать из раздела «чего я хочу добиться» в раздел «недостижимого идеала».
Чтобы справиться с этим, большие цели лучше разбить на несколько маленьких, а вот выбор инструмента зависит только от ваших предпочтений. Это могут быть чеклист, to-do доска, таблица, презентация, дорожная карта — любой из этих инструментов должен опираться на главный принцип: ваш список должен быть понятным и помогать вам прокачивать свои навыки. Например, заведите себе Notion — там удобно планировать.
Готовьтесь к неожиданностям. Например, могут сильно сдвинуться сроки, в которые вы рассчитывали изучить новый стек. Но если у вас есть план, заминка во времени не так страшна, потому что вы легко можете переключиться на что-то, что требует не так много времени, или дополнить дорожную карту новыми данными.
Мы составили для вас пакет необходимых навыков для развития скиллов по разработке интерфейсов, который вы можете вписать в свой план развития и эффективно двигаться к цели.