Код
#истории

Из логистики в IT: как Дмитрий Уткин строит карьеру Java-разработчика и тимлида

Дмитрия всегда тянуло к коду: после карьеры в логистике он решил освоить Java и не прогадал. Теперь работает по профессии и помогает другим студентам.

Иллюстрация: rawpixel / freepik / Freepik / Tanaka200 / Wikimedia Commons / Сasey Horner / NASA / Unsplash / Дима Руденок для Skillbox Media

Дмитрий Уткин

Россия, Тольятти


Пройденные курсы


Достижения

Оставил руководящую должность и с нуля начал карьеру в IT. Сейчас работает Java-разработчиком и тимлидом командных проектов в Skillbox.



Дмитрий рассказал:


«Я хотел создавать продукт, которым будут пользоваться люди»: как логист стал разработчиком

— Дмитрий, до IT ты работал в логистике. Почему ушёл из этой сферы?

— В логистику я попал случайно, на последнем курсе университета, хотя учился совсем на другой специальности. В итоге дорос до руководителя отдела логистики на производственном предприятии, но… не могу сказать, что чувствовал себя в этой сфере органично.

Просто меня с детства тянуло ко всему, что связано с компьютерами и программированием, и я будто знал, что там — моё призвание. К тому же в определённый момент рабочие задачи по логистике перестали меня увлекать, и я понял, что достиг своего потолка в профессии.

В IT же такой ситуации просто не может произойти — здесь постоянно появляются новые технологии и подходы и приходится из раза в раз бросать себе вызов, расти и учиться. Это постоянное движение вперёд и стало для меня решающей причиной для смены профессии.

Кроме того, моя девушка рассказала мне о платформе Skillbox и убедила к ней присмотреться и попробовать — сказала, что это именно то, что мне нужно. И оказалась абсолютно права!

— Не было страшно так резко менять профессию и начинать с нуля?

— На самом деле с момента начала учёбы до полной смены профессии прошло около двух лет, так что для меня переход был плавным. Всё это время я совмещал обучение с основной работой.

На старте сомнения, безусловно, были, но они касались скорее не самой сферы, а моих компетенций. Я переживал, что мне может не хватить навыков для того, чтобы претендовать на достойные позиции в IT.

В самом же выборе IT как сферы и разработки как направления я был уверен на все сто: я мечтал создавать продукт, которым потом будут пользоваться другие люди.

— То есть основные размышления касались только выбора языка программирования?

— Да, я смотрел и пробовал разные варианты, посещал буткемпы и вебинары и в итоге остановился на Java — он идеально подошёл мне по логике и стилю работы.

Java — строго типизированный язык, который требует внимательности к деталям. Любая ошибка сразу блокирует запуск, поэтому необходимо всегда тщательно следить за написанным. Эта особенность языка мне очень нравится в силу моего перфекционизма.

— Сложно было влиться в обучение без опыта в IT?

— Нет, потому что модули построены так, что ты постепенно переходишь от простых тем и задач к более сложным.

Был лишь один момент, когда я очень долго, чуть ли не несколько недель, сидел над одной практической задачей, потому что не до конца понял, как работают ссылочные типы в Java. Справился, только когда вернулся к уже пройденным модулям курса о разных типах данных и всё переслушал.

В целом обычно, если у меня возникали трудности или вопросы, я просто спрашивал совета в студенческом телеграм-чате кура, смотрел разборы на YouTube или изучал дополнительные источники — чаще всего статьи в Skillbox Media и на Stack Overflow.

Фото: личный архив Дмитрия Уткина

— Как тебе удавалось совмещать работу, учёбу, дополнительное развитие и не выгорать?

— Я изначально составил себе понятный график и старался его придерживаться, стабильно выделяя на учёбу несколько часов в неделю — чаще всего по выходным и вечерам.

Правда, в какой-то момент нагрузка на работе стала настолько большой, что пришлось на время поставить обучение на паузу и вернуться к ней, только когда стало легче. Но это меня не демотивировало и даже наоборот: я с таким нетерпением ждал возможности снова заняться любимым делом, что возобновил учёбу ещё более воодушевлённым.

«Здорово прокачал хард-скиллы»: как набраться опыта в командных проектах и получить работу мечты

— В какой момент обучения ты понял, что у тебя уже достаточно навыков, чтобы начать искать работу в новой сфере?

— Когда освоил один из ключевых фреймворков для разработки продакшен-программ на Java — Spring. Плюс знакомые, работающие в IT, предложили провести со мной mock-интервью, чтобы оценить мой уровень подготовки и понять, готов ли я выходить на рынок или стоит ещё подтянуть знания. Результаты показали, что я вполне могу пробовать свои силы!

Наконец, примерно в это же время я начал участвовать в командном проекте в Skillbox, и этот опыт окончательно убедил меня в том, что я готов взять старт в новой профессии.

— Пожалуйста, расскажи подробнее о командном проекте! Что вы разрабатывали в его рамках?

— Командный проект — это двухмесячная практика, разбитая на 80 спринтов и максимально приближённая к реальной разработке в команде. У каждого в группе — своя роль.

Мы занимались созданием соцсети, по набору функций схожей с VK: оттачивали навыки работы с фреймворком Spring и микросервисами на Java — это популярный сегодня архитектурный подход к разработке приложений.

— Какой главный урок ты получил из командного проекта? Возможно, появились какие-то инсайты о работе в группе?

— Поскольку я уже руководил отделом в логистической компании, то знал, как выстраивать отношения в команде — так что по части софт-скиллов каких-то особых озарений не испытал. Разве что искренне удивился нескольким моментам, специфичным именно для разработки. Например, узнал о необходимости согласовывать интерфейс своего микросервиса с чужими: это нужно, чтобы всё выглядело органично и не нарушалась общая логика.

А вот хард-скиллы я прокачал действительно здорово: познакомился с DevOps-технологией, научился настраивать CI/CD-пайплайны, понял, как работать на удалённом сервере.

В итоге получилось так, что я устроился на постоянную работу Java-разработчиком всего через две недели после старта командного проекта.

— Вот это да! Как тебе это удалось?

— Я начал откликаться на вакансии, которые мне предлагал Центр карьеры Skillbox, и один из таких откликов в итоге привёл меня к заветному приглашению на собеседование.

В резюме я специально сделал акцент на релевантных для должности учебных проектах и потратил время на «упаковку» своих кейсов, например красиво оформил документацию на GitHub. О работе в логистике упомянул совсем кратко, указав лишь конкретные достижения по оптимизации и автоматизации процессов.

Код, написанный Дмитрием
Скриншот: личный архив Дмитрия Уткина

— Как думаешь, что помогло тебе успешно пройти собеседование?

— Вообще, своё самое первое собеседование в IT я, конечно же, успешно провалил 🙂 Мне задавали вопросы, к которым я был совершенно не готов — например, о нюансах работы с SQL. После этого я усвоил урок, закрыл пробелы в знаниях и стал тщательнее готовиться к интервью.

А перед собеседованием в Goodt — компанию, где я сейчас работаю, — я нашёл классный проект на GitHub: там описывали дорожную карту развития Java-разработчика, то есть подробно визуализировали путь развития в профессии и прописывали те навыки, которые необходимо иметь на каждом этапе. Эта информация сильно помогла мне обозначить темы, которые важно повторить к интервью.

«Разработка — это непрерывное обучение»: как вчерашний студент стал наставником разработчиков

— Какими были твои первые задачи в компании в роли Java-разработчика? Чувствовал ли ты себя подготовленным к ним?

— Дебютные шаги были довольно неуверенными — первые пару дней я буквально на ощупь пытался разобраться в библиотеках и базах данных, с которыми до этого мало работал. Но быстро наверстал упущенное, экспериментируя и тестируя логику библиотеки на маленьких приложениях, чтобы понять, как её настроить и использовать.

Нет ничего страшного в том, чтобы чего-то не знать. Разработка — это непрерывное обучение, и я уже привык к тому, что постоянно приходится осваивать новые технологии.

— Возможно, у тебя уже есть какие-то результаты в работе, которыми ты гордишься?

— Да! Например, не так давно после длительного ресёрча мне удалось оптимизировать кусочек приложения и повысить эффективность его работы примерно в пять раз.

А ещё я стал тимлидом командных проектов в Skillbox и уже выпустил свой первый поток.

— Ого! Как так вышло?

— Видимо, куратор потока, где учился я, оставил обо мне хороший отзыв и моей кандидатурой заинтересовались. Вскоре после выпуска со мной связалась куратор командных проектов и предложила мне попробовать себя в руководящей роли.

Конечно, я сразу же согласился, ведь ещё во время обучения часто ловил себя на мысли, что мне очень интересно попробовать и понять, каково это — быть тимлидом, помогать начинающим разработчикам получать знания, поддерживать их. И вот такой шанс представился.

— Как чувствуешь себя в новой роли?

— Опять же, мне сильно помогает логистический бэкграунд, когда я уже управлял командами. Благодаря ему я знаю, как найти подход даже к тем людям, кто на контакт идти не хочет. К счастью, в разработке таких почти нет — в командные проекты, как правило, приходят те, кто максимально заинтересован в результате.

Сложности возникают, разве что когда я сталкиваюсь с кейсами, с которыми до этого не работал. Но это не смертельно: просто садишься и разбираешься в вопросе, чтобы помочь студенту решить ту или иную проблему. Плюс я всё-таки работаю по профессии и имею релевантный коммерческий опыт, поэтому многие тонкости могу объяснить команде без подготовки, например по работе со Spring.

Фото: личный архив Дмитрия Уткина

— Каким ты видишь своё будущее в компании и профессии в целом?

— Стремлюсь к тому, чтобы довольно быстро дорасти до лида. Поэтому в ближайших планах — активно развиваться, повышать грейд, оттачивать навыки. Аспектов для изучения очень много — например, я хочу досконально освоить Java Core и Java Virtual Machine.

Кроме того, моя цель — улучшить навыки анализа и понимания кода. Даже если ты уже пишешь его неплохо, в этом процессе всегда есть куда расти.

Разработчику, на мой взгляд, важно «чувствовать» код — буквально с первого взгляда понимать, что в нём происходит, где возможны уязвимости или что может сломаться.

— Что бы ты сказал начинающим разработчикам, как человек, который уже помогает другим расти в новой профессии?

— В Java-разработке, как и в любом другом деле, неизбежны трудности, но их нужно не бояться, а воспринимать как точки роста. Ошибки учат не меньше успехов.

И ещё: важно обязательно углубляться в детали любой темы — не останавливаться на минимально необходимой информации, а изучать дополнительные источники, тем самым проводя условный «фактчекинг» и убеждаясь, что вы точно поняли всё правильно и не допустили неверных интерпретаций.

Наконец, на мой взгляд, самое главное — помнить, что, если вы уже выбрали эту профессию, значит, вас что-то в ней привлекло и это случилось неспроста. Теперь остаётся не сдаваться и уверенно идти к своим целям.

Изучайте IT на практике — бесплатно

Курсы за 2990 0 р.

Я не знаю, с чего начать
Научитесь: Профессия Java-разработчик Узнать больше
Понравилась статья?
Да

Пользуясь нашим сайтом, вы соглашаетесь с тем, что мы используем cookies 🍪

Ссылка скопирована