Сергей Трубин
Младший разработчик на языке Golang в компании Linxdatacenter
08.04.2021

Переход в мир больших ИТ

Что делать, если хочется работать программистом в ИТ-компании, а в вузе учился по другому профилю? Совсем недавно Сергей Трубин получил позицию младшего разработчика на языке Golang в компании Linxdatacenter — перешел на нее с прикладной инженерной специальности. Для читателей RB Young Сергей рассказал, как ему это удалось, какие он встретил препятствия на пути и каковы его планы на будущее

Сергей Трубин

Младший разработчик на языке Golang в компании Linxdatacenter

Испытание программиста метростроем

Мне 27 лет, я окончил НГТУ,  факультет «Мехатроники и автоматизации» по специальности «Электрический транспорт». Затем два года учился в магистратуре петербургского политеха на факультете «Институт компьютерных наук и технологий» по специальности «Управление в технических системах».

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

Мой первый проект – управление электромагнитом тормоза. На первый взгляд достаточно тривиальная задача. Но по факту это был полноценный DC-DC преобразователь (прим. ред. преобразование источника постоянного тока с одного уровня напряжения на другой), который разрабатывался людьми, не имеющими достаточного опыта в этой области. В офисе решение работало отлично, но в боевых условиях строящейся станции метрополитена, в пыли и сырости все оказалось сложнее.

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

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

Go в Go!

До того, как получить позицию младшего разработчика, я писал код на C и C++, но имел узкопрофильный характер применения своих навыков и знаний.

Поэтому я изучил современный ИТ-рынок, послушал коллег-программистов, получил много хороших отзывов о языке Golang (или Go), перспективах его развития и востребованности сегодня и в будущем. Принял решение в его пользу и сразу перешел к делу: изучил новый язык за год, параллельно работая на старом месте. Только после завершения обучения я начал искать себе место в профильной ИТ-компании.

Курс на курсы

Сегодняшнее образование в ИТ отличают два основных момента.

  • Во-первых, большие объемы информации о разных аспектах отрасли — языки программирования, фреймворки, облачные платформы, сети — находятся в свободном доступе. Получить уверенный старт в выбранной предметной области можно, просто просмотрев подборку видео на YouTube и почитав профильные сайты или блоги.
  • Во-вторых, доступно огромное количество опций по онлайн-образованию. Я изучил курсы и нашел очень сильную программу по Go от Mail.ru. Она была создана компанией для обучения языку своих собственных специалистов и затем выложена на Coursera.

Несмотря на техническое образование и опыт работы программистом микроконтроллеров, восьминедельный курс по основам Go с контролем выполнения заданий я проходил около 6 месяцев. Первая часть далась легко, но зато с началом действительно продвинутых возможностей языка учеба стала вызовом. Чтобы не буксовать на месте, я даже пропускал выполнение домашнего задания, возвращаясь к нему после изучения новых тем. Потихоньку, со скрипом разбирался и постепенно выполнял пропущенное.

Также изучал востребованные на рынке и связанные с Go технологии, ориентируясь в своем развитии на тренды. В качестве pet-проекта я написал на Go свою карточную игру. Затем составил резюме и вышел на рынок труда в целях получить место младшего разработчика.

Удачный отклик

Я откликнулся на вакансию младшего разработчика компании Linxdatacenter. Через какое-то время мне перезвонили и пригласили на собеседование. У меня был не самый высокий уровень подготовки, но мне дали шанс заняться Go-разработкой в настоящей ИТ-компании.

Linxdatacenter — это сервис-провайдер, предоставляющий ИТ-услуги клиентам на базе собственных дата-центров. Облака, виртуализация, сетевые услуги — общая картина того, что мы делаем: внутри каждого направления существует множество разделов и ИТ-продуктов для бизнеса.

Мне достался определенный объем legacy кода на Go в различных проектах компании, и на первом этапе стояла задача разобраться с ним и понять, какие функции он выполняет и как именно устроена его работа. Здесь проблем не возникло.

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

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

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

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

«Печеньки» большого ИТ

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

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

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

Несколько рекомендаций тем, кто хочет последовать моему примеру:

  • Если приняли решение о смене специальности или даже старте в ИТ с нуля — помните, все реально, достижимо, и любая предметная область поддается изучению. Было бы желание, целеустремленность и время для занятий.
  • Работа в ИТ-отрасли сегодня — увлекательное и перспективное занятие, но его обратная сторона заключается в необходимости проделать серьезный объем работы на входном этапе. Думайте об этом как о втором высшем, с дипломом и всеми вытекающими из этого трудозатратами.
  • Развитие невозможно без постоянного обучения. Это включает в себя как погружение в абсолютно новые предметные области, смежные с основной специализацией, так и углубление профильных навыков. Отсидеться в одной уютной нише в ИТ-компании в реалиях двадцать первого века не получится.

News and publications

You may also be interested in

How can we help you?
Request Demo Access
client:

BEST, money transfer and payments operator

business challenge

The customer faced a technical issue with a persistent BGP session flag with Linxdatacenter hardware. We examined the problem and found out that one of customer’s hosts was under a DDoS attack.

Because of the distributed nature of the attack, traffic couldn’t be filtered effectively, and disconnecting the host from the external network wasn’t an option. The attack stopped after changes in the server configuration, but resumed the day after. A 5.5 Gbps attack overloaded the junctions with internet providers, affecting other Linx Cloud users. To mitigate the effects of the attack, we employed a dedicated DDoS protection service.

Solution

To ensure the continuous availability of resources hosted in Linx Cloud, we rerouted all the customer’s traffic through StormWall Anti-DDoS system. The attack was stopped within half an hour. To prevent future cyberattacks, we organized all connections to the customer’s resources through the StormWall network.

Thank you for your inquiry, we will get back to you shortly!