Блог CosySoft
2022-10-12 15:15 Карьера

Из полиции в айти: от обучения до тимлидства

Из полиции в айти: от обучения до тимлидства. Интервью

Любопытные истории о том, как в айти приходят люди из абсолютно не инженерных профессий есть во многих корпоративных блогах. У нас в CosySoft сейчас 70 человек, и большинство из них присоединились к команде в течение последних 3 лет. Так у нас и появился фронтендер старший лейтенант полиции.
В формате интервью мы поговорим с Марком — разработчиком, который уже два года вместо протоколов на дороге пишет код на React’e и сейчас лидит команду фронтендеров на одном из наших давних госпроектов в сфере образования.

Марк, ты же понимаешь, почему мы именно тебя попросили об интервью?

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

Как ты решил так резко изменить вектор карьеры: из полиции, и в IT?

Знаете, это самый частый вопрос, который я слышу от людей, узнавших о моем прошлом месте работы. Я вообще всегда был максимально далек от айти, образование у меня вообще геодезия и юриспруденция.
Но прежде чем ответить, я хочу немного рассказать о моей прошлой карьере, ведь так или иначе, она повлияла на меня, как на человека. А потом вы еще сильнее удивитесь, как я вообще решился на всю эту авантюру с переходом на айтишные рельсы)

CosySoft: окей, круто, что предложил — вещай!

В 2014 году, когда я вернулся из армии. Тогда мне было 21, и я, очарованный романтикой армии и желанием изменить общество в лучшую сторону, решил продолжить службу в органах внутренних дел. Многие из моих родных были против этой задумки, но меня было уже не остановить: я потратил полгода на медкомиссию и собеседования, и моим первым местом службы стала патрульно-постовая служба полиции.
За 2 года, из которых полгода я провел в учебном центре, я успел увидеть то, что обычно можно увидеть в каких-то грустных фильмах, где у людей нет денег и они выживают как могут. Это время оставило довольно сильный отпечаток. Оно научило меня ценить всё что у меня есть, ведь есть те, у кого реально нет ничего.
В конце 2016 года, после ППС я перевёлся в ДПС или ГАИ, как кому привычнее. Переход для меня стал огромным шагом и непростым испытанием: во-первых, я стал офицером, во-вторых, подразделение, где я проходил службу, было одним из самых дисциплинированных мест.
В подразделении я старался всячески проявить себя, как человека, на которого можно положиться, при этом не подставляя других. Через полгода службы меня перевели из инспектора ДПС в инспектора службы. Это была работа в кабинете, где главной задачей было планирование несение службы нарядами ДПС, а также ведение соответствующий документации.
Далее Чемпионат мира по футболу. Эти 2 месяца стали самыми памятными за всю службу. Не сказать, что это было самое сложное время, оно было самым интересным. После ЧМ мне предложили должность заместителя командира роты. Вот тут началось самое сложное: последующие 2 года я был руководителем в нескольких подразделениях ГАИ, и менялись подразделения не из-за того, что я не справлялся, а по разным обстоятельствам: изменения штата, сокращение подразделения, необходимость заменить другого руководителя.

Как повлияла на тебя служба?

Она просто показала простую истину: если хочешь расти как профессионал и подняться по карьерной лестнице — нужно всегда идти навстречу трудности. Всегда! Как только дашь слабину, кто-то может обойти тебя. По этому упертость, дисциплинированность и трудоголизм стали моими спутниками.
И безусловно, я научился работать с людьми. Слушать, слышать, решать их проблемы. Это, по-моему мнению самый ценный и сложный урок.

Развивал софт-скиллы до того, как это стало мейнстримом, получается… Но что всё таки заставило тебя уйти? Карьера то строилась, должности росли…

В 2019 году, когда у меня родилась дочь, я стал задумываться о будущем. Не то что в полиции его нет, просто я знал семьи, где отцы служили в органах. Вместо времени с родными — дежурства, задержания, допросы, обыски, розыскные мероприятия. Да и вся это сверхурочная работа, которая могла длится несколько суток, довольно слабо компенсировалась. Хотел ли я тратить свою жизнь на это, и не быть рядом с семьей? В какой то момент я понял, что нет. И тут началось самое интересное…

Почему выбрал айти? Почему фронтенд?

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

Расскажи, как проходило обучение?

На курсах был план обучения, благодаря которому у меня было чёткое понимание того, что мне стоит учить и в каком порядке.
Я думаю что ни для кого не секрет, что путь фронтендера начинается с HTML и CSS, затем git, после этого — JS и его экосистема. Таким же путём шёл я.
Как только начались курсы, я погрузился в них с головой. В среднем 5 часов в день я посвящал обучению. Обычный будний день выглядел примерно так:
07:00 - подъём;
07:00 - 07:45 - повторение изученного накануне материала и пересмотр всего, что было написано;
07:45 - 18:00 - служба;
18:00 - 21:00 - семейные дела;
21:00 - 02:00 - курсы, документация, ютуб, кодинг.
На выходных всё было проще: проснулся и учился. И это продолжалось в течение 6 месяцев.

Говоришь с такой легкостью, будто график тебя вообще не смущал, значит сложность была в чем-то другом?

Проблема курсов была в том, что менторы преподносили материал, как будто у нас уже был какой-то опыт. Возможно у кого-то он и был, но для меня, всё что они говорили, было на инопланетном языке.
Если вёрстка, как мне показалось на первый взгляд, была всего лишь лёгкой прогулкой, перед настоящим программированием, то изучение основ JavaScript стало настоящим испытанием.
Я не могу их винить в этом, возможно я был единственный из группы, кто ничего не понимал.

Но мы то знаем, что ты уже работаешь, трудности преодолел и в общем-то весь такой молодец. Как?!)

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

CosySoft: опять же, у нас есть спойлер, что ты не бросил обучение в самом начале, когда еще было все непонятно. В чем ты черпал мотивацию?

Да конечно, я понимал, что работа в IT это круто, зарплаты, удаленка, условия труда — мне про это рассказывал брат, но ничего из этого не мотивировало меня, как удовольствие, получаемое от личных маленьких побед. Я начал получать удовольствие от процесса и это стало моим главным мотиватором в учёбе. Всё о чём я думал, не считая конечно же семьи, было программирование.
Но говоря про “маленькие победы” так же хочется и сказать что были поражения. Не всё всегда удавалось сделать с первого или даже со второго раза, на осознание какого-то материала уходило несколько дней. Это было настоящим испытанием для меня. Иногда было ощущение что ещё чуть-чуть, и я сдамся, что это не для меня, что я не для этого. Но всё менялось в тот момент, когда цель была достигнута. Эйфория от успеха заряжала мотивацией на долгое время и я шёл дальше, шаг за шагом.
Полгода я находился в таком ритме и в один момент я понял, что готов к…

Тут Марк решил отобрать этот долгожданный вопрос и лишить нас удовольствия интервьюера) Так что с работой, каково джуну после курсов?

Всё это происходило в период разгара коронавируса, и это, мягко говоря, внесло свои коррективы в уровень сложности.
Начал с составления резюме, но это для меня была настоящая боль. Как оформить, что писать, что не писать, на что обратить внимание, как грамотно сформулировать, что за чем указывать? Эти и не только эти вопросы возникли в тот момент, когда я открыл HeadHunter.
К моему счастью, образовательный портал помогал с составлением резюме. Я пообщался с консультантом, и совместными усилиями у нас получилось сделать мне резюме, которое помогло стать мне чуть более привлекательным для работодателей.
Подготовив резюме, я начал рассылать его просто везде где требовались junior frontend разработчики. По моим скромным подсчетам, я откликнулся где-то на 200 вакансий, выполнил 30 тестовых заданий. Меня не приглашали на собеседование, но я не отчаивался и продолжал откликаться и выполнять задания. И вот однажды, после выполнения очередного задания, меня пригласили на собеседование. Сказать что я был счастлив, значит ничего не сказать. В тот момент я наверное и осознал, на что иду, и что моя жизнь реально может измениться в ближайшее время, тогда я все еще служил в полиции.
В день собеседования я реально не мог найти себе мест: переживал, повторял всё что учил, пытался изучить что-то новое. Собеседование заняло около 30 минут, технических вопросов, по-моему даже и не было, просто спросили что знаю, где учился, и почему решил сменить профессию (рубрика самый частый вопрос снова вошла в чат). После собеседования сказали что перезвонят в течении 2-3 дней.
Прошло 3 дня, мне написали в телеграм, что увы есть более привлекательный кандидат, но при этом сказали, что я попал в “шорт-лист”, и я буду следующим, кому предложат работу. Не знаю почему, но меня это не расстроило, как будто я был на 100% уверен я не пройду собеседование с первого раза, не бывает такого, тем более со мной. И я продолжил изучать материал, с осознанием того, что я получил опыт собеседования и отказа, так как это был первый раз, когда мне реально отказали, а не просто забили на меня, так как все предыдущие разы HR’ы не посчитали нужным отвечать на мои задания. Буквально через 3 дня мне вновь написали с этой же фирмы, но уже с приглашением на работу, так как человек, которого они взяли, не справился.
И тут начинается новая глава моей карьеры.

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

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

Первая работа в IT — долгожданный, при этом волнительный этап. Каким он был для тебя?

Первый блин комом. Вот как то так наверное я почувствовал для себя свой первый опыт. Я не хочу ни кого обвинять или осуждать, просто это мои личные ощущения. Моей основной задачей было верстать мобильные приложения на базе Angular + Ionic. Так как на курсах я работал с React, мне приходилось изучать Angular и Ionic в процессе работы. Обычное дело кажется, учить что-то новое в процессе работы, но есть один нюанс. Полное отсутствие менторства. Так как работа была удалённая, задать вопрос можно было только в чат, но как правило ответа я так и не получал. Что такое код-ревью я за 2 месяца так и не узнал. В общем я был предоставлен сам себе. Я понимал, профессиональный рост в таких условиях будет очень медленным и не факт, что положительным. И в какой-то момент я начал вновь искать работу.

Многие HRы тебя похвалили бы наверно… А еще тут могла быть шутка 18+ про «первый раз», но пусть читатели сами ее себе пошутят) Давай теперь про второй поиск работы junior’ом: что там интересного было?

В конце июля 2020 года меня пригласили на собеседование две компании — CosySoft и… вторая. К интервью я готовился очень тщательно: повторял материал, и старался практиковаться с тем, что не изучал ранее. Словно студент я конспектировал документацию, видео с ютуба и другие ресурсы, и если не было доступа к компьютеру я читал свои конспекты.

Это помогло? Чем очередные собесы отличались от прошлого?

Это были два совершенно разных интервью, заслуживающих отдельного внимания!
В CosySoft меня очень дружелюбно встретили, мы постояли на крыльце пообщались и через некоторое время прошли в переговорку. Я очень сильно переживал, но старался скрыть это. Собеседование длилось один час, но сказать сколько оно ощущалось по времени очень сложно.
С одной стороны это было похоже на крутую перестрелку в вестерне: вопросы летели один за одним, я отвечал как мог максимально быстро и чётко (привычка из полиции). С другой же стороны за этот час я устал так, будто я копал траншею километра 3(а тут из армии).
Потом мне предложили посмотреть офис, но я отказался, мне показалось что я провалился и не особо хотелось смотреть место, куда я потенциально не попаду. Вернувшись домой, я лёг на диван и просто смотрел в потолок в течении пары часов. У меня не было сил, я был морально раздавлен. Я считал что хуже просто быть не могло.

Ко второму собесу я запомнил вопросы, на которых я точно провалился и заострил своё внимание на связанной теме.

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

Но в итоге ты получил оффер от нас, помнишь этот день?

Ровно через неделю после собеседования мне позвонили с CosySoft. Что было дальше я помню смутно, но я улыбался как идиот и кивал. На вопрос о том, надо ли мне время на ответ, я сказал что хотел бы подумать пару дней. По факту я готов был сказать да сразу, но почему то мне показалось, что это произведет плохое впечатление. Я почувствовал какую-то сумасшедшую эйфорию и прилив сил, ведь я был на 100% уверен, что мне откажут.
На следующий день я подумал что тянуть нельзя, перезвонил и сказал, что готов выйти на работу через несколько дней — надо еще было закрыть хвосты на старой работе.

Расскажи про первый коммерческий опыт у нас — что было самое ценное?

На первом проекте у нас была огромная команда, состоящая из 9 фронтендеров. Я думаю все слышали шутку: «Забудь всё, чему тебя учили в институте, сейчас мы научим тебя работать». Так произошло и со мной, хотя мне этого напрямую никто и не говорил. Всё, что я знал и умел на тот момент и рядом не стоит с тем, чему я научился за 1 месяц в этой команде. Каждый раз после мердж реквеста я узнавал что-то новое (не про себя), выполняя задачи, я подмечал для себя интересные решения и применял их в дальнейшем на практике, старался впитать в себя как можно больше знаний. В сравнении с предыдущим опытом, я попал в какой-то рай для новых разработчиков, все искренне старались мне помочь, объяснить что-то, научить новому. За это я каждому из них благодарен.

CosySoft: а как стал лидом? 2 года это же не так много, как наверно подумают многое читатели)

Через полгода меня перевели на другой проект, внутри экосистемы той же образовательной платформы. Лид этого проекта как раз собеседовал меня и ощутимо помог мне в первое время. Тут получил апрув от лида и начал заниматься код-ревью. Не то чтобы разрешение было необходимо, но как-то я привык к субординации и распределению задач. Так вот, говоря о код-ревью, это помогло мне развиться ещё больше, ведь когда ты не только сам что-то знаешь, но и можешь объяснить доступно это другому, это что-то значит.
После того, как я отработал на втором проекте также полгода, меня переводят на следующий, где мы делали редизайн приложения. Основные работы закончились, и меня оставили в качестве лида. Сейчас моя команда занимается следующей версией редизайна. Звучит скучно, но в последней версии мы практически поменяли весь стек, оставив базу, таким образом мы смогли построить свою собственную архитектуру, имея опыт предыдущих ошибок.

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

Хочу сказать, что все это мой личный опыт. Если вы попробуете повторить его, то нет гарантий что у вас всё получится именно так, но я желаю вам решиться сделать шаг. Не ошибается только тот, кто ничего не делает. Искренне надеюсь, что кому-то это будет полезна, кому-то даст заряд мотивации, ведь в этом её смысл.
Отдельные слова благодарности хотел бы сказать команде CosySoft, за то что взяли меня к себе и конечно моей жене, которое всё это время была рядом, и понимая все риски, поддерживала меня.

Советы, которые я хотел бы дать начинающим, да и не только.

Инвестируйте время на уровне привычек: создайте в расписании календаря ежедневную задачу, по которой будете без прогулов учиться новым hard-skills по выбранному направлению, прописывайте результат каждого урока. За успех придумайте награду, а каждый пропущенный результат должен быть наглядным.
Можно потратить несколько лет, уделяя лишь 1 % от всего свободного времени учёбе, или посвящать этому все свободные часы — решать конечно только вам.
Повторяйте всё, что вы уже знаете. На ранних этапах это очень важно, ведь вначале, не имея практики, забывать пройденное проще, чем учить новое. Поэтому если даже кажется, что материал изучен вдоль и поперек, не ленитесь потратить пару минут, просто для того, чтобы освежить память.
Рефлексия. Очень важный момент. Начиная новый домашний проект, или новый лендинг, вспомните, с какими проблемы вы сталкивались на прошлом проекте и обдумайте как вы можете обойти эти проблемы на новом проекте.
Не бойтесь задавать вопросы. Большинство новичков, да и не только, боятся задавать вопросы, боясь показаться себя непрофессиональными. Это большое заблуждение. Во-первых, лучше спросить и сделать задачу за час, чем не спросить и делать 2 дня. Это факт. Во-вторых, вокруг нас, как правило, такие же разработчики как и мы, они тоже с чего то начинали и тоже задавали вопросы. Понятно, что лучше не перегибать с вопросами, ведь задав три раза один и тот же вопрос, получив при этом на каждый ответ, или спросить, например: «Как переопределить цвет в CSS», явно можно оставить о себе плохое впечатление.
Всегда старайтесь чётко оценивать время, которое отводите на задачу. Понятно, что иногда вы будете ошибаться, но при этом необходимо сделать правильные выводы. Если задача требует большего объема работ — скажи команде сразу, как это осознал. От твоей задачи могут зависеть другие, и ты будешь задерживать проект. Это раздражает...)
Как можно быстрее начните проводить код-ревью. И это касается не только чужого кода. Проведение код ревью это не только выявление ошибок в чужом коде, но и понимание того, какой новый функционал появляется в проекте. И как я писал выше, если вам какой-то фрагмент кода не понятен или вы считаете его неправильным, напишите вопрос, только всегда в таком случае пишите развернуто, чтоб была понятна суть вопроса или несогласия. Проверять свой код тоже необходимо, прежде чем просить других разработчиков смотреть мой код, как правило, я смотрю его сам и убедившись, прошу других посмотреть.
Каждый раз, когда что-то долго не получается, или кажется сложным — постарайтесь объяснить это уточке. Вместо уточки может быть использован любой другой предмет, или человек (лучше конечно предмет). Со стороны может выглядеть странно, но рассуждать о проблеме вслух и находить решения бывает намного легче.
Не бойтесь спорить. Все мы люди, все мы ошибаемся, да и помнить всё к сожалению тоже невозможно, поэтому всегда, когда ты можешь аргументированно обосновать, отстаивай свою точку зрения, но при этом, надо чётко слышать аргументы оппонента и если он прав, то не бойся и признать свою ошибку.
Всегда имей план дальнейшего развития. Всегда старайтесь учить что-то новое, узнать как можно больше того, что поможет в профессии: языки программирования, иностранные языки, алгоритмы и т.п.
Надо чётко осознавать, в какую сторону должно идти обучение в ближайший период времени. Примерно так: в течении триместра я хочу узнать про 3 новых технологии, то есть на каждую технологию я трачу месяц. Вне зависимости, насколько она сложная, как глубоко успеешь погрузиться, тратишь на неё ровно месяц. Не успел, переносишь дальнейшее в следующий триместр, успел быстрее отдыхаешь оставшиеся время. Именно отдыхаешь, ведь это тоже необходимо.
Поощряйте себя. Ну а что только работать и страдать? Конечно нет! Подняли зарплату? Купи то, что давно хотел. Был джуном, стал мидлом? Сходи в кафе. Надо в полной мере ощущать плоды своих стараний.
И последний совет: занимайтесь физической активностью. Про себя могу сказать что я хожу в тренажерный зал, играю в футбол и занимаюсь боксом.
Почему это важно? Во-первых, работа у нас сидячая, и заплыть жирком можно очень быстро, а это за собой тянет очень много плохих последствий. Во-вторых, необходимо гонять кровь, для того чтобы мозг лучше работал. В-третьих, спорт помогает лучше и увереннее себя чувствовать.
Мне уверенность помогла поставить карьеру на новые рельсы, при этом достичь личных целей, среди которых был переезд в Израиль вместе с семьей. Да, вот такой поворот в конце истории!
При этом я продолжаю работать в CosySoft и очень благодарен руководству, что поддерживают не только карьерные, но и личные цели людей.