Мне нравится быть просто разработчиком и видеть, что мой код полезен

Мне нравится быть просто разработчиком и видеть, что мой код полезен

Алла, С++ разработчик ОМ, мечтала стать криминалистом, чтобы в расследованиях уголовных дел с лупой в руках разгадывать все загадки — от таинственных отпечатков пальцев до потерянных пультов от телевизоров. Не вышло. Поэтому пришлось заниматься испытанием беспилотников на Сахалине и писать код.

В этой статье и поговорили с Аллой о том, как она пришла в ИТ, её главном вдохновении и том, что ей нравится в Опен Медиа.


Всегда училась так, чтобы не потерять стипендию, а вышел красный диплом

В детстве я много лет занималась рисованием: ходила в кружок, который вёл профессиональный художник. Мы рисовали в том числе и маслом, мама до сих пор хранит все мои картины. Я и сейчас иногда рисую. Больше всего люблю играть в компьютерные игры, например, Ведьмака, Skyrim, Лару Крофт, Stardew Valley, читать фэнтези, собирать пазлы. Недавно начала собирать модель книжного магазина :)

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

В школе любимым предметом всегда была математика. Она очень легко мне давалась, и у нас был прекрасный учитель. Ещё любила литературу, так как её интересно преподавали: рассказывали реальные истории о жизни писателей и поэтов, подробно разбирали произведения, а я всегда много читала, поэтому с удовольствием участвовала в дискуссиях. Из недавно прочитанных книг — «Гобелены Фьонавара» Гая Кея, и всегда актуален Гарри Поттер: я фанатка этой вселенной.

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

Моя мама очень хотела, чтобы я поступила во ВШЭ на экономический факультет или в РАНХиГС на управление. Чтобы она не так сильно наседала на меня с этим, я даже сдала два дополнительных экзамена на ЕГЭ: обществознание и английский. Документы я отдала на много направлений, в том числе на те, на которых настаивала мама, но оригиналы документов положила на ПМИ (прикладная математика и информатика) в НГТУ, как и хотела :) Поступила, кстати, на все направления, но отказалась перекладывать оригиналы. Закончила и бакалавриат, и магистратуру.

🧠
Забавный факт: я всегда училась так, чтобы не потерять стипендию, и случайно оба раза вышел красный диплом.

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

До начала работы в ИТ я успела поработать и вожатой, и продавцом, и даже мерчендайзером в отделе крепежа в строительном магазине :D На третьем курсе меня пригласил к себе в отдел мой преподаватель программирования, там и началась моя карьера в ИТ: занималась разработкой ПО для диспетчеров в аэропортах, электростанциях, метро. Там же познакомилась с российским железом (Байкал, Элвис) и Astra Linux. Это был интересный опыт.

Когда я увидела, что мой код полезен, то поняла, что хочу и дальше разрабатывать

Сначала математика меня интересовала больше, чем программирование. Поступая в универ, я умела складывать два числа на паскале и выводить результат на экран, и на этом мои навыки суперпрограммиста заканчивались :D

На первом курсе я познакомилась с С, С++ и Python, и на С++ мне оказалось намного комфортнее писать код. Спустя время я поняла, что мне нравятся объектно-ориентированные языки: они позволяют логично и понятно описать мир, процессы, взаимодействие между объектами. Дополнительным плюсом стала библиотека Qt с языком QML, которые давали возможность написать логику на С++ и реализовать красивый интерфейс.

Программирование сильно увлекло меня во втором семестре первого курса, как раз тогда, когда мы начали кодить на С++ и я познакомилась с фреймворком Qt.

Я начала работать по специальности на третьем курсе, сначала стажёром на 20 часов в неделю, но занималась программированием на C++/Qt уже со второго курса: нас начали привлекать к работе в лаборатории, и когда я увидела, что мой код реально полезен, используется на практике, то поняла, что хочу и дальше разрабатывать.

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

Проверяли мы всё это на о. Сахалин. Почему там? Остров, море, интересные климатические условия, которые позволили написать докторскую и пару кандидатских по полученным данным :) Мы выезжали на море, устанавливали различные датчики, аппаратуру, запускали в воду беспилотник и получали огромное количество данных, которые нужно было проанализировать. Между такими заходами к морю дорабатывали интерфейс, правили косяки в корпусе (сколько мы герметика извели! :D).

Заодно успели посетить пару интересных туристических мест: пик Чехова, небольшой водопад, купались в холодной горной речке и не менее холодном Охотском море.

💡
Про нас, кстати, даже репортаж на Сахалинском ТВ был :D Правда, я там не засветилась.

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

Самое сложное — иногда делать то, что окажется ненужным

Порог вхождения для С++ разработчика часто выше, чем в некоторые другие языки, а также меньше курсов. Я реже встречала С++ разработчиков, закончивших курсы или самостоятельно выучивших язык. Думаю, что с профильным образованием проще начать карьеру: оно сразу даёт много базовых знаний и затачивает мозг на нужный лад. Однако дальше всё зависит от человека: необходимо постоянно развиваться и следить за нововведениями в языке, фреймворках, изучать практики по построению правильной архитектуры приложения и многое другое. И здесь уже от профильного образования ничего не зависит.

Я уделяю время самообразованию по професии: недавно начала читать «Чистый код» Роберта Мартина, сейчас запланировала прослушать несколько лекций с С++ Russia, а также слежу за нововведениями в язык и фреймворк Qt.

Кстати, как-то мы с коллегой нашли прекрасную карту разработчика С++, в ней описаны софт и хард-скилы, и есть разделение на джуна/мидла/сеньора 👇

C++ Developer Roadmap
The roadmap for learning the C++ programming language for beginners and experienced devs.

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

Мой самый сложный проект занял полгода на реализацию. Это была распределённая диспетчерская система, соединяющая в сеть сразу много терминалов и позволяющая операторам подключаться в разговор друг к другу. Было много работы над индикацией сразу на всех терминалах, передачей сообщений. Нужно было правильно подключить все аудиоустройства и смиксовать звук, чтобы все могли друг друга слышать. Это был интересный проект в плане архитектуры. Кажется, я переделывала её раза три, пока не пришла к самому удобному для всех варианту :)

🧠
Так что суперсила С++ разработчика — терпение: иногда ждёшь сборки целый час, чтобы понять, что ничего не работает :D

Впервые я столкнулась с мифами о профессии уже на первом курсе

У меня началась физика во втором семестре, и как-то вечером мама позвала меня на кухню:

— Слушай, ты же вот в Политехе учишься, у тебя там физика сейчас началась, да?
— Ну да.
— Тут фитиль у газовой колонки барахлит. Может, посмотришь?

Чаще всего сталкиваюсь с мифом, что если ты программист, то автоматически умеешь взломать Пентагон, переустановить винду, починить любую проблему в телефоне и т.п. Да, я могу установить винду, но это не потому что я программист :D

Самый бесячий стереотип о том, что девушки не могут кодить. Я сталкивалась с этим в университете: некоторые преподаватели очень удивлялись, что я работаю программистом. Был случай на практике, когда мне приходилось прятаться от моего руководителя, потому что каждый раз, когда я что-то делала с микроконтроллером, он подходил с удивлённым лицом и фразой «Ты что, программируешь???».

Главное вдохновение для меня — пользователи

Я стала частью Опен Медиа в 2022 году. Когда я только присоединилась к ОМ, первым делом научилась ставить ПО и собирать его, а потом починила пару небольших однострочных багов, чтобы потихоньку начать разбираться с тем, как всё устроено.

Основной продукт, над которым я работаю, — 4K Video Downloader. Но бывают задачи, которые я делаю и для других продуктов — 4K Tokkit и 4K Stogram. Мне нравятся все наши desktop-проекты: с ними интересно работать, реализовывать фичи, смотреть аналитику, изучать, что больше нравится пользователям.

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

Бывают и обсуждения с дизайнерами. Открыла для себя созвоны в фигме: оказывается, это очень удобно! Недавно начала больше взаимодействовать с нашей web-командой; ребята очень классно объясняют нюансы работы с JS, да и в целом с ними весело общаться. Я пишу графику на языке QML, который основан на JS. От ребят я узнала много новых нюансов по работе на JS, что недавно мне очень помогло: я починила небольшой баг с меню :)

🤍
В работе в ОМ мне нравятся корпоративы! Шучу. Больше всего нравятся люди. Ребята, вы все просто огонь :3

Не так давно у меня был факап в ОМ: я сломала аналитику во всех приложениях, причём мы успели выпустить релиз с этой аналитикой :D Мой фикс в джире мы пометили как для внутреннего использования.

А главное вдохновение для меня — пользователи. Мне нравится видеть, что то́, что я написала, реально используется, нравится получать отзывы и что-то по ним дорабатывать. Для меня очень важно видеть результат своей работы.

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

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

Цели стать лидом или ПМ у меня нет; мне нравится быть просто разработчиком и развиваться в этом направлении.

Клара

Клара

Автор