Как пройти путь от галеры в Новосибирске до релокейта на Филиппины
Автор статьи рассказывает, как начал работать в IT с галеры и оффером в 40 тысяч рублей, а затем изучил Java и переехал на Филиппины.
3К открытий4К показов
Зовут меня Александр, мне 27. Родился и прожил большую часть жизни в городе Новосибирск. Сейчас живу на Филиппинах и удалённо работаю в СДЭК Диджитал. С красным дипломом окончил Сибирский Государственный Университет Геосистем и Технологий.
Во время учёбы подрабатывал на пол ставки лаборантом кафедры прикладной информатики и информационных систем. В C++ Builder писал софт для кафедры физики и со своими проектами участвовал в различных студенчиских конференциях, за что получал приятную пятизначную стипендию. Параллельно помогал своим друзьям и знакомым развивать игровые проекты в GTA SAMP.
Но моя любовь к ИТ возникла намного раньше, ещё в школьные годы, когда я создал на рабочем столе файл index.html, и открыв его с помощью блокнота, написал <h1>Hello world!</h1>
.
В тот момент я ощутил эйфорию от мысли, что теперь умею создавать свои сайты. Так и начался мой путь в ИТ.
Прим. пред.: Это — статья из цикла о том, как наши читатели нашли первую работу в IT. Вы можете написать такую же статью! О том, как поделиться своим опытом, написали здесь.
Как искал первую работу
После окончания бакалавриата пришло понимание, что пора искать первую настоящую работу в офисе и зарабатывать на жизнь более существенные деньги, чем стипендия и дополнительные копейки с ботов, которых сам написал и держал на игровых серверах.
В планах было устроиться в 2GIS, т.к. это была единственная крупная компания в городе, которую я знал на тот момент, и которая подходила мне по стеку технологий и локации. Я связался с HR-ом по почте, отправил ему своё резюме, после чего получил тестовое задание, на решение которого мне дали неделю.
С заданием я справился за пару дней и моё решение понравилось компании, но за это время они уже успели нанять другого разработчика, поэтому мне предложили подождать этап технического собеседования пару месяцев.
Ждать мне совершенно не хотелось, и по счастливому (или нет?) совпадению я узнал от своих сокурсников, что недалеко от университета есть небольшая компания, которая набирает разработчиков. Я решил попробовать свои силы там.
Как прошло собеседование
Собеседование было неприлично простым. Наверное, это было даже не звоночком, а самым большим красным флагом, но тогда я этого не осозновал. Собеседовали меня генеральный директор компании и техлид. Они спросили меня про мою дипломную работу.
Я тогда на C++ с помощью Qt, OpenGL и GLSL разрабатывал свой 3D движок для обработки геопространственной информации. Показал свой проект интервьюерам с планшета, и им он очень понравился.
Компания на самом деле была не прям айтишной, скорее лишь на 50%, а на остальные 50% — геодезической. У компании был свой ИТ продукт, который представлял из себя многоцелевую кадастровую систему со встроенным графическим 2D редактором. Директор мне сообщил, что они давно хотят добавить 3D редактор, но этим не кому было заняться, на что я с энтузиазмом был готов подписаться.
Нюанс был в том, что для разработки в компании использовалась Java 7, знания которой у меня были на уровне Hello world. Но техлида и директора нисколько это не смутило, на что они мне ответили: «Раз на плюсах кодишь, значит джаву быстро подтянешь». На этом вопросы ко мне закончились, после чего мне было предложено самому позадавать вопросы о компании.
Я на тот момент мало понимал об устройстве ИТ кухни, поэтому мои вопросы ограничились перспективами карьерного роста, системой баг трекинга и системой контроля версий, которые использовались в компании (кстати, это были Jira и Subversion).
После того, как вопросы закончились, мне сразу же был сделан оффер на 40 тыс. рублей в месяц. В 2017-м году я даже не подозревал, что стажёр или джун может столько зарабатывать. Мои ожидания были в диапазоне 20-ти и 30-ти тыс. рублей, так что я сразу же принял оффер.
Каковой оказалась первая работа
Спустя пару дней я подписал договор и приступил к своей первой работе. В команде было всего 9 человек, 7 из которых были разработчиками, один сисадмин и один… я даже не знаю, чем он занимался. Он не был разработчиком, но выполнял роль технической поддержки, иногда был оператором баз данных (не путать с ДБА!), и постоянно взаимодействовал с заказчиками. Но он точно не был менеджером или овнером проекта.
Тестировщиков в компании не было, всё тестировалось отладкой и пользователями на бою. Код ревью тоже не было, все баги правились только, если кто-то из разработчиков случайно заметил баг в твоём коде, либо если начинали поступать звонки от заказчиков. Юнит и интеграционные тесты тоже не было принято писать, хотя в проекте они были. Наверное, их писал самый большой энтузиаст в команде. Проект собирали с помощью Ant и JBoss. Но тогда я даже не подозревал, что здесь что-то не так, и лишь спустя годы работы в компании я осознал, что работаю в самой настоящей галере.
В первый рабочий день мне завели десяток задач в джире и сказали приступать в любом порядке. Наставника у меня не было, но по рабочим вопросам я мог обращаться к любому из коллег. Проблема была в том, что предо мной стояла задача разработать и внедрить полноценный 3D движок на языке, который я совсем не знал, в приложение, с которым не знаком. И в компании никто не имел опыта работы с 3D. Можно сказать, в первый рабочий день, будучи джуном, я сразу стал вести собственный проект (который в будущем вырос в магистерскую диссертацию). Зато у меня была полная свобода выбора технологий, которые я мог использовать. У меня уже был студенческий опыт работы с OpenGL, поэтому я начал разбираться, как пользоваться Java OpenGL, параллельно изучая саму джаву.
Трудностей было много, приходилось постоянно считать матрицы, векторы, использовать кватернионы и кучу другой тригонометрии, к которой я не был готов. Доходило до того, что на мои вопросы не находилось ответа в англоязычном гугле, я создавал вопросы на StackOverflow, но и там получал 0 ответов. Иногда отчаяние доходило до такой степени, что ответы я искал на китайских и вьетнамских форумах, пользуясь гугл переводчиком, и даже что-то там находил. Из интересного, ещё приходилось писать скрипты для AutoCAD на Lisp. Это довольно позитивный язык, если вы понимаете, о чём я )))))
.
Спустя 2 года у меня был разработан полноценный 3D модуль с функциями создания и редактирования 3D объектов, а также построения оцифрованных поверхностей с помощью 3D тайлов, прям как в Google Earth, и ещё кучей интересных фич. С этим проектом я защитил свою диссертацию, а компания заработала приличные деньги, продав мою большую 3D фичу нефтянникам. Но меня совсем не устраивало, что за эти годы работы и принесённую пользу компании я лишь 1 раз получил повышение зарплаты на 15 тыс. рублей, без каких либо премий (не считая общих годовых). Все вокруг уже начинали переходить на Java 11, но в нашей компании даже не было планов переходить на 8-ю. Лишь спустя такое огромное количество времени у меня появились первые мысли, что я упёрся в потолок и нужно что-то делать.
Итог и советы начинающим
Я начал мониторить вакансии Java разработчика и быстро понял, что десктоп разработкой на джаве никто не занимается. Я потратил ещё целый год на изучение технологий разработки бэкенда (спасибо СКБ Контур за их бесплатную школу разработки), посмотрел, как люди пишут бэк на C# с помощью NET Core. Потом сравнил зарплаты Java и C# разработчиков. Понял, что в моём городе на тот момент первые имели зарплаты сильно выше, и вакансий было больше. Изучил для Java всё, что знал о разработке бэкенда на C#, сразу же уволился с работы, даже не дожидаясь новых офферов, т.к. знал, что текущая работа будет мешать полноценному поиску новой. За месяц неторопясь я прошёл 6 собеседований, по результатам которых получил 4 оффера. С тех пор я работаю бэкенд разработчиком в СДЭК уже несколько лет, живу на островах, ем экзотические фрукты, круглый год хожу на пляж и гуляю по живописным местам, так что меня в целом всё устраивает ?
Начинающим разработчикам могу порекомендовать следующее:
— Ищите работу в компаниях с налаженным ИТ процессами. Спрашивайте, как тестируются продукты, как проводится ревью, есть ли CI/CD, какие перспективы карьерного роста есть, как компания помогает развиваться своим сотрудникам.
— Ищите работу на агрегаторах вакансий, типа HeadHunter или Linked In. Я в своё время до этого почему-то не додумался, и мне это стоило трёх лет потраченного времени.
— Составьте резюме и рассылайте его всем компаниям, которые вам нравятся, даже если они сейчас не ведут набор джунов или стажёров. Кстати, именно так я и попал в СДЭК ?
— Заведите пет проект, который можно будет показать работадателю, если такая необходимость вдруг возникнет на собеседовании. Шансов со своим проектом будет гораздо больше, по сравнению с кандидатами, без проекта.
— Не принимайте первый попвашийся оффер, даже если предлагают хорошую зарплату. Возможно, вы даже не подозреваете, что ваш труд стоит больше. А иногда имеет смысл выбрать компанию с меньшей ЗП, но с большими перспективами роста.
— Первое время лучше поработать в офисе, т.к. на первой работе возникает ощущение, что ты окунулся в новый мир, где ничего непонтяно, и у тебя куча вопросов, которые быстрее и эффективнее решить оффлайн с наставником или коллегой. Спустя пару месяцев можно переходить на удалёнку.
— Не стесняйтесь мониторить рынок и обсуждать своё повышение с менеджером или тимлидом. Так вы будете всегда в курсе, что востребовано на рынке и сколько может стоить ваш труд.
Такова история моей жизни в ИТ. Надеюсь, кому-то это было интересно и полезно. Дальше только интереснее, всем удачи!
3К открытий4К показов