Привет, Хабр! Меня зовут Александр Голиков, я начальник отдела разработки интерфейсов «МосТрансПроекте». Многие сейчас мечтают построить карьеру в IT. Во-первых, это интересно, перспективно и востребовано. Во-вторых, здесь можно реализовать себя, создавая значимые проекты для людей. Но далеко не все понимают, что «войти в IT» не так просто, как кажется, особенно с нуля. Кстати, я сам пришел в разработку совсем не из «айтишного» профиля. Как так вышло? Рассказываю под катом.

Где собака зарыта
Думал ли я когда-то, что буду работать в IT? Точно нет. Я представлял себя инженером в какой-нибудь строительной компании, где работали мои родители. Мама — бухгалтер в «стройке», отец — начальник автобазы в строительной компании, дядя управляет строительной фирмой. Наверное, поэтому сразу после девяти классов я ушел в колледж учиться на инженера-проектировщика внутренних и наружных инженерных сетей. Работать по профессии начал уже с третьего курса.
Дальше получил «корочку» МГСУ, после чего устроился в достаточно крупную компанию на должность старшего инженера. Там я создавал чертежи и занимался газоснабжением целых микрорайонов. Было много бумажной и административной работы — я писал пояснительные записки, согласовывал проекты, общался с подрядчиками. Да, это было непросто, но в моменте сражаться с этой Харибдой мне даже нравилось.
Возможно, я бы продолжал работать инженером, но случилась неприятная ситуация: мою компанию поглотила более крупная, и в результате сократили штат. Я тоже попал под сокращение. Найти новую работу никак не удавалось, процесс шел очень тяжело: я получил только одно предложение, но меня не устроила зарплата и я отказался.
Тут я вспомнил о своем хобби. Я тогда увлекался собаками — выгуливал их и дрессировал. Первое время делал это бесплатно для друзей и знакомых, от которых получил первые хорошие отзывы и рекомендации. Решил попробовать превратить это в профессию. Так постепенно это занятие начало приносить мне деньги — я стал кинологом и начал предлагать свои услуги: опубликовал анкету в сервисе по подбору специалистов, и у меня постепенно появились клиенты.
Сейчас могу сказать, что это был крутой опыт, который в жизни мне очень сильно помог. Раньше у меня были трудности в общении с людьми: не с каждым получалось найти общий язык. Благодаря новой работе я стал ежедневно общаться с большим количеством клиентов. Прозвучит странно, но именно благодаря собакам (а вернее, их хозяевам) я научился свободно разговаривать, находить подход к людям, доносить до них свою позицию и презентовать себя. Этот навык помогает мне сейчас, но уже в IT.
Язык до программирования доведет
Я работал кинологом около трех лет, и в какой-то момент понял, что хочу большего. Да, собаки — это классно, но я осознавал, что эта профессия меня не прокормит. А в открытии собственного кинологического центра я видел больше рисков, чем возможностей: это было довольно дорого, а стартового капитала у меня не было.
Кроме того, оказалось, что работа на себя — это не так легко, как я думал. Да, ты сам строишь свой график, ни от кого не зависишь, но минусов тоже хватало: отсутствие стабильности (так как работа сезонная), сложность планирования, да и в отпуск уйти практически невозможно.

И тогда я стал учить язык программирования. Идею мне подсказал мой друг из колледжа, который на тот момент уже дорос до backend-разработчика в зарубежной компании. Он же помог мне найти репетитора, с которым я начал учить Java. Мы занимались онлайн два раза в неделю на протяжении 8 месяцев.
На занятиях мы изучали основы программирования с помощью задачек. Такие задачки можно найти, например, на leetcode.com и они подходят для любого языка программирования. Проще говоря, преподаватель учил меня мыслить, как разработчик. Одной из задач, например, была разработка обычного калькулятора — упражнение, которое очень часто встречается у новичков в программировании и используется при изучении почти любого языка — будь то Java, JavaScript, Python, или Go.
Примерно такой код у меня тогда получился:

Следующим шагом было погружение в специфику языка. Java – объектно-ориентированный язык программирования, туда-то мы и погрузились: классы, объекты, конструкторы, наследование, инкапсуляция и т.д. В качестве задачек часто были какие-нибудь структуры типа зоопарка или автосервиса. В таких структурах можно легко отработать ООП-принципы.
После восьми месяцев обучения я знал основы Java. Это было уже что-то: я вполне мог попробовать себя на место «джуна» в какой-нибудь компании. Так я вышел на рынок и начал искать работу в IT.
С новым кодом
Первым делом я открыл HeadHunter и сделал резюме. Я искал работу джуна и при этом обращал внимание на то, что связано с программированием на Java — например, инженер по автоматизированному тестированию. Таким образом я сделал резюме на две специализации сразу QA-инженер и Junior Java Developer.
Получилось как-то так:

Я стал откликаться буквально на все вакансии – даже на те, которые не особо мне подходили. В сопроводительных письмах писал, что я прошел курсы, готов учиться, только возьмите меня на работу. В требованиях стоит SQL? Да, окей, давайте SQL, я выучу его за месяц.
Результат был, откровенно говоря, так себе. Я мог отправить за день 20 откликов и получить, в лучшем случае, три отказа. Остальное — просто игнор, ноль эмоций. Конечно, сейчас я понимаю, что мое резюме было далеко от идеала и ничем не выделялось для рекрутеров. У меня не было понимания, как его составлять: написал, как чувствовал. Думаю, поэтому первое время реакций от работодателей и не было. (Кстати, если вы тоже не знаете, как составить классное резюме в IT, советую почитать статью моего коллеги, который все разложил по полочкам).
Попасть куда-то по блату я даже не пытался. Потому что связей никаких у меня не было: практически все мои друзья и знакомые работали в «стройке». Единственная зацепка — друг, который на тот момент был бекэндером в небольшой IT-компании за границей (именно он «подогнал» мне преподавателя, я писал об этом выше). Я спросил у него напрямую: «Вам нужен джун?» Он поспрашивал у коллег и вернулся с отрицательным ответом. Многого я и не ждал: все-таки компания маленькая, все потребности они закрывали одним специалистом и больше им не требовалось.
Я продолжил поиски. Однажды на просторах HeadHunter наткнулся на вакансию тестировщика (автоматизация тестирования). Компания занималась UX-исследованиями и тестировала системы заказчиков (иными словами, аутсорс-компания). Они предлагали бесплатную стажировку на месяц с возможным трудоустройством. Соглашаться было рискованно: жить еще месяц без дохода, к тому же гарантий, что я точно получу эту работу, не было.
Но я все-таки туда написал. Мне сказали: «Да, приходите, делайте тестовое задание». Я, конечно, пришел, все сделал. Нужно было решить техническое задание и написать простой алгоритм. Потом было собеседование. И там я, видимо, настолько хорошо себя показал, что меня пригласили на стажировку. Кроме меня, ее проходили еще 15 человек. Конкуренция была высокой, и в конечном итоге оффер могли получить только пятеро из нас.
За тот стажировочный месяц я с головой ушел в тестирование и все впитывал, как губка. Мы глубоко изучали теорию тестирования и проходили инструменты автоматизации. И ура — через месяц они взяли меня на должность инженера по автоматизированному тестированию. Это была моя первая работа в IT.
Плюс вайб
Мои ощущения на новом месте я могу описать так: шок вперемешку с восторгом. Как новичок, я восторгался всем: передо мной открылся новый магический мир. И прежде всего меня удивило, как в IT все легко друг с другом взаимодействуют. Например, я спокойно приходил к директору и на «ты» обсуждал с ним какую-то проблему. Раньше я и представить себе такого не мог.
Как человек коммуникабельный и открытый, я быстро втянулся в эту тусовку. Ретро, демо, карточки, ежедневные синки, планирование, груминги — раньше для меня это был набор слов, но теперь стало ежедневным ритуалом. Что особенно мне нравилось, так это то, что я мог делать много смежных с автоматизацией тестирования вещей. Например, настраивать сервера для запуска тестов, обучать вновь прибывших автоматизаторов и даже помогать в исследованиях. Я занимался не только тестированием, но и разными «девопсовскими» вещами. Как это бывает в любом небольшом стартапе, ты и жнец, и жрец, и на дуде игрец.
На старте у меня был индивидуальный план развития (ИПР), прохождение которого гарантировало мне новый грейд и повышение зарплаты. Руководитель дал мне год, чтобы выполнить этот ИПР, но я сделал это быстрее — где-то за полгода. Понял, что настало идти время просить повышение. Мне отказали, сославшись на то, что нет бюджета (напомню, это небольшой стартап). Тогда я решил снова выйти на рынок и практически сразу нашел классное предложение — автоматизатор тестирования на Java (специфику компании уже не вспомню). Зарплату обещали высокую — выше, чем я получал на текущем месте работы. Глаза тут же загорелись.
Тогда я пришел к своему руководителю и сказал, как есть: планирую покинуть компанию, потому что подвернулось «сочное» предложение. В ответ босс предложил выйти на новый проект (писать автотесты для одного из продуктов крупного банка) с повышением зарплаты. Предложение показалось мне привлекательным, и я согласился. Правда, проработал я с этим банком не очень долго. Проект завершился, а ничего нового мне предложить не смогли: напомню, это была аутсорс-компания и такие истории там — в порядке вещей.
30 секунд до фронт-энда
Признаюсь, за почти пять лет работы в разных компаниях тестирование мне немного надоело. В тестировании ты не решаешь, какой будет фича и и как она будет работать. Ты где-то сбоку от разработки — помогаешь тестировщикам, помогаешь разработчикам. А мне хотелось именно участвовать в разработке. Я понял, что я хочу влиять на что-то, а не просто писать скрипты автоматизации.
«Хочу во фронт-разработку», — решил я, хоть мой стек больше подходил к бэкенд разработке. Я хотел «красить» кнопки и влиять на интерфейс. Тем более, что на тот момент я уже работал инженером автоматизированного тестирования в «Яндекс Такси», где было много возможностей для обучения. Работа там (и, конечно, окружение) вдохновили меня учить новый язык, который я мог использовать для веб-разработки. И я принялся за JavaScript.
Напомню, что я погрузился в это, уже имея определенный бэкграунд. В запасе у меня был Java (мой первый язык), SQL (который я выучил на первой работе), Kotlin (его я выучил в «Яндексе», потому что нужно было писать автотесты для андроид приложения Такси). Также я немного знал Swift, потому что на нем надо было писать тесты для iOS. Я учился где-то год и научился программировать веб-приложения.
Этого, на мой взгляд, было достаточно, чтобы сменить профиль работы. В другую компанию уходить не хотелось, поэтому я стал обсуждать возможности остаться в «Яндекс Такси» — либо перейти на другой продукт. Так я попал на должность младшего фронтенд-разработчика в «Яндекс Маркете».
В Маркете я занимался разработкой корзины и чекаута (страница, на которой вы выбираете тип и время доставки и нажимаете кнопку «оплатить»). Через некоторое время мой интерес к продукту стал угасать — работать над «маленькой» частью большого продукта оказалось не так интересно, как я думал. Я хотел чего-то большого, значимого.
Никогда не говори никогда
Я решил двигаться дальше и снова вышел на рынок труда. Оказалось, что, даже имея за плечами большой опыт, найти новое место оказалось не так-то просто.
Компаниям, которые мне нравились, я был неинтересен. А компании, которые приглашали меня, были неинтересны мне. Пару «собесов» я вообще завалил. В какой-то момент я даже запаниковал. Но в конечном счете нашлись работодатели, которые предложили мне оффер. Их было три. Одна компания — это правовая система (скорее всего, вы ее знаете), вторая — крупный российский банк (его вы точно знаете), а третья — как раз МосТрансПроект.
Но обо всем по порядку. Первая компания заинтересовала задачами, но немного смутил уровень заработной платы (мне хотелось больше денег, чем они могли предложить). Еще одним красным флагом стала необходимость пройти психологические тесты при приеме. Это были прям стандартные опросники Кеттелла и Айзенка, плюс IQ тест с вопросами прошлого века. Примеры вопросов можно легко найти в интернете, набрав названия опросников. Сам факт психологических опросников меня оттолкнул, а особенно то, что на основе них принималось решение о приеме на работу. Поэтому оффер я в итоге отклонил.
Банк был уже гораздо интереснее. Они «заманивали» крутыми условиями и интересными задачами. И я уже почти принял их предложение, но тут внезапно меня пригласили на собеседование в МосТрансПроект. Я решил, что тренировка собеседований — это тоже хорошо, и пришел на встречу с рекрутером. Признаюсь честно, я сделал это только ради любопытства: на 80% я был уверен, что отклоню оффер. Причина была простая: я не хотел работать в госкомпании. От одного слова «гос» пахло консервативностью, серостью и унынием. А еще я думал, что люди в «госухе» — роботы, которые строго в 9:01 уже сидят за рабочим компом, в 18:00 выходят из офиса и больше никаких интересов не имеют. Спойлер: как же сильно я ошибался!
Наверное, впервые я осознал, что МосТрансПроект — это что-то классное, когда встретился со своим будущим руководителем. Во-первых, я сразу понял, что он крутой профессионал. Во-вторых, он с большой любовью и вниманием рассказывал о проектах и миссии компании — редко кто делает это на первом собесе. Так я узнал про сервис оценки транспортной доступности «Узнай про ЖК», картографический сервис КИП ТК и беспилотный автомобиль, который ребята развивали и тестировали на протяжении нескольких лет.
Ну и вишенка на торте: на собеседовании будущий руководитель (заместитель начальника управления разработки) обмолвился, что раньше, до IT, работал кинологом. Я не поверил своим ушам: то есть среди всех руководителей мне попался тот, который, как и я, профессионально занимался собаками? Мы до сих пор шутим, что он взял меня, потому что я кинолог, а я пришел, потому что он кинолог.
Шутки шутками, но на самом деле, общие интересы — это ведь тоже важно. Они играют определенную роль. Может быть, не решающую, но, когда при прочих равных у тебя есть человек, которому близки твои интересы, и он твой руководитель, то скорее ты выберешь именно его. Ну и еще раз отмечу: ожидания про серость, скуку и уныние ГБУ, описанные мной выше, не оправдались. Это оказалась совершенно здоровая и современная компания, где я мог реализовать себя.
Пока я ходил по собеседованиям в МосТрансПроект, банк уже заждался моего ответа. Я долго думал, взвешивал, оценивал. Усложняло задачу то, что уровни заработной платы были разные: в банке мне предложили больше. Но интерес был выше к Институту. В итоге мне удалось договориться с будущим руководителем НИИ, и обещаемый уровень зарплаты был пересмотрен.
В итоге я выбрал МосТрансПроект. Решающим фактором при выборе стали как раз проекты. Я понял, что здесь я наконец-то смогу делать что-то реально значимое для города и миллионов людей. Например, сейчас я занимаюсь нашим хедлайнерским проектом — сервисом оценки транспортной доступности «Узнай про ЖК». Совместно с командой мы развиваем сервис, придумываем новые фичи (о некоторых уже рассказывали тут мои коллеги), а также активно работаем с партнерами — Циан, Авито и ДОМ.РФ, внедряя интеграции в их приложения.
Ну и, конечно, я почувствовал, что в Институте я точно буду на своем месте и попаду к своим людям. «Чуйка» меня не подвела. Я оказался в поддерживающей атмосфере, где ценят профессионализм, где не страшно делиться идеями, ошибаться и быть собой. Подробно про дух компании расписывать здесь не буду. Тем более, это уже сделали мои коллеги.
Подводя итог и отвечая на вопрос, поставленный еще в начале статьи, хочу сказать, что всегда нужно пробовать. Можно много лет топтаться на одном месте, так и не осмелившись что-то поменять в своей жизни. Все реально — были бы желание, воля и решимость. В конце концов именно это привело меня туда, где я сейчас.

А вы как попали в IT? Рассказывайте свои истории в комментариях.