Предисловие
В этой статье я хочу описать не просто, то, что я сделал, но еще и контекст и некоторые жизненные обстоятельства, с которыми мне пришлось столкнуться на пути в IT. Показать поиск пути к цели, когда путь не известен, а сверху давят дополнительные обязательства. Хочу написать личную историю, потому что, как мне кажется — это может помочь людям, которые находятся в схожей ситуации.
Предыстория
Шел 2014 год. Я, в 19 лет переезжаю в другой город и открываю свой музыкальный магазин. Продаю китайские реплики гитар известных брендов, усилители, микрофоны, пульты... Помню даже договорился с человеком из Донецка, который у себя на заднем дворе, в гараже, костюмные гитары делал. Мне процент, ему заказ. Даже сам заказал у него вот такое:
Но что-то пошло не так, оказалось, что держать магазин это не так уж и просто, тем более такой нишевый магазин, тем более если продавать китайский ширпотреб.
Мотивация персонажа
Стукнуло 20 лет, а у меня уже долги и прогоревший бизнес. Сказать, что это был «минус вайб» и «полный тильт» ничего не сказать. Сперва, конечно, были все стадии принятия и хаотичный поиск решения проблем, но затем, холодная голова подсказывала: «необходим четкий план действий».
Хаотичные мысли:
● У меня все отлично с математикой и логикой
● Я спокойно часами сижу за компом
● Люблю физику, математику, посидеть-подумать
● Вроде есть такое в мире, как научно-технические специальности
● Вроде как за это хорошо платят
Сложились в План №1
1. Найти работы, на которой можно заниматься своими делами, что позволило бы мне также заработать чуть денег, выплатить долги.
2. Основательно подготовиться к сдаче ЕГЭ и к олимпиадам, чтобы поступить в хороший ВУЗ.
Получить корочку и войти в IT или в науку и купаться в зелени.
План №1
Пункт 1. Поиск работы
Сперва я отчего-то решил, что мой путь пролегает через мобильный ретейл, во всяком случае у меня был там опыт и я знал, что я спокойно могу туда устроиться. Главная проблема была - найти спокойную точку, где нет постоянного потока посетителей. Тут было 2 попытки.
Сперва я пошел устраиваться в МТС, обучение в котором походило на какие-то очень странные, тимбилдинг-лайк хороводы, я там только «кумбая» не пел и через обруч не прыгал, в общем не задалось.
Вторая попытка – «Евросеть», там была привычная мне со «Связного» стажировка от 2х недель до 1 месяца, после чего тест и распределение на конкретное место. Эту систему я знал, за 2 недели изучив все необходимое, сдал тест и получил характеристику, которая идеально мне подходила. Это был билет в спокойный магазин, в не очень популярном ТЦ.
Сперва, все шло гладко, я познакомился со своими коллегами и администратором. Хорошо выполнял свою работу, даже умудрялся продавать больше остальных, успевал поддерживать порядок, развешивать ценники, в общем все то, что требовалось от продавца. Времени оставалось достаточно, чтобы читать книги и приводить в движение пункт номер 2. Но...
Помимо администратора, существует также оперативный менеджер, который приезжает на место, время от времени, чтобы простимулировать работникам простату. В общем, знакомство не задалось.
Это был спокойный, солнечный денек, торговая точка вымыта, ценники расставлены, склад убран, ноль посетителей, я читаю книгу. Заходит важного вида женщина, я кладу книгу, но тут начальник говорит, что это не покупатель и идет к ней сам. Ну я думаю «окей», и продолжаю свое чтение. При этом до меня начинает доноситься:
- «Вы почему все не встали, когда к вам посетитель зашел?»
- «Вы почему сидите за прилавком, вы должны стоять у входа и созывать людей.»
- «Анука быстро показывайте сколько продали товаров за сегодня.»
А затем я слышу цоканье в мою сторону:
- В пассивно-агресивной форме, она обращается ко мне: «Это что такое, книга?»
- Я смотрю задумчево ей в глаза, секунд 5 и отвечаю: «да»
- И тут она демонстрирует свои не заурядные способности в soft skills: «ты что, совсем что ли а***л?»
В общем выписала она мне штраф, поставила на карандаш. К моменту наступления данного конфликта, я уже успел выполнить значительную часть плана по товарообороту на месяц, заработать себе бонус, но естественно я ничего этого не увидел. В итоге мне выплатили в раза 3 меньше, чем полагалось и описывалось в зарплатных правилах. Пришлось писать заявление и уходить.
Ну что сказать, удачи бизнесам с такими менеджерами. Стоит упомянуть, что работников и тогда не хватало, а точка, через какое-то время, и вовсе закрылась.
Но останавливаться не стоит, всего 2 попытки. Просто я видимо выбрал не ту сферу. И действительно, через какое-то время я увидел объявление о работе в магазине спортивного питания. С учетом того, что у меня был опыт в тягании железок и я обладал неплохими, на тот момент, знаниями о сфере и разбирался в спортивном питании — это был идеальный вариант. Позвонил я по объявлению сразу же и на следующий же день я был на собеседовании.
Это была подвальная качалка, с небольшим, открытым закутком в углу на проходной, рядом с тренерской. Я сразу понял — это то, что нужно. Собеседование прошло успешно, мы договорились почти сразу. Более-того я предложил владельцу работать еще и по выходным, на что он, странно на меня посмотрев, согласился. С тех пор, на протяжении целого года, я работал там каждый день, с 10:00 до 20:00 по будням и с 9:00 до 18:00 по выходным. Что составляло 68 часов в неделю. Комфортные условия работы, нормальный для своего положения заработок, человеческое отношение, а самое главное, большую часть этого времени я посвящал пункту номер 2.
Пункт 2. Самообразование
Поняв, что мне требуется для успешного поступления в хороший ВУЗ на бюджет, я приступил к изучению материала. Упор я делал на 4 предмета: математика, физика, информатика и английский язык. Найдя учебники для 11 классов, по которым преподают в специализированных гимназиях (например, учебник по математике, гениального Колмогорова, с углубленным изучением статистики, дифференциальными уравнениями...). Я составил себе план на день: 10+- страниц в день, с самостоятельным решением задач, после изучения каждой темы. Такими темпами, учебники закончились очень быстро. Уже через полтора месяца.
Ручки и тетради отлетали как на печатном станке, у моих родителей до сих пор, на полках, стопки из 56 страничных, исписанных формулами и решениями задач тетрадями.
Быстро осознав, что я уперся в школьную программу, пошла тяжелая артиллерия. Я решил взять учебники ВУЗов:
- Мат-анализ: Фихтенгольц, Кудрявцев, Зорич.
- Физика: Фейнман, Савельев, Ландау и Лифшиц.
- Программирование: Страуструп, Кнут
- Английский язык: кино только в оригинале, статьи, общение с носителями языка.
Сказать, что я посягнул освоить недостижимую высоту в столь короткий строк, ничего не сказать. Но тем не менее, Фихтенгольца я прошел, часть Кудрявцева тоже, но Зорич — это уже иной уровень погружения в материал, там я осилил только половину первого тома. Фейнмана очень приятно читать, Савельев тоже хорош, но Ландау — это тот, к кому необходимо подходить с должным уважением, почетом и подготовкой, поэтому особых успехов, у меня с ним, не было. Также по мере изучения С++ и алгоритмов, не очень было понятно, как именно это применять и что с этим делать.
За полгода плотного изучения материала, начали подкрадываться мысли. Что возможно, все проще, чем кажется. Да было бы приятно быть ученым или около того, но существуют насущные проблемы, которые никуда не деваются. Ну и я наконец-то сложил дебит с кредитом и понял, что существующие, личные потребности, определенные обязательства и долги я не закрою, обучаясь в ВУЗе еще года 4-5. Общаясь со студентами и даже решая им некоторым лабораторные работы, стало совершенно ясно, план необходимо модернизировать.
Сидя в подвальной качалке, слушая альтернативу и рэп из колонок зала, смотря в разломанный по полам от неудачного падения, закрученного на саморезы, 10 дюймовый «нетбук», начинаю мыслить прагматично (Американская философия, впервые выдвинутая Уильямом Джеймсом в 19 веке, дающая критерий истины для жизненного целеполагания, ибо Гильотина Юма).
Смена курса
Прежде всего необходимо было проанализировать рынок труда. Начал ознакомляться с различными вакансиями и вариантами, которые на тот момент существовали на рынке. Нужны были ответы на следующие вопросы:
1. Где можно зарабатывать хорошо, при этом постоянно расти в IT?
2. На что делится IT или в какую отрасль оптимальный порог погружения, чтобы было реально освоиться за следующие полгода?
3. Определиться с конкретным стеком технологий, который необходимо будет освоить.
Любое исследование требует системный подход и изучения различных источников, на что у меня ушло от недели до двух: пролистывания вакансий, выписываний из них технологий, которые требуются. Читая статьи про то, где же в действительности и как именно используются те или иные технологии. Также погрузился в зарубежный рынок труда, внимательно изучил доступные фриланс биржи. Как итог получил следующие ответы:
1. Как писал в статье Войти в IT, заработок в среднем во всей сфере выше среднего и рост заработка тоже, зарплатные вилки очень широкие, то есть ответ: почти везде.
2. Web-development коммерческих сайтов, то есть разработка серверной + клиентской (то, что вы видите в браузере) части, она же full-stack разработка. Но тут двояко, на самом деле я бы мог выбрать более узкую специализацию сразу, но на тот момент казалось, что клиенту, особенно на фрилансе (а я хотел именно в долларовый фриланс, что в дальнейшем и сделал) нужны люди, которые способны делать продукт от и до.
3. Подавляюще большинство вакансий на тот момент, что у нас что на американской бирже труда «UpWork» на тот момент целились в стек PHP+JavaScript+SQL.
План №2
1. Работать дальше в магазине спортивного питания.
2. Изучить технологический стек, подготовить портфолио, овладеть английским языком на достаточном уровне.
3. Устроиться в офис на начальную позицию web разработчика, чтобы получить боевой опыт, с дедлайном в полгода.
4. Выйти на американскую биржу труда.
План №2
Пункт 2. Изучение и построение портфолио
Сперва было необходимо определиться, по каким критериям выбирать обучающие курсы и книги. Решил, что хорошими критериями будут:
1. Обилие хороших отзывов.
2. Желательно чтобы курс преподавался и ассоциировался с каким-то крупным ВУЗом.
3. Реальный, коммерческий, успешный опыт работы самого преподавателя.
Сделав небольшое исследование темы, выбрал для себя цикл из 4 курсов по PHP разработке и цикл из 4х курсов по JavaScript разработке. Также в обоих случаях, в том и другом курсе, поднимались темы верстки. По мимо этого активно читал статьи на эти темы, изучал полезные инструменты для поисков ответов, самый яркие примеры: «GitHub» где можно залезть в чей-нибудь «source code» и почитать, как другой человек что-либо написал, найти «open source» библиотеки и «StackOverflow» на который, в самом начале пути, придется заходить очень часто. Если очень хочется знать, какие курсы я выбрал, могу написать в ЛС.
Заходя немного в сторону, оказалось, что курсу по PHP, по мимо прикладной ценности также были нацелены на сдачу аккредитации у американской фирмы, которая поддерживает и развивает язык. Что я через какое-то время успешно и сделал, сдав экзамен. Но это уже совсем другая история, тогда я уже работал в бельгийской компании, через американскую биржу труда «UpWork».
Прохождение курсов у меня заняло около 3х месяцев постоянного труда. Тетради я уже не исписывал, писал код на своем нетбуке. На него же ставился apache сервер, рабочее окружение, интерпретаторы PHP и JavaScript, база данных MySQL.
Далее необходимо было сделать портфолио, было принято решение, писать все с нуля. Первая проба пера - сайт-новостная лента, с админкой для друга. Делал я его на протяжении недель 3х, потому что писал все сам, почти не используя какие-либо библиотеки и фрэймворки. Сайт не был комплексным, опытный разработчик бы построил такое за пару дней, потому что бы не стал пере изобретать велосипед. Это было больше, как упражнение.
Вот уже второй сайт был комплексным, это был интернет-магазин, серверную часть я писал самостоятельно, а именно реализовывал паттерн обработки запросов MVC, сверху подключая модуль работы с базой данных, который работал как репозиторий, также писал модуль аутентификации и авторизации пользователя и прочие необходимые вещи. Но для внешнего вида использовал библиотеки (JQuery, кто помнит, тот всплокнет) и фреймворки (bootstrap.css). На разработку ушло около месяца. Не забывайте, что я посвящал этому почти все свое время. В день я тратил по часов 7 на разработку, остальное, свободное время тратил на изучение английского языка. Если пересчитывать в человеко-часы, сайт делался примерно 210 часов, что на самом деле переводится в ~6 рабочих недель в офисе. Где 40 часов — это обычная рабочая недели. Пишу это, чтобы вы понимали, сколько реально необходимо тратить на это времени.
После того, как сайт был выложен в интернет (вот кстати его слепок из веб архива, жаль, что не смог найти код серверной части), я составил резюме и начал откликаться на вакансии.
Пункт 3. Вход в IT
Резюме я писал, понимая специфику. Уже тогда, 10 лет назад было засилье курсов «Как войти в IT и стать миллиардером за пару недель». Уже тогда было огромное количество выпускников подобных курсов, которые массово бомбардировали своими резюме компании. Эта тема далеко не нова, и тогда я уже прекрасно понимал насколько профессия не простая и как много людей надеются, что их точно возьмут только по факту завершения какого-то курса, поэтому спокойно действовал согласно своему плану.
Последнее препятствие — это найти более-менее нормальную компанию и пробиться в неё, обойдя, других кандидатов на начальную позицию.
Сперва нужно правильно составить резюме. Оно должно быть коротким, умещаться на одном листе, но при этом показывать ключевые достижения и опыт и отражать правильный технологический стек, такой-же или близкий к тому, который указан в вакансии. Нужно это для того, чтобы HR, который не разбирается в технологиях. Во-первых, не устал читать (если вы написали 10 страничный реферат, вместо 1-но страничного резюме, скорее всего оно окажется в помойке уже после того, как HR взглянет на объем, то есть даже читать не станет), потому что объем выпускников «Войти в IT курсов» очень большой, что прямо пропорционально количеству резюме на столе у HR-а. Во-вторых, чтобы увидеть, что вы способны кратко, лаконично, структурированно и по делу излагать свои мысли.
Далее, если вы все сделали правильно, вам позвонит HR и назначит с вами разговорную сессию. Нужно это для того, чтобы оценить ваши «soft skills», грубо говоря, насколько вы адекватный. Есть большое количество метрик у HR-ов, приведу несколько:
● Негативно отзываться о прошлой работе и коллегах — это огромный красный флаг. Даже если у вас была не приятная история на прошлом месте работы, никогда не прибегайте к оценочным суждениям и не говорите об этом если вас прямо не спросят. А если и спросили, говорите только конкретные, обезличенные факты.
● Не знаете, чего вы хотите, красный флаг, но по меньше. Это значит, что непонятно, как надолго вы задержитесь.
● Вы хотите того, что компания дать вам не в состоянии, не красный флаг, а просто попадание мимо.
● Ваши текущие навыки не соответствуют зарплатным ожиданиям.
● Ну и стандартный набор: мат, неопрятный внешний вид...
Почти 100% зададут вопрос: «почему меняете работу?». В моем случае я ответил, что люблю программировать, всегда мечтал начать карьеру именно в этой сфере, а вашу компанию выбрал, потому что увидел много положительных отзывов на сайтах X и Y. Что в общем-то правда, я не откликался на объявления компаний, которые казались мне сомнительными.
Далее следует техническое задание на дом либо тест, либо короткий технический скрининг. У меня был тест и техническое задание.
Тест был довольно простым, справился за процентов 30 от отведенного времени. В качестве технического задания мне дали жуткий legacy сайт, который было необходимо отладить, поправить пару багов, поменять кое-какие элементы и внедрить новый функционал. Ушло у меня на это примерно 3 дня = 21 час. Задание было не простое. Но справился я отлично и как мне сказали, очень быстро и качественно.
Далее идет техническое собеседование вживую, на котором надо писать код и отвечать на вопросы. Спрашивали нюансы работы с той или иной технологией, просили пописать на PHP и JS. На сколько я помню, я очень волновался, но тем не менее на подавляющую часть вопросов я дал развернутые и верные ответы и даже код, по памяти, без ошибок написал.
Дальше мне снова позвонил HR с предложением о работе, выкатили мне офер, как это называется в IT. На что я незамедлительно согласился. На следующий же день договорились с владельцем магазина спортивного питания, что я отрабатываю 2 недели и ухожу, чем он был расстроен, что естественно. Где еще найдешь робота (мое собственное суждение, я отдаю себе отчет, что это не очень здоровый график жизни и вам такое повторять не советую), который бы вот так вот работал, каждый день?
В общей сложности, чтобы попасть в IT, мне потребовалось полгода ~ 178 дней ~1200 часов изучения курсов и создания портфолио. И то я попал на самую начальную позицию, только окунул немного свою ногу в воду, а это еще ничего не значит, мало подняться на гору, надо еще на ней закрепиться.
Пункт 4. Зелень расцвела
Сперва напишу голые цифры. В магазине спортивного питания я работал 68 часов в неделю, средняя зарплата была, примерно 30 тысяч рублей в месяц. Что значит, что час моей работы стоил примерно 100 рублей. Теперь я был гордым, офисным junior web разработчиком. Рабочая неделя ровнялась 40 часам в неделю, зарплата в среднем 35 тысяч рублей. Соответственно час моей работы уже стоил примерно 200 рублей. По факту я стал зарабатывать в 2 раза больше. А если бы я находился в Москве или в Санкт-Петербурге, оплата была бы еще выше, примерно на 50%. Да, до ковида, регионы были значительно обделены доступов к IT рынку.
Сама компания, в которую я устроился, занималась тем, что искала заказчиков в Москве и Санкт-Петербурге и аутсорсила рабочий труд в регионы. То есть ко мне с коллегами. Соответственно большая часть дохода резалась, а самые передовые компании, где можно было бы спокойно расти в высь, находились почти исключительно в Москве и Санкт-Петербурге, переехать туда я не мог, по личным причинам. Поэтому и был в моем плане, пункт номер 4.
Но не смотря на все вышеперечисленное, я был очень рад новому месту работы и началу чего-то нового. Сидеть на 9-ом этаже бизнес-центра, смотреть на виды из окна... Первые несколько месяцев — это была сказка. Наконец-то время появилось на занятия в тренажерном зале и, в общем и целом, на то, чтобы чуть выдохнуть. Но останавливаться было рано.
Необходимо было сделать анализ рынка труда и технологий, которые сейчас находятся на подъеме. Выбрать еще один стек и начать изучать. Да, да, опять.
Добро пожаловать в мир IT.
Проанализировав рынок труда на «UpWork», я сделал для себя вывод, что в мире PHP+JS, есть 2 привлекательные для меня технологии. «Angular.js» и «Laravel» фреймворки, на которые я начал активно наседать, строя новое портфолио. Параллельно с этим продолжая изучать английский язык и работая в реальных условиях, на реальных заказах.
Работа над реальными проектами оказалась неоднозначной, в то время, когда я пытался сделать свой код структурированным, оптимизированным, красивым и безопасным, в проектах клиентов я видел просто кромешный ад и ужас. Иногда было даже страшно: "что же происходило у человека в голове, когда он писал подобное?", спрашивал я себя. Вот мои посты на Говнокоде с тех годов, ох, оставь надежду всяк сюда входящий. И это только верхушка айсберга, я бы мог туда каждый день что-то такое постить. Код, который крутится в продакшене, порой вызывает древний, хтонический ужас, который невозможно унять. Но тем не менее, это научило меня многому, дало мне понимание того, что я конкурентоспособен.
Примерно через месяца 4, я опробовал новые технологии и создал новый сайт с демонстрацией того, что я умею этими технологиями пользоваться. Английский уже был более-менее приемлемым. Начал планомерно оформлять свою страницу на «UpWork». Начал связываться с потенциальными заказчиками моих услуг. После месяца попыток, у меня на руках были только предложения от индусов за 5 баксов в час, на что я не был готов пойти. Потому решил проанализировать свои ошибки и найти возможности для роста и попытаться еще раз, чуть позже.
Улучшил свой английский, переписал свой профиль, переписал резюме, лучше понял, как именно работает платформа. Улучшил свое понимание в технологическом плане, особенно касаемо баз данных. На все про все ушло еще несколько месяцев, да и на текущем месте работы я уже откровенно стагнировал. Пора было делать новый рывок.
На этот раз я внимательно отнёсся к выбору компаний, тщательно изучая описание каждой, я прикладывал к сопроводительному письму свои идеи, чтобы я сделал и как я бы спроектировал их систему, углублялся в нюансы и тонкости для конкретной реализации. Как итог у меня было несколько прямых собеседований и пара оферов, по 10 долларов в час. Доллар тогда, в среднем стоил 60 рублей, это значило, что моя заработная плата утроилась в один миг. Пока я отрабатывал 2 недели на текущем месте работы, я параллельно уже работал на новом месте.
Начальник на текущем месте работы также был не очень рад моему уходу, что было ясно из факта того, что за 9 месяцев моей работы в компании, из примерно 20 человек, которые приходили на техническое собеседование приняли, насколько я помню 2-х. Ну и я делал свою работу качественно и с опережением плана, стабильно перевыполняя свой KPI. Также я думаю стоит упомянуть, что много кто ушел с того места работы и у всех (по крайней мере с теми, с кем я лично поддерживал контакт) сложилась успешная карьера. Несколько примеров: один товарищ сейчас живет в Германии. Девушка, после увольнения устроилась в большую американскую фирму. Мой сосед по рабочему месту и друг устроился в один из крупнейших электронных магазинов в Москве. Пишу это, чтобы снова показать, что в IT сложно да, особенно в начале, но IT открывает огромные перспективы.
Помню, как переживали родители, мол: «что ты делаешь, стабильность, офис». Но когда я принес домой, после 2х недель работы, котлету из 5-ти тысячных купюр, все вопросы отпали сами собой. Далее на «UpWork» я проработал больше 6 лет. Но это уже тема для отдельной статьи, а скорее всего цикла статей.
Я выбрал офер бельгийской компании, уже через 3 месяца работы на которую, мне полностью оплатили поездку в Брюгге, в 5-ти звездочный отель, на рабочую встречу и увеселительные мероприятия.
Вот это уже можно было считать настоящим входом в IT. Если начинать отчет с момента, когда я целенаправленно начал изучать курсы, и момента, когда я «залетел в IT на 100к» прошло, примерно месяцев 15 планомерной, дисциплинированной, каждодневной работы.
Послесловие
Наверно статья не то, чтобы об IT получилась. А о том, что на любом пути всегда будут трудности, и что многие трудности можно решить. У подавляющего большинства проблем есть решение и зачастую не одно. Порой нужно просто осмотреться по сторонам, поставить перед собой цель и начать к ней идти. Планомерно и настойчиво.