Моя карьера в ИТ, как и у многих, начиналась не с диплома по IT-специальности. Хотя я всегда стремилась именно к профессии программиста, и у меня была возможность все сделать намного проще и быстрее, я предпочла самый длинный и тернистый путь из всех. Рассказываю про череду моих осознанных и иногда не легких выборов, которые привели меня к профессии разработчика.
Профиль Юлии на Хекслете со всеми пройденными курсами можно посмотреть здесь, а код выполненных проектов — на GitHub
Не смотря на то, что у нас в городе есть политехнический университет, свое обучение я видела в другом вузе — только в государственном университете. Так случилось, что с раннего возраста меня увлекает анализ поведения и характеров людей. Поэтому, смотря на стремящихся именно в политех своих одноклассников, а также на преподавателей из него, которые по совместительству работали в нашем частном лицее, я понимала, что нам не по пути, а моя «своя атмосфера» царила именно в гос. университете. Но обучение там подразумевает классическое образование. А это значит, что по окончанию образовательной программы выпускник будет не инженером, а специалистом, преподавателем (иногда по совместительству учителем) или начинающим ученым по выбранной науке.
Околостоящие с программированием специальности были на физическом факультете и факультете компьютерных наук. Для многих выбор становился очевидным сразу — они выбирали второй вариант. Но, как вы уже поняли, легкий путь — не мой вариант. В довесок ко всему, мне посчастливилось пообщаться с заведующим кафедры на физическом факультете, на которую я подала документы. Помимо бесконечного потока комплиментов о том, какая я хорошая девочка, и как сильно они хотят меня видеть в своих рядах, он рассказал, что в их программу обучения входят все те же дисциплины, что и на факультете компьютерных наук. При этом на последнем преподают выпускники физфака именно этой кафедры, обучение там занимает те же 5 лет, а выпускники получают специальность просто информатик, а не физик-информатик. А еще на физфаке матанализа в разы меньше, чем на информатике (у меня нет предвзятости к матанализу, но среди местных обучающихся слава у него кошмарная), а подготовка настолько хороша, что выпускников этой кафедры с руками отрывали в любой компании. В итоге взвесив все «за» и «против» я выбрала физфак.
На физфаке было замечательно: потрясающие преподаватели, чудесные одногруппники, учеба мне давалась достаточно легко, даже была повышенная стипендия — слишком комфортная атмосфера, по сравнению со студентами, которых пачками отчисляли с того самого факультета компьютерных наук из-за того самого «кошмарного» матанализа. А на третьем курсе уровень комфорта просто зашкаливал, зачетка работала на меня, а мне тем временем становилось жуть как скучно.
Так я начала искать себе дополнительные занятия — выбор стоял между бесплатными курсами Java, проводимыми на базе университета одной из ведущих ИТ-компаний нашего города с возможностью дальнейшего трудоустройства, и написанием диссертации на соискание ученой степени кандидата (вы могли подумать физических или компьютерных, но нет) педагогических наук. Не буду томить, выбрала я конечно же второе. С третьего курса я с головой ушла в написание научных статей, участие в педагогических конкурсах и конференциях, проведение экспериментов и во все, что требовалось для поступления в аспирантуру и успешной защиты диссертации.
Так я вошла в кураж, отложив цель попасть в IT сначала до окончания специалитета, а затем и на первые 1,5 года обучения в аспирантуре. Но я не забыла о ней. Я мчала к ней на всех парах, но в обход неё. Мне нужно было уложиться в 3 года — время обучения в аспирантуре. И это было невероятно продуктивное время: я успела поработать учителем информатики в одной из лучших гимназий города и лицее, который сама закончила. Параллельно со всем этим побыть репетитором по физике и информатике, преподавателем на той самой кафедре на физфаке, собрать огромный практический и теоретический материал для защиты. Я была неслыханно успешной в этой гонке — к середине второго курса в аспирантуре я закончила свою рукопись и у меня снова появилось время на ИТ, но оставались еще бумажная волокита, связанная с защитой, в связи с чем я не могла себе позволить полноценную работу на полный график.
Читайте также: Как сохранять фокус на протяжении всего обучения: советы от Хекслета
С этого момента начались мои терзания — я задавалась тысячей вопросов, основные из которых были: «А если не полноценная работа в ИТ, то какая? И как попасть в это ИТ, хоть и с условно техническим, но без профильного образования, да еще и с пед. стажем?». К этому моменту мои знакомые с факультета компьютерных наук либо уже выпустились и где-то работали, либо после отчисления работали на фрилансе. Но все они нагоняли страха и говорили, что вузовское образование им либо не помогло, либо не пригодилось, и они в течение какого-то времени дополнительно прокачивали свои хард-скиллы на курсах и стажировках.
В эти моменты в мою голову закрадывались сомнения, ведь хоть я все это время тоже прокачивала скиллы, но это были софт-скиллы, они ничего не стоят без хард-скиллов. Так же эти ребята советовали: «Начни хоть с чего-нибудь! Попади хоть в самую унылую, но ИТ-компанию, хоть на какую-нибудь вакансию, хоть на уборщика!».
Будучи невероятно благодарной сети Интернет и её создателям за безграничный поток открывающихся возможностей, я выбрала направление веб-разработки. Мне кажется очень полезным и благородным способствовать предоставлению доступа к информации и за счет этого облегчать людям жизнь. Так я купила профессию «Веб-разработчик» на платформе GeekBrains, на тот момент она больше остальных была на слуху. Обучение длилось около года, а на каждый курс отводилось около месяца. Пройдя курсы по HTML, CSS и JS я решила, что уже могу быть верстальщиком, поэтому пришло время уйти с должности учителя и найти работу в «хоть самой унылой, но ИТ-компании».
Среди таких компаний, где вакансии объединяли в себе всевозможных специалистов, в том числе и уборщиков по совместительству, только не верстальщиков, я пользовалась диким спросом. Одно предложение было причудливее другого, глаза разбегались — от чего первого отказаться. И вот в один прекрасный день мне подвернулась вакансия «Разработчик программных интерфейсов и тестовых сценариев», требуемые навыки максимально переплетались с моими, да и если судить по отзывам, вакансию размещала вполне приличная компания. Туда-то меня и взяли.
Помог ли мне опыт работы на этой должности в дальнейшем карьерном росте сказать довольно сложно. С точки зрения того, что работа там была не бей лежачего, и у меня оставалось очень много времени на оформление документов для защиты, продолжения прохождения курсов, изучения английского языка до уровня B2 с последующей командировкой в Германию в качестве переводчика — и все это в рабочее время, то да, это было полезное и ценное время. Еще и оплачиваемое.
Но есть и другая сторона медали: через 1,5 года работы в этой компании, успешной защиты диссертации и окончания оставшихся курсов — React, SQL, PHP, Yii2 в профессии «веб-разработчик» я поняла, что моя должность совершенно не соответствует моему стеку. Так я решила заняться поиском более подходящей работы — фронтенд или бэкенд-разработчика, ведь на курсах нас готовили именно к этому.
Читайте также: Гид по профессии тестировщик: чем занимается специалист в сфере QA, сколько зарабатывает, что надо знать и где учиться
И все началось будто с начала — милые hr-девочки в упор не замечали мой опыт, все утверждали, что этих курсов и портфолио из домашних работ, а также опыта разработчиком в неизвестной для них сфере совершенно недостаточно, и им нужно портфолио работ с реальными клиентами. Поэтому все, что они мне могли предложить — бесплатные неоплачиваемые курсы на полную занятость от их компаний, которые начнутся через 3-6 месяцев и продлятся 1-6 месяцев. При этом на них меня будут учить тому же самому, что я уже знала. После этих курсов меня могли бы взять на работу, но предпочтение давали студентам, потому что они просили меньше денег за свою работу.
Озвученные разными HR предложения меня не привлекали, я сходила на пару митапов от этих компаний, посмотрела контингент работающих там студентов и убедилась, что посещение курсов было бы пустой тратой времени. Так я решила стать вольным фрилансером и прошлась по знакомым предпринимателям с предложениями по разработке сайтов по дешевке.
Конечно, все мои близкие были в шоке, они искренне не понимали, как можно вот так вот взять и уйти в свободное плавание после всех достижений. Так в портфолио легли сайты, посвященные продаже генераторов и строительного оборудования, бассейнов, курсов развития речи детей от популярного педагога нашего города, доставке еды, аренде походных бань и байдарок, и самый шикарный — платформа по изучению латинских терминов арабскими студентами (здесь нужно сказать, что заказчиком был сириец, живший в Германии, и этот проект представлял собой стартап на английском и арабском языках). Работа над ним была невероятно интересной и заняла чуть более шести месяцев, пока в конечном итоге заказчик не осознал, что не может больше тянуть такое свое хобби и не закрыл сервис.
На таком фрилансе я пробыла чуть более девяти месяцев, и потом снова сделала попытку найти более официальную работу. Конечно же я снова откликнулась на вакансии от описанных выше фирм, но теперь HR мне объясняли, что для них в моей кандидатуре совершенно ничего не изменилось. И если бы у меня был хотя бы полный год опыта на коммерческом фрилансе, а не вот это вот все, то все было бы иначе. А сейчас с такими результатами они могут предложить только курсы от их компаний.
Будучи переполненной отчаяния, я решила податься на ближайшую открытую стажировку. Дали мне тестовое задание. Я его выполнила, отправила на проверку и, о нет, новый ступор — мне лично написал главный преподаватель с этой стажировки, который и проверял решения. Он сказал, что я слишком хороша для них, потому что знаю больше него и его команды, и они были бы рады видеть меня в их рядах, но им совершенно нечего мне предложить как на стажировке, так и на работе. Основная причина — выше должности в этой компании, чем у моего собеседника, уже не было, а уходить он не собирался.
Спасибо ему, он дал оценку моим навыкам, а так в сложившейся ситуации мне самой было сложно это сделать, то это было очень ценно. И после этого он дал совет искать работу на удаленке, желательно в больших, более продвинутых городах. Так я и сделала и действительно, начала пользоваться намного большим спросом.
Читайте также: Почему Laravel — один из лучших PHP-фреймворков для стартапов и энтерпрайза
В итоге меня страстно захотели нанять на должность джуна PHP-программиста в российскую компанию и фронтендером на Vue.js в израильский стартап. Кстати, если говорить про вторую возможность, то дверь в нее мне открыла та самая платформа на арабском языке. И их ничуть не смущало, что у меня не было коммерческого опыта и я практически не владела Vue: им очень понравились моя личность и проделанный мною путь, а после выполненного тестового задания и собеседования, их CEO хотел видеть на этой должности только меня. Нужно сказать, что в этом варианте я увидела больше перспектив для развития хард и софт-скиллов, поэтому я ушла туда.
По моим ощущениям и отзывам коллег, на этом стартапе я нереально прокачалась как фронтенд-разработчик. Я решала мыслимые и немыслимые задачи, мы работали в режиме постоянного дедлайна с постоянными переработками. Конечно, это было не легко, но это было невероятно круто, особенно зашкаливающая сплоченность команды и желание достичь лучшего результата. К сожалению, стартап закрылся чуть больше, чем через год, но я не осталась на улице. Мне предложили попробовать себя на открывающуюся через две недели вакансию бэкенд-разработчика на Laravel и это был новый вызов для меня — ведь я не знала ни Laravel ни Postgres SQL, а на PHP не кодила уже более года и, к слову, не помнила ничего напрочь. Кстати, спасибо Хекслету, курсы помогли мне заполучить эту должность и вот как это было.
С Хекслетом я познакомилась совершенно случайно где-то за неделю до описанного в предыдущем абзаце события. Стараясь быть в теме современных ИТ-новостей и тенденций, я записалась на неделю конференций от Podlodka Crew для фронтенд-разработчиков, на которой выступал Кирилл Мокевнин, сооснователь и CEO Хекслета. Он как-то вскользь без лишней рекламы и пафоса упомянул о своем образовательном проекте, и на его основе привел какой-то пример про разработку. На тот момент я находилась в поисках подходящей платформы, посвященной углублению навыков программирования, но большая их часть предполагала именно обучение с нуля, а такой опыт я уже имела, мне нужно было что-то именно для прокачки.
Я полезла смотреть, что это за Хекслет такой, ознакомилась с парой бесплатных курсов, чтобы понять в каком ключе идет обучение — и Хекслет оказался удивительной платформой, не похожей на все, что так много рекламируется в соцсетях. Первым отличием была возможность обучаться самостоятельно, вторым — деление направлений и языков программирования по темам на небольшие курсы с указанием примерного времени их прохождения. Третьим отличием — тренажер с автоматической проверкой практических заданий, четвертым — отсутствие навязчивой рекламы и пятым, последним, но немаловажным, — адекватная стоимость подписки. В последующем все это позволило мне оценить, сколько времени и средств мне потребуется, чтобы с помощью Хекслета подготовиться к собеседованию и выполнению тестового задания.
Бодрясь, что я все еще что-то знаю и помню, готовиться на платформе я начала не сразу. Для начала я решила прочитать документацию по PHP, Laravel и Postgres SQL — я подумала, что, возможно, этого будет достаточно, ведь я же с каким-то, но опытом. Но буду честна с собой и вами — все было как в поговорке «В одно ухо входит, в другое выходит». Да, знать теорию — прекрасно, и документация сама по себе хороша. Особенно когда у тебя уже наработана практика и ты понимаешь, где и для чего применяются описанные в ней примеры. Но для выполнения практического задания одной лишь документации недостаточно, а выдумывать самой себе примеры или искать качественные задачи слишком накладно с точки зрения временных ресурсов. Тут я и решила раскошелиться на подписку Хекслета, хоть у меня и оставались сомнения, что платная часть может быть не так хороша, как открытая. Но я посчитала, что игра стоила свеч.
Читайте и другие истории успеха: Как нефтяник и водитель трака стал Java-разработчиком в Майами
Теория на Хекслете оказалась очень лаконичной: она быстро и легко читается, и при этом соответствует документации. Практически к каждой теме приложен список хорошо подобранной дополнительной литературы, а каждое упражнение полностью основывается на теории — если человек понял тему, он обязательно его выполнит и осознает, как работает та или иная функция или конструкция.
И даже если случается, что что-то вдруг в упражнении было непонятно, то всегда можно открыть вкладку «Обсуждения» и найти там ответ на свой вопрос. В конце многих курсов есть раздел испытаний с заданиями повышенной сложности, которые объединяют в себе несколько тем. Они более приближены к реальным рабочим задачам и помогают глубже проработать изученный материал.
Еще я обратила внимание на формулировку некоторых заданий на Хекслете: они были не как классические задачи в учебниках, а как реальные ТЗ или правки, в которых перед вами ставят проблему, а для ее решения нужно перестроить свой мозг с работы по шаблону на творческий лад. Кроме того, нужно приложить дополнительные усилия, чтобы понять, что и как делать, зачастую даже изучить дополнительные файлы с кодом.
На Хекслете особого внимания заслуживают файлы автотестов, многие упражнения основаны именно на них. Для меня было очень интересно копаться в чужом коде, анализировать его и перенимать best-practice. Такая дополнительная активность вдохновляет как на развитие хард, так и софт-скиллов. Это довольно актуально — ведь при работе над реальным проектом никто и ничего разжевывать не будет (не потому что им не хочется, а потому что на это нет времени), и реальность такова, что разработчику нужно уметь работать с чужим кодом, абстрактными заданиями и разными людьми.
В итоге из предложенного перечня курсов я выбрала шесть или семь, закрывающих пробелы в моих знания, или дополняющих их. Документацию я читала два дня, а курсы проходила дней девять. Суммарно усиленная подготовка заняла около 11 дней и стоила мне всего лишь одной подписки. На мой взгляд — это выгодное вложение и очень короткий срок для освоения трех технологий, двумя из которых я не владела вообще. На собеседования я вышла достаточно уверенной в своих знаниях и силах, способной конкурировать с бэкенд-разработчиками со стажем. В итоге я успешно прошла этап интервью и выполнила тестовое задание — и вот уже почти год на новом месте. Я продолжаю прокачиваться в бэкенде, решая мыслимые и немыслимые задачи в режиме перманентного дедлайна.
Не бойтесь ставить цели и помните, для их достижения нужно начать «хоть с чего-нибудь».
В заключение, хочу еще раз поблагодарить команду Хекслета, вы проделали огромную и, на мой взгляд, гениальную работу — и помогли мне в короткие сроки достичь желаемого. Я счастлива, что имею возможность и дальше расти и развиваться вместе с вами: с тех пор с определенной периодичностью я прохожу ваши курсы и совершенствую свои знания и навыки.
Никогда не останавливайтесь: В программировании говорят, что нужно постоянно учиться даже для того, чтобы просто находиться на месте. Развивайтесь с нами — на Хекслете есть сотни курсов по разработке на разных языках и технологиях