Меня зовут Ильяс, и я расскажу, как полюбил Java через Spring и отучился в Хекслете ради самореализации.
- 1С не подошел
- Сисадминство и вход в программирование
- Мечты о серьезной разработке
- Знакомство с Хекслетом
- Обучение
- Первая работа комом
- Помог нетворкинг
- Впечатления от работы
- Советы студентам
Профиль Ильяса в Хекслете можно посмотреть здесь, код выполненных проектов — на GitHub
Я с детства любил информатику и хорошо по ней успевал. Когда пришла пора поступать, вопроса о том, куда пойти, даже не стояло. Специальность «Информационные технологии и вычислительная техника» должна была открыть мне путь в разработку.
А вот с конкретным языком ситуация была более сложной. Даже окончив вуз, я не мог определиться со стэком. К тому же я жил в небольшом городе, а поскольку удаленка тогда не была распространена, мне пришлось идти работать туда, куда позвали.
- Постоянная поддержка от наставника и учебного центра
- Помощь с трудоустройством
- Готовое портфолио к концу обучения
- Практика с первого урока
Вы получите именно те инструменты и навыки, которые позволят вам найти работу
Узнать больше1С не подошел
В вузе к нам приходили рекрутеры из локальных компаний и предлогали подработку на 1С. Там я задержался примерно на год — особого энтузиазма работа не вызвала.
Проанализировав, я понял, что проблема была в бухгалтерии. На тот момент не было прослойки между разработчиком и постановщиком задач и приходилось получать требования от бухгалтеров.
А они смотрели на меня как на тупицу, когда я не понимал нюансов их сферы.
Сисадминство и вход в программирование
Меня позвали работать системным администратором в офис, но пообещали доступ к внутреннему IT-продукту.
Там было две системы: одна из них — приложение для ломбардов на C#, вторая — на PHP.
На первой требовалось освежить фронтенд и я взялся за дело. Мы купили шаблон и почти год его переделывали.
В процессе я понял, что фронтенд — тоже не мое. Тогда приходилось работать с первым Angular и меня е покидало ощущение, что все сделано на коленке, а сами решения максимально хлипкие и ненадежные.
Возможно, виной всему было отсутствие опыта, из-за чего постоянно приходилось использовать костыли и изобретать велосипеды. Тем не менее осадок остался.
Закончив разработку фронтенда, я перешел на вторую систему на PHP. У компании была проблема с исполнителями. Поставка задач в продакшн была долгая, из-за чего систему не могли масштабировать.
Мне предложили изменить это, а я воспользовался шансом пощупать бэкенд — раз уж фронт не понравился.
За пару месяцев я нанял команду разработчиков и системного администратора, которые должны были сопровождать платформу. А затем начал выстраивать процессы с нуля: от постановки задач до доставки в продакшн.
Коммерческого опыта работы с PHP у меня практически не было: пришлось во всем разбираться с нуля. Спойлер: фанатом этого языка я тоже не стал.
В PHP не понравился синтаксис и отталкивала динамическая типизация. Порог входа в него относительно низкий, поэтому качество кода было сомнительным. Опять ощущалась нестабильность.
Но на этой должности я задержался почти на шесть лет. Годы, проведенные за административными задачами и управлением командой, пролетели как один миг. А потом я оглянулся и стало грустно.
Мечты о серьезной разработке
Я потратил годы на то, чтобы с нуля выстроить команду, процессы и инфраструктуру. И за это время погряз в менеджменте: писал таски, выбивал бюджеты, взаимодействовал с бизнесом.
Это при том, что изначально мне всегда хотелось заниматься технической частью.
От продукта веяло подделкой, утопающей в техдолге. Это было не тем, чем можно гордиться.
К тому же я просел по хардскиллам, потому что ворох административки не позволял мне ими заниматься. Это одна из проблем, характерных для проектов на PHP: бизнес ориентирован на прибыль и требует быстрых решений, поэтому качество кода проседает.
У меня не получалось одновременно расти в техническом плане и параллельно управлять командой.
В этот момент, я решил, что стоит поменять стэк. Мне хотелось посмотреть, как пишут код люди в серьезных командах и как у них устроены процессы.
Наткнувшись на Spring и почитав о нем, я понял, что это мое. Многие из решений, которые мы применяли на PHP, на самом деле пришли туда из Java, просто с большой задержкой.
Знакомство с Хекслетом
О школе я знал давно. Параллельно с бэком на PHP я занимался фронтендом этого проекта. А для этого изучал JavaScript в Хекслете по подписке., Всей командой мы выбирали курсы для повышения квалификации — так и нашли школу.
Нам понравился интерактивный формат с автопроверками и текстовые лекции. Я покупал курсы для подчиненных. То, что материал качественный, стало понятно очень быстро, поэтому я решил начать изучать Java именно здесь.
Обучение
Учиться пришлось параллельно с работой. Каждый день я пару часов уделял обучению, все выходные также уходили на прохождение курса.
Первое время было сложно себя заставить, но со временем я втянулся и стал заниматься регулярно.
Не всегда обучение шло гладко. Были темы, дававшиеся очень сложно. Например, функциональные интерфейсы. Случались и затыки, когда я был вынужден прибегать к помощи ребят из чата.
Но зачастую мне было достаточно лишь начать формулировать вопрос, чтобы понять, где именно я ошибался и просто не туда смотрел. Тем не менее наличие комьюнити помогало и поддерживало.
В учебе меня мотивировало желание состояться как технический специалист и я упорно шел к своей цели.
Первая работа комом
К концу курса я уже готов был искать работу, но меня нашли раньше. Я тогда ничего не искал, но еще в процессе обучения получил рекомендации по поиску. На их основе я обновил резюме, и в результате оно вышло в топ, на что обратил внимание рекрутер из одной крупной технологической компании..
Они искали системного аналитика на стэк Java. Я сомневался, стоит ли туда идти, ведь мне хотелось стать разработчиком, а не повторять историю с предыдущих карьерных этапов.
Но мне предложили полгода поработать на позиции аналитика, а затем у них же пройти собеседование на Java-разработчика.
Я подумал, что это неплохой вариант. У меня будет время вникнуть в процессы крупной компании, узнать про инфраструктуру, понять, как все устроено. С этим преимуществом будет явно легче устроиться, чем с нуля.
Но реальность обманула ожидания.
Когда я пришел туда, то обнаружил, что проекты в компании находились в плачевном состоянии. Удивительно, но процессы были выстроены хуже, чем на моем предыдущем месте работы, где коллектив насчитывал всего 25 человек.
У нас по крайней мере был отлаженный Git Flow. Здесь же документация в Confluence велась максимально странно. Там были статьи, в которых каждый сотрудник выделял цветом, что именно поменял. А когда изменения попадали в продакшн, нужно было зайти и убрать цвет. Не нужно и говорить, что это изначально было обречено, и все вики оставалось цветным
Второе, что меня оттолкнуло, это качество кода. Даже я, имевший минимальный опыт в Java, видел в нем проблемы.
Команда тоже досталась технически слабая и нескоординированная: на одном из созвонов я объяснял программисту, как работает JPA.
Также у меня был коллега, который просто забивал на таски в работе: с утра не отвечал в мессенджерах и не приходил на дейли, потому что мог.
Помог нетворкинг
Мне потребовалось два месяца, чтобы понять:отсюда надо уходить. Но вместе с тем я также понимал, что вакансию разработчика на Java придется искать очень долго. Логичнее попробовать снова пойти системным аналитиком, но в нормальную команду.
На ситуацию я пожаловался бывшему коллеге из первой компании, который работал в крупном банке. Он предложил мне пройти у них собеседование.
Его проводили в четыре этапа:
Знакомство с HR.
Теоретическое собеседование с рандомным системным аналитиком из компании, который задавал стандартные вопросы. Например, чем отличается HTTP от SOAP, что такое REST, какими могут быть методы и т.д.
Практическое собеседование. Там была песочница, в которой я писал запросы. Давали несколько заданий вида — определить сущности для предполагаемой системы, расшарить экран и нарисовать ERD диаграмму.
Знакомство с командами, которым был нужен аналитик. Меня представляли нескольким командам. По результатам интервью мы решали, подходил ли я им, а они — мне. Такая система быстрых свиданий.
Я получил свой мэтч и вышел на новое место.
Впечатления от работы
Сумма в оффере была ниже, чем я зарабатывал до переобучения. Мне стали платить примерно 65% от предыдущего дохода, но к этому я был готов.
На новом месте мне все очень нравится, хотя периодически кажется, что я не дотягиваю до уровня команды. Но это мотивирует стремиться вверх.
Я доволен технической культурой и отлаженными процессами, нормальным ведением документации, возможностью всегда получить от коллег однозначный и своевременный ответ.
По сравнению с работой в маленькой компании разница колоссальная. Все начинается уже с онбординга, который определяют заранее. Сотрудник приходит и знает, чем будет заниматься каждый день. Есть отдельная платформа с курсами и чат поддержки, в котором можно задать вопросы.
И это не говоря про классический соцпакет. У нас есть ДМС, компенсация залов и даже обедов для удаленных сотрудников.
На данный момент я полностью доволен компанией,но рассчитываю через год сменить должность и перейти на позицию разработчика. Или, как вариант, дорасти до системного архитектора.
- Постоянная поддержка от наставника и учебного центра
- Помощь с трудоустройством
- Готовое портфолио к концу обучения
- Практика с первого урока
Вы получите именно те инструменты и навыки, которые позволят вам найти работу
Узнать большеСоветы студентам
Учиться мне помогали заметки и майндмепы. Бывает сложно удержать в голове информацию, а такие самостоятельные конспекты и схемы позволяли структурировать знания, сохранять нужные ссылки или примеры конфигов.
Еще один важный совет — разбираться во всем досконально. Если чувствуете, что остались темные пятна, лучше погрузиться и добить задачу до конца. Это может повлиять на скорость прогресса, но в будущем вы скажете себе спасибо.
С поиском работы — банально, но уделите время своему резюме. Я сам искал сотрудников и видел много людей, которые потратили на него явно не больше трех минут. Надо ли говорить, что они автоматически отправлялись в корзину?
Рынок труда для джуна суров, поэтому стоит по максимуму использовать нетворкинг. Мне он очень помог, хотя я бы не сказал, что обладаю большим количеством связей в сфере ИТ. Но даже те немногие контакты помогли мне в итоге найти хорошую работу.