Главное Авторские колонки Вакансии Образование
241 2 В избр. Сохранено
Авторизуйтесь
Вход с паролем

​Боль и восторг: выпускник киберфака о первой работе

Вуз не подготавливает к работе идеально. У программистов столкновение с реальными задачами происходит особенно больно. Программист ISPsystem Савелий Арляпов рассказывает свою историю. Он пришел в ISPsystem сразу после киберфака иркутского политеха, первое время страдал, а сейчас ничего — радуется жизни.​
Мнение автора может не совпадать с мнением редакции

b_5ab0c0eb81c37.jpg

Погружение в работу

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

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

Инструменты, которые нам давали в университете, здесь неприменимы в принципе, те же среды программирования.

Первые несколько дней на работе у меня был шок. Огромный поток информации. Просто сносит. Как будто перед тобой матрица, и ты пытаешься в ней разобраться. Это очень круто и до сих пор все идет в таком высоком темпе: что ни день, то задача, которая прям горит.

Погружение в работу было простым: вот тебе список баг, решай. Я попал в кору (фреймворк COREmanager, на котором построены продукты ISPsystem. — Ред.). Это сейчас новенькие разрабы получают доступ к виртуальным машинам, Jenkins и остальному необходимому. А мне дали ноут и сказали: если нужен продукт, собирай с нуля.

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

И вот этого совершенно нет в универе: понимания технологий, которые сопутствуют программированию.

Работа в команде

Было сложно, но мне помогали. Временами старшие коллеги подзадоривали: «Ты не знаешь, как это работает? — язвительно спрашивали они. — Пфф!»

Перед устройством сюда я был на «вы» с Linux, Леня убедил меня поставить Gentoo на свой ноут. Три месяца страданий, и я нормально дома пишу диссертацию, пользуясь инструментами этой оси. Теперь смело могу называть себя гентушником и уверенным пользователем Vim.

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

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

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

Первая серьезная задача

Со временем я начал работать быстрее, оптимизировал процесс, оброс скриптиками (один из них ходит за меня в Jenkins). Задач стало больше, и они стали сложнее. Не было и нет люфта, ощущения, что перерос.

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

Было много холиваров о способах изучения программирования. Можно книгу прочитать, но вряд ли получится применить знания из нее. Можно пройти курсы, где есть практика, но она оторвана от реальных проблем. А здесь реальные задачи, технологии, доступы к ним. Для DNSSEC мне дали белые IP-адреса, серверы, живые доменные имена второго уровня. Эти вещи студентом нигде не возьмешь, а здесь сколько нужно, столько и дают. Не приходится, в общем, через замочную скважину клеить обои.

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

Красивые задачи — как поход в театр. Смотришь постановку, автор которой что-то хотел донести. Можно его посыл не понять (бывает). Но если поймешь, от этого понимания прёт. Ты прям тащишься и говоришь: «Еще!».

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

Круг интересов и друзья

Кто-то считает программистов социофобами, но я не думаю, что они не любят общаться или боятся людей. Просто круг интересов немного отличается от повседневных и бытовых вещей.

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

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

Учеба

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

Очень пригодилась общая терминология. Ты что-то где-то слышал, что-то видел — политеховские преподаватели любят углубляться в узкие темы. И бывало на работе я слышал задачу и говорил: «Во, да я про это курсачик сдал!».

Сейчас я работаю и учусь в магистратуре. Совмещать несложно. Мне даже немного стыдно, что еще что-нибудь не практикую. Можно было заняться спортом или вернуться к танцам. Но то ли ленюсь, то ли навязываю себе, что не получится.

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

Совет выпускникам

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

Не зарывайся в курсы, предподготовку. У меня есть группа друзей, которые решили сначала подучиться, а потом уже устраиваться. Так лучше не делать: теряется время и то, чему научил вуз.

Как ни крути, а университет много тебе дал. Со временем это пропадает и погрузиться в тему еще сложнее.

*На фото часть команды разработки ISPsystem. Савелий Арляпов в красной толстовке

0
В избр. Сохранено
Авторизуйтесь
Вход с паролем
Комментарии
Зоя Ветрова
Считаю удачным попасть на работу во время учебы. Пусть даже по началу помощником, но в сфере будущей профессии. Здесь тебе сразу и теория и опыт.
Ответить
ISPsystem
Разрабатываем ПО для хостинга, облачных провайдеров и дата-центров
Федосеенко Виктория
Согласна с вами. Еще важно место работы подобрать хорошее :)
Ответить
Выбрать файл
Блог проекта
Расскажите историю о создании или развитии проекта, поиске команды, проблемах и решениях
Написать
Личный блог
Продвигайте свои услуги или личный бренд через интересные кейсы и статьи
Написать

Spark использует cookie-файлы. С их помощью мы улучшаем работу нашего сайта и ваше взаимодействие с ним.