Сергей Трубин
Младший разработчик на языке 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

Article
09.08.2022
IS in scarcity: a big transition strategy
News
01.08.2022
Linxdatacenter is in the TOP10 of the largest DC service providers
News
25.07.2022
Linxdatacenter launches its own PaaS tools
News
20.07.2022
St. Petersburg cloud Linxdatacenter passed the certification on ...
Article
30.06.2022
How we optimized customer data center management
News
27.06.2022
Linxdatacenter: Russian Cloud Market to Grow in 2022...
News
26.05.2022
Anna Malmi has been appointed the regional director of Linxdatacenter...
Article
20.05.2022
Cloud Edge: What's Happening in the Russian Market - Linxdatacenter
News
13.05.2022
The new CEO of Linxdatacenter is Andrei...
Article
03.05.2022
Unit per monoblock: the modular UPS revolution in data centers

You may also be interested in

Linx Outsourcing
Audit, upgrade and optimize your server capacities
read more
Data-center management outsourcing
Linx Network
Ensure network resiliency and uptime
read more
Network services
Linx DraaS
Protect your IT systems today!
read more
Disaster Recovery as a Service

Write to us

How we optimized customer data center management

Data center is a complex IT and engineering object, which requires professionalism at all levels of management: from managers to technical specialists and executors of maintenance works. Here's how we helped our client put operational management in corporate data centers in order.
 

Taras Chirkov, Head of Data Center in St. Petersburg  in St. Petersburg 

Konstantin Nagorny, chief engineer of data center in St. Petersburg.  in St. Petersburg 

Data center is a complex IT and engineering object, which requires professionalism at all levels of management: from managers to technical specialists and executors of maintenance works. Here's how we helped our client put operational management in corporate data centers in order.  

Management is in the lead 

The most advanced and expensive IT equipment will not bring the expected economic benefits if proper processes of engineering systems operation in the data center, where it is located, are not established.  

The role of reliable and productive data centers in today's economy is constantly growing along with the requirements for their uninterrupted operation. However, there is a big systemic problem on this front.  

A high level of "uptime" - failure-free operation of a data center without downtime - depends very much on the engineering team that manages the site. And there is no single formalized school of data center management.  

And there is no single formalized school of data center management.    

Nationwide  

In practice, the situation with the operation of data centers in Russia is as follows.  

Data centers in the commercial segment usually have certificates confirming their management competence. Not all of them do, but the very specifics of the business model, when a provider is responsible to the client for the quality of service, money and reputation in the market, obligates them to own the subject. 

The segment of corporate data centers that serve companies' own needs lags far behind commercial data centers in terms of operational quality. The internal customer is not treated as carefully as the external customer, not every company understands the potential of well-configured management processes. 

Finally, government departmental data centers - in this regard, they are often unknown territory due to their closed nature. An international audit of such facilities is understandably impossible. Russian state standards are just being developed.  

This all translates into a "who knows what" situation. "Diverse" composition of operation teams composed of specialists with different backgrounds, different approaches to the organization of corporate architecture, different views and requirements to IT departments.  

There are many factors that lead to this state of affairs, one of the most important is the lack of systematic documentation of operational processes. There are a couple of introductory articles by Uptime Institute which give an idea of the problem and how to overcome it. But then it's necessary to build the system by your own efforts. And not every business has enough resources and competence for that.  ⠀⠀  

Meanwhile, even a small systematization of management processes according to industry best practices always yields excellent results in terms of improving the resilience of engineering and IT systems.  

Case: through thorns to the relative order 

Let's illustrate by the example of an implemented project. A large international company with its own data center network approached us. The request was for help to optimize the management processes at three sites where IT systems and business-critical applications are deployed.  

The company had recently undergone an audit of its headquarters and received a list of inconsistencies with corporate standards with orders to eliminate them. We were brought in as a consultant for this as a bearer of industry competence: we have been developing our own data center management system and have been educating on the role of quality in operational processes for several years.  

Communication with the client's team began. The specialists wanted to get a well-established system of data center engineering systems operation, documented on the processes of monitoring, maintenance and troubleshooting. All this had to ensure optimization of the infrastructure component in terms of IT equipment continuity.  

And here began the most interesting part.  

Know thyself 

To assess the level of data centers in terms of compliance with standards, you need to know the exact requirements of the business to IT systems: what is the level of internal SLA, the allowable period of equipment downtime, etc.  

It became clear right away that the IT department did not know exactly what the business wanted. There were no internal criteria of service quality, no understanding of the logic of their own infrastructure.  

Colleagues simply had no idea what the permissible downtime for IT-related operations was, what the optimal system recovery time in case of a disaster was, or how the architecture of their own applications was structured. For example, we had to figure out whether a "crash" of one of the data centers would be critical to the application, or if there were no components affecting the application.  

Without knowing such things, it is impossible to calculate any specific operational requirements. The client recognized the problem and increased coordination between IT and the business to develop internal requirements and establish relationships to align operations.  

Once an understanding of the IT systems architecture was achieved, the team was able to summarize the requirements for operations, contractors, and equipment reliability levels.  

Improvements in the process 

Our specialists traveled to sites to assess infrastructure, read existing documentation, and checked the level of compliance of data center projects with actual implementation.  

Interviews with the responsible employees and their managers became a separate area of focus. They told what and how they do in different work situations, how the key processes of engineering systems' operation are arranged.  

After starting the work and getting acquainted with the specifics of the task the client "gave up" a little: we heard the request "just to write all the necessary documentation", quickly and without deep diving into the processes.  

However, proper optimization of data center "engineering" management implies the task to teach people to properly assess the processes and write unique documentation for them based on the specifics of the object.  

It is impossible to come up with a working document for a specific maintenance area manager - unless you work with him at the site continuously for several months. Therefore this approach was rejected: We found local leaders who were willing to learn themselves and lead their subordinates.  

Having explained the algorithm of documents creation, requirements to their contents and principles of instructions ecosystem organization, for the next six months we controlled the process of detailed writing of documentation and step-by-step transition of the personnel to work in a new way. 

This was followed by a phase of initial support for work on the updated regulations, which lasted one year in a remote format. Then we moved on to training and drills - the only way to put the new material into practice.  

What's been done 

In the process, we were able to resolve several serious issues.  

First of all, we avoided double documentation, which the client's employees feared. To this end, we combined in the new regulations the regulatory requirements applied to various engineering systems as standard (electrics, cooling, access control), with industry best practices, creating a transparent documentation structure with simple and logical navigation.   

The principle of "easy to find, easy to understand, easy to remember" was complemented by the fact that the new information was linked to the old experience and knowledge of the employees. 

Next, we reshuffled the staff of service engineers: several people turned out to be completely unprepared for the change. The resistance of some was successfully overcome in the course of the project through the demonstration of benefits, but a certain percentage of employees turned out to be untrained and unresponsive to new things.  

But we were surprised by the company's frivolous attitude to its IT infrastructure: from the lack of redundancy of critical systems to the chaos in the structure and management.  

In 1.5 years the engineering systems management processes have been pumped up to the level that allowed the company's specialists to successfully report "for quality" to the auditors from the headquarters.  

With the support of the operating component development pace the company will be able to pass any existing certification of data centers from leading international agencies.  

Summary 

In general, the prospects of consulting in the field of operational management of data centers, in our opinion, are the brightest.  

The process of digitalization of the economy and the public sector is in full swing. Yes, there will be a lot of adjustments in the launch of new projects and plans for the development of old ones, but this will not change the essence - the operation should be improved at least to improve the efficiency of already built sites.  

The main problem here: many managers do not understand what thin ice they are walking on, not paying proper attention to this point. The human factor is still the main source of the most unpleasant accidents and failures. And it needs to be explained.  

Government data center projects are also becoming more relevant now and require increased attention in terms of operations: the scope of government IT systems is growing. Here, too, the development and introduction of a system of standardization and certification of sites will be required.  

When the requirements to public data centers in Russia at the level of legislation will be reduced to a standard, it can be applied to commercial data centers, including for the placement of public IT resources.  

The work in this area is ongoing, we are participating in this process in consultation with the Ministry of Digital and by building competencies for teaching courses on data center operation at the ANO Data Center. There is not much experience on such tasks in Russia, and we believe that we should share it with colleagues and clients. 

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

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.

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!