Мне 24 года, и сейчас выбранная профессия кажется очевидной, но я слишком долго сомневался.
В восьмом классе мы с другом пошли на курсы по созданию сайтов. В основном верстка, даже немного запросы и PHP были, но помню это отрывочно. А что помню хорошо — было интересно. Мы даже как-то выступили со своим сайтом на конференции. Хотел прикрепить фото небольшого справочника по той конференции, где был наш сайтик, но видимо я этот справочник выкинул из-за стыда, так как в заголовке проекта была допущена орфографическая ошибка.
Я даже сдал предметы по ЕГЭ, которые требуются в ИТ-вузах, и поступил на бюджет. Но мне казалось, что я поступил только потому, что мне это удавалось немного легче, чем остальным. К тому же были и личные проблемы. В итоге через полгода отчислился. Я не знал, чего хотел, и чтобы на меня не наседали, пошел на заочное на финансы. Не самое умное мое решение.
Привет, Хекслет, но я зайду чуть позже
Поработал консультантом в магазине, в банке. Очевидно, это было не моим.
Где-то на первом курсе заочки (2015 или 2016 год) наткнулся на канал Хекслета на YouTube. Посмотрел стрим, который вел Рахим. Мне понравилась его увлеченность, в целом было душевно и непонятно, но очень интересно. Не знаю, почему в течение следующих двух с лишним лет от вас не отписался, хотя глянул всего пару роликов и один раз зашел на сайт.
В течение двух лет окончательно понял, что хочу вернуться в ИТ. Ну как вернуться, я там особо и не был. Только теперь появились опасения, что я недостаточно умен. Да и поздно уже пытаться. Мне было 22, а чувствовал себя на все 100, видимо. Тем интереснее для меня было здесь читать, как люди меняют профессию и в тридцать, и в сорок и в гораздо более позднем возрасте.
Только было не очень понятно, как войти в этот ваш IT. И я вспомнил, что подписан на Хекслет, а у них какие-то курсы вроде есть. Это было летом 2018 года. В августе я прошел упражнения на Code Basics на PHP. Сомневался, какой язык выбрать, но услышал в видео совет от Кирилла, посыл был такой: «Просто что-нибудь выбери, язык программирования — это инструмент, который может быть заменен».
Погружаясь в Хекслет
За следующие 7 месяцев я раза четыре забросил Хекслет на несколько недель 🙂
После возвращения приходилось перепроходить часть курсов, так как было тяжело вспомнить, что делал. Без практики все достаточно быстро забывается, особенно, если еще не разобрался в этом на достаточном уровне. И забрасывал я, когда мне достаточно быстро не удавалось найти решение. Но после возвращения и перечитывания лучше понимал тему и с большим упорством шел дальше, пока снова не приходил в тупик.
Хотя я и возвращался, в целом это было глупо. Возвращаться бывает тяжеловато. Лучше сразу перечитать, а если и отвлекаться, то не на такой большой временной промежуток.
Сейчас понимаю, насколько здесь доступно все объясняется. Только это тяжело бывает осознать с первого раза, особенно если что-то совершенно незнакомое. В этом нет ничего страшного.
Первая работа
И вот я за 7 месяцев прошел большую часть курсов по PHP и один проект. Уже можно искать работу. Не то чтобы я был уверен в своих знаниях, но без практики труднее дальше продвигаться. В качестве практики есть, конечно, проекты, и я намерен пройти их, но посмотрев несколько публичных собеседований, решил попробовать.
Первое собеседование в веб-студии, которая специализируется на Битрикс. Было четыре вопроса на листочке, полчаса, ручка, стул, стол и я. HR сказала, что через полчаса подойдут ко мне и оценят решение. Один из вопросов по верстке и JS, у меня там шансов не было. Но на два я ответил. К четвертому не успел приступить. Вроде там нужно было написать алгоритм обхода дерева.
Спустя чуть больше получаса появился технический директор, спросил, как можно исправить ошибку в их первом примере. В первом вопросе я писал, что будет выводить на экран кусочек кода.
Он сидел напротив меня и смотрел, что я пытаюсь написать. Все. В голове пусто, хотя обычно хоть какие-то неправильные варианты крутятся в голове.Переволновался слишком. В итоге на работу не пригласили, но сказали, можешь попробовать пройти стажировку. Как только вышел из здания, понял, как нужно было исправить.
А вот на стажировку им надо было прислать сделанное задание, в основном тестовые вопросы.
Я попал на стажировку, и моего знания PHP оказалось достаточно, чтобы хорошо её пройти. С самим Битриксом были проблемы. Но в апреле 2019 устроился на работу.
В первый день больше читал про процессы в компании, статусы задач, проекты и прочее. К концу дня появилось первое задание. Познакомился с тимлидом, он сказал что-то вроде: «Если непонятно, сначала читаешь документацию, потом ищешь в гугле, после можешь ко мне». На тот момент эти слова казались вполне разумными. Но он, полагаю, просто не любил, когда его доставали.
Теперь понимаю, что такой совет не стоит давать новому человеку в компании, особенно если он начинающий программист. Есть большая вероятность, что он закопается. Документация еще может закончиться, хотя смотря какая, а вот гугл как бездна: можно искать очень долго и не найти, потому что ты можешь не до конца понимать, что именно ищешь, и задавать неправильные вопросы. А вот другие сотрудники с большим опытом быстрее поймут задачу и подскажут. Ко мне это пришло с опытом. Не повторяйте моей ошибки 🙂
Так что я практически уверен, что джун должен задавать много вопросов, особенно в первое время. Несомненно, умение находить информацию важно, но никто, надеюсь, не ждет от джуна, что за один день самостоятельно во всем разберется. Так что обращайтесь к коллегам, вам за это ничего не будет.
Теперь немного о самой работе. С третьего дня и почти все время, что я там проработал, занимался внутренним трекером для сотрудников. Он также был на Битрикс, но древняя версия 2006 года. Так как я был единственным, кто работал на портале, то пришлось выучить jQuery и верстку, фронтендеров не хватало. В основном работал со статистикой: как и кем расходуется время, акты для клиентов с задачами, технические долги по задачам, разные обзорные статистические таблицы. Почти всегда это был процедурный код. Кажется, я только три-четыре класса написал за работу, не считая компонентов нового Битрикса, но это вовсе не ООП. Много легаси-кода, только ручное тестирование менеджерами. В целом культура кода была низкой. Но я многому научился там.
Несмотря на минусы, при написании кода я часто ловил себя на мысли, что это именно то, чем я хочу заниматься, что это приносит мне огромное удовольствие.
И хотя коллектив был хорошим, но я шел туда за опытом, и мы все там шутили, что сюда только ради опыта приходят. Битрикс и дальнейшая перспектива работы в веб-студии не очень меня радовали, к тому же я боялся нахвататься плохих привычек по написанию кода. В итоге в ноябре 2019 года я ушел оттуда.
Текущая работа
Первое собеседование после ухода было в декабре в относительно небольшой продуктовой компании. Вот тут мне хорошо помог Хекслет со своим доступным объяснением, так что я смог ответить почти на все вопросы. Собеседование на джуна длилось больше двух часов в форме беседы в дружеской обстановке, что здорово и неожиданно.
На собеседовании спрашивали про разницу между версиями PHP. Честно сказал, что работал только на седьмой, и знаю только, что скорость сильно повысилась. Были общие вопросы по HTTP-запросам, про написание SQL-запросов (джоины, группировка, having) и знание баз данных в целом (нормализация, внешние ключи, целостность), команды в bash. Спрашивали про фрейморки (в компании много самописного кода и Symfony). По PHP про классы, интерфейсы, какие типы данных есть. Попросили провести ревью одного класса. Спросили, зачем нужны паттерны, про принципы SOLID. Не то чтобы последнее нужно было для устройства, просто я в целом неплохо отвечал, так что решили продолжить беседу.
В этот раз я сразу прошел его. Были еще этапы, но там уже больше на софт-скиллы.
В этой компании увидел достаточно сложный и интересный код. Компания занимается перепубликацией объявлений, здесь в основном я работаю с кодом, который используется для публикации объявлений и запускается как скрипт из консоли. Поначалу было немного сложно, но я старался спрашивать, если чего-то не понимал.
Скоро закончится испытательный срок. Знаю, что пройду его. Или даже уже прошел к моменту публикации.
Задавать вопросы — это хорошо
На новом месте мне сказали, что до меня они нанимали еще нескольких джунов, но они закапывались в коде, пытаясь все решить самостоятельно. В итоге они тратили дни на простые задачи и сами уходили. Так что решил повторить это отдельно:
Если чувствуете, что не получается что-то решить, и вы уже на десятой странице ответов гугла — самое время спросить совета у других сотрудников.
Во время работы с кодом ловлю себя на том, что получаю от этого большое наслаждение. Спасибо за это всем, кто писал свои истории, кто спрашивал и отвечал в обсуждениях. Я бы чаще забрасывал учебу без вас. Ну и Хекслету спасибо за курсы 🙂
PS: осталось учебное пособие с курсов, на которые ходили с другом. Пусть покрасуется на превью.
Специально для сайта ITWORLD.UZ. Новость взята с сайта Блог Хекслета