Привет, Хабр! Меня зовут Влад Лундышев, мне 23 года, я учусь в онлайн-магистратуре ИТМО в партнёрстве с Яндекс Практикумом на направлении «Фронтенд-, бэкенд-разработка и ИИ-решения» и параллельно работаю Python-разработчиком. Если бы несколько лет назад меня спросили, что самое сложное на пути в IT, я бы ответил: изучить язык программирования и алгоритмы, освоить сложный стек. Сейчас я думаю иначе. Самым сложным оказалось найти первую работу, научиться взаимодействовать с командой и выстроить систему развития, которая не приводит к выгоранию. В этой статье я расскажу, какие подводные камни встретились мне на пути и что я бы посоветовал себе самому несколько лет назад.

Из маленького города в разработку: почему я вообще выбрал IT
Я вырос в небольшом городе Нижегородской области с населением около 30 тысяч человек и учился в обычной школе. В какой-то момент понял, что хочу двигаться дальше, и перешёл в лицей с физико-математическим уклоном. Там появились факультативы, подготовка к олимпиадам и окружение, которое тоже интересовалось математикой и информатикой.
В старших классах я окончательно понял, что хочу связать свою жизнь с IT. После школы поступил на бюджет в РТУ МИРЭА, в Институт искусственного интеллекта, на направление «Информатика и вычислительная техника».
На первом курсе я уже не сомневался, что хочу заниматься разработкой. Правда, тогда мне казалось, что главное — это научиться писать код. Сейчас я понимаю, что это только часть профессии.
Почему найти первую работу оказалось сложнее, чем вырасти до мидла
Я начал работать уже на втором курсе, и сейчас понимаю, что, возможно, немного поторопился. С одной стороны, это дало мне много опыта. С другой, стоило большого количества нервов. Работа, сессии, переработки, задачи по вечерам и ночам, необходимость постоянно переключаться между учёбой и проектами, всё это было непросто. Если бы можно было вернуться назад, я бы действовал более методично. Больше времени уделил бы фундаментальным знаниям, а не стремлению как можно быстрее начать работать.
На втором курсе я начал искать стажировку. На это ушло несколько месяцев. Самыми сложными для меня были алгоритмические и поведенческие секции собеседований.
В итоге я попал не в крупную компанию, а в небольшой стартап, который занимался B2B-разработкой для промышленности. Команда была маленькой, задач было много, поэтому развиваться приходилось очень быстро.
Сейчас мне кажется, что профессиональный рост, это скорее вопрос времени и практики. Если постоянно решать задачи и работать над собой, рост неизбежен. А вот получить первую возможность войти в профессию действительно непросто. Тогда я ещё не определился со стеком и начал работать на Python во многом потому, что этим занимались мои коллеги.
Почему софтскилы оказались важнее знания языка
Когда я только начинал, мне казалось, что всё зависит от технических навыков. Но практика показала: не менее важны навыки общения. На первой работе у меня были конфликты — отчасти по моей вине, отчасти нет. Я не всегда понимал, какие вопросы задавать, как обсуждать задачи, как взаимодействовать с коллегами и менеджерами.
Со временем это приходит. Когда появляется опыт и несколько проектов за плечами, начинаешь лучше понимать процессы и людей. Поэтому мой вывод такой: разработчику важно прокачивать не только технические знания, но и софтскилы. Умение работать в команде, задавать правильные вопросы и договариваться влияет на карьеру не меньше, чем знание языка программирования.
Почему я решил поступать в онлайн-магистратуру
Совмещать работу и учёбу на очном отделении было очень непросто: я работал в гибридном графике, поэтому иногда приходилось пропускать семинары и лекции — это часто осложняло мне сессию.
На последнем курсе университета я решил, что хочу продолжить обучение и стал изучать разные варианты. Онлайн-магистратура «Фронтенд-, бэкенд-разработка и ИИ-решения» ИТМО в партнёрстве с Практикумом привлекла меня форматом: на тот момент я уже сильно устал от совмещения очного обучения и работы. Я тратил на дорогу час-полтора в одну сторону, это время можно было потратить на работу, отдых или учёбу. Ещё мне понравилось, что магистратура очная и после выпуска я смогу получить диплом гособразца.
На тот момент у меня был опыт работы около трёх лет и я уже был на позиции Middle Python Developer. Поэтому при выборе магистратуры мне было важно, чтобы была практика. У меня есть несколько друзей, которые уже учились в магистратуре ИТМО и на курсах в Практикуме, они хорошо отзывались об учёбе, это тоже повлияло на мой выбор магистратуры.
При поступлении на выбор было несколько треков по уровням, я рассматривал треки для продолжающих и выбрал бэкенд на C++. Ещё в университете мне нравился этот язык, но тогда я не решился пойти работать на нём: казалось, что это слишком сложно. Сейчас я понимаю, что язык это, в первую очередь, инструмент и многое зависит от использующего его разработчика.
Ещё из плюсов онлайн-магистратуры: можно самостоятельно планировать нагрузку, внутри дедлайнов самостоятельно распределять время. Лекции можно пересматривать, конспектировать, смотреть на высокой скорости и возвращаться к сложным темам. Многие процессы автоматизированы: например, часть заданий проверяется автотестами. Это экономит время и студентам, и преподавателям.
С какими трудностями я столкнулся при изучении языка С++
Для новичка C++ действительно сложный язык. Как минимум, у него очень сложная документация. Ещё в языке есть очень много конструкций и паттернов, которых нет, например, в Python или Java. Первое время во время учёбы я испытывал трудности из-за пробелов в знаниях и опыте на этом языке. Мне помогло то, что я тщательно конспектировал все уроки. Через какое-то время я уже ориентировался в чужом коде и мог спокойно выполнять задания. Ещё я решил, что буду решать задачи из дополнительной дисциплины «Алгоритмы и структуры данных» на C++ (вместо привычного питона). Это и практические проекты помогли мне получить hands-on опыт решения задач и привыкнуть к языку и его особенностям.
Я пришёл к тому, что Python удобен, но скрывает многие детали (например, управление памятью через сборщик мусора). C++ заставляет разбираться в памяти, указателях и ресурсах, это делает разработчика более глубоким и понимающим.
Что бы я посоветовал себе несколько лет назад
Если бы я мог дать совет себе в начале пути, он был бы таким:
-
не торопиться,
-
не переживать из-за карьерного роста,
-
уделять больше внимания фундаментальным знаниям,
-
выбирать востребованное направление,
-
развивать навыки общения;
-
использовать современные инструменты, но не полагаться на них полностью.
Главное, что я понял: развитие в IT — это не спринт, а длинная дистанция. Чем лучше у тебя база и чем спокойнее ты строишь свой путь, тем больше возможностей появляется со временем.
ссылка на оригинал статьи https://habr.com/ru/articles/1062358/