«Войти в айти» — быстро, дёшево и не больно
Как попасть в IT, если очень хочется, но вы ещё ничего не знаете. Советы бывалого фронтендера.
Meery Mary для Skillbox Media
Артём Башкатов
эксперт
об авторе
По первой специальности контент-менеджер. Прошёл долгий путь и в итоге стал фронтенд-разработчиком. Интересы: книги, фильмы, «Аллоды Онлайн» (российская MMORPG).
В IT не только «куча денег», но и огромное количество технологий и специальностей, а «войти в айти» — очень широкое и абстрактное понятие. Выбрать язык программирования наугад можно, но вы наверняка ошибётесь и потеряете время. Артём Башкатов, опытный фронтенд-разработчик и бывший гуманитарий, рассказал, как найти «свою» технологию, правильно отучиться, влиться в комьюнити и заработать первые деньги.
Шаг №1
Определяем вектор движения
Когда человек впервые задумывается о том, чтобы попасть в айти, он часто теряется. Направлений, языков, фреймворков множество — и непонятно, как выбрать то, что подойдёт именно вам. Как говорилось в известной сказке, если не знаешь, куда хочешь попасть, то и неважно, в какую сторону идти. Однако только корабль, у которого есть цель, сможет приплыть к нужному причалу. Тот же принцип работает и в любом другом деле: важно найти вектор, определиться с желаниями и двигаться по выбранному пути.
Чтобы разобраться, чем именно вы хотите и способны заниматься, я советую посмотреть обучающие видео на YouTube, вебинары и бесплатные уроки из разных IT-курсов. Это даст общее представление об индустрии и поможет определиться с выбором. Иначе вы попробуете себя в каком-то направлении, а оно вам не подойдёт. При этом неспособность делать классные сайты вовсе не означает, что вход в айти для вас закрыт, — возможно, вы найдёте себя в разработке мобильных приложений или чём-то ещё.
Правда, чтобы это узнать, нужно пробовать: создайте пару учебных проектов по инструкциям из сети и поймёте на собственном опыте, что вам ближе. На YouTube-каналах полно контента для новичков — по видеоурокам можно накодить что-то осязаемое всего за пару вечеров.
Ещё один хороший метод — написать на листочках варианты обучения и пройти по каждому направлению бесплатные занятия на YouTube. Если какие-то уроки вас затянут, захочется погрузиться в них глубже или пересмотреть, это хорошо. Значит, вы нашли технологию, которая придётся по душе.
Шаг №2
Подготовка к курсам и самостоятельное обучение
Новички часто совершают одну и ту же ошибку — сильно распыляются, читают сразу и про фронтенд, и про бэкенд, и про мобильную разработку. В общем, тратят свой ресурс без остатка. В результате они либо перегорают, либо их карьерный путь растягивается на долгие годы.
Я не считаю, что надо сразу идти на курсы. Пробного периода, который обычно дают онлайн-школы, слишком мало, чтобы определить, подходит вам это направление или нет. За условную неделю занятий вы даже не успеете закрепить основы и не начнёте мыслить категориями программирования. Те, кто поспешил и сразу записался на курсы, быстро выгорают, а потом ругают онлайн-школы — мол, я заплатил деньги и не смог получить профессию.
А вот когда вы уже в течение месяца пробовали что-то делать, читали книги, собирали небольшие проекты по видео с YouTube и загорелись темой, можно идти и на курсы. В этом случае вы уже будете понимать основы и не сильно отстанете от более опытных однокурсников. А главное, избежите сильного стресса — это бич тех, кто осваивает специальность с нуля. Для таких студентов всё в новинку, и они просто не успевают впитывать знания. Как следствие — сильно переживают, что однокурсники ушли вперёд, а они застряли и ничего не понимают.
Так что позаниматься месяц и изучить основы самостоятельно — это как страховка: обучение уже не превратится в негативный опыт и историю о том, что «не получилось».
Параллельно с курсами — и даже вместо них — важно прочесть пару книг по синтаксису выбранного языка и закрепить примеры на практике (практика обязательна!). Помните, что большинство собеседований джуны проваливают из-за неуверенных ответов на базовые вопросы. Именно поэтому надо руководствоваться правилом: научился чему-то — сразу напиши код, создай мини-проект, закрепи теоретические знания.
Совет
Когда изучаете что-то новое, оставляйте пометки в обычном бумажном блокноте. Эти записи пригодятся, когда вы начнёте делать собственные проекты или устроитесь на работу. Используйте блокнот с цветными подразделами, обклеивайте его стикерами — в общем, упорядочивайте информацию как вам угодно, лишь бы не запутаться. И да, за время учёбы блокнот наверняка придётся переписать несколько раз.
Шаг №3
Погружаемся в комьюнити
По видео с YouTube и статьям не всегда понятно, что именно стоит изучить до курсов. Лучший способ накидать себе первоначальную карту знаний — поговорить со знакомыми из выбранной сферы. Если у вас таких нет, присоединяйтесь к чатам и форумам, находите опытных ребят и спрашивайте их. Ещё один действенный способ — появляться на конференциях и митапах. Там всегда есть секции нетворкинга — можно подойти к состоявшимся разработчикам и спросить, что почитать и посмотреть новичку.
Если человек оторван от комьюнити, ему будет некому задать вопросы. Поэтому старайтесь как можно быстрее окружить себя правильной информацией и связями: читайте специализированные Telegram-каналы, общайтесь в Twitter и других соцсетях.
Поговорив с несколькими десятками опытных специалистов, вы увидите, что некоторые рекомендации повторяются. Зафиксируйте список — именно это стоит читать и смотреть в первую очередь. Хорошие книги и уроки всегда на слуху.
Например, JavaScript-разработчикам я рекомендую начинать с книг «JavaScript и jQuery» Дэвида Макфарланда и «ECMAScript 6 для разработчиков» Николаса Закаса. Они лежат у меня на столе — периодически в них заглядываю, если нужно что-то быстро вспомнить или найти. Я считаю, что информации из этих двух книг достаточно, чтобы пройти собеседование на позицию джуниора. И сам нет-нет да и перечитываю их перед интервью с работодателями.
Шаг №4
Заниматься систематически и идти на жертвы
Мы все уже взрослые, и кроме учёбы у нас есть семьи, домашние обязанности, работа. Причём эта работа может быть разной: сутки через двое, далёкие командировки, офис с девяти до шести. И если не заниматься регулярно, профессию сменить не выйдет. Поэтому важно приучить себя ложиться на час позже или вставать на час раньше — и это дополнительное время использовать для обучения. Например, заканчивать дела до 23:00, а потом час или два посвящать программированию.
Это очень сложно, но, чтобы поменять свой образ жизни, придётся идти на жертвы. Близким важно объяснить, что у вас сейчас меньше времени, но вы стараетесь для них. И что, пережив этот этап, будете зарабатывать не условные 30 тысяч в месяц, а 90 и больше.
До прихода в айти у меня был график с девяти до шести. Я добирался до дома в восемь вечера, ужинал, немного отдыхал и с девяти занимался. Занятия были не всегда продуктивными, потому что к этому моменту я уставал. Тем не менее я не сдавался и старался уделять обучению хотя бы 20 минут в день. Со временем стало легче, уже не надо было биться с одной и той же задачей по несколько часов. Появилось ощущение, что я расту и у меня всё получается.
С другой стороны, есть и противоположные примеры. Один парень пришёл в образовательную компанию и сказал, что хочет стать разработчиком, изменить свою жизнь. Начал учиться, но потом ушёл в отпуск и уехал на две недели в Африку, остановив обучение. Его ментор тогда сказал, что на словах парень хочет изменить жизнь, а на деле не готов ради этого пожертвовать всего лишь одним отпуском. И я был согласен с ментором.
Шаг №5
Делать мелкие проекты для портфолио и ходить по собеседованиям
На хороших курсах уже к концу обучения у вас появятся небольшие проекты, которые не стыдно загрузить на GitHub и показывать работодателям. Но этого мало — лучше создавать и собственные мини-проекты: это поможет набить руку, освоить новые технологии и инструменты. Чтобы определиться, что именно делать, почитайте требования к вакансиям.
Например, если в описании вакансии фронтендера указано, что надо знать React, берите и делайте какой-нибудь мелкий проект на React. А если компании хотят, чтобы кандидат умел проводить интеграции с Google Maps, то собирайте проект в Google Maps. В сети полно туториалов, документалок, уроков и примеров кода, которые позволяют самостоятельно разобраться с подобными задачами — выполнить их быстро и качественно. Проекты должны быть маленькими и простыми, чтобы просмотр и оценка не занимали много времени, но хорошо, если в каждом из них будет какая-то интересная фишка — например, анимация.
Делать для учебного проекта сайт размером с Amazon — на 200 тысяч строк кода, со спецэффектами и анимацией — плохо:
- Скорее всего, вы никогда его не допилите, плюс к тому зря потратите время, потеряете мотивацию и забросите проект — хорошо, если не вместе с мечтой «войти в айти».
- У работодателя нет времени ковыряться в таком огромном куске кода. А ведь он зайдёт в ваш аккаунт в LinkedIn и будет смотреть релевантные для себя примеры. Поэтому запиньте в аккаунте на GitHub несколько подходящих под вакансию мелких проектов. Посмотрев их, работодатель поймёт, что вы с его задачами справитесь.
Обязательно готовьтесь к собеседованиям: перечитайте свои заметки, полистайте справочники, проверьте проекты на GitHub: убедитесь, что они доступны и запускаются. Если работодатель не смог запустить проект из-за поломки или устаревших модулей, считайте, что вы не прошли собеседование, потому что неподготовленность никому не нравится.
У вас было время сделать всё хорошо, но вы этим не занялись. Что же тогда будет при цейтноте? Постарайтесь донести, что умеете работать в команде и по её правилам; что не станете копить технический долг; что умеете задавать вопросы и запоминать ответы на них. Самая главная задача на собеседовании — показать заинтересованность, базовые знания и умение доводить дело до конца.
Сменить профессию без потерь не так уж и сложно. Начните свой путь в IT с курсов раздела «Программирование» на сайте Skillbox.