История успеха: как стать из маркетолога разработчиком
Есть работодатели, которым важен диплом, а есть те, кто смотрит на конкретные навыки и желание учиться. Отсутствие диплома не помешало Максиму Донике три года работать маркетологом. А когда он пошёл на курс Яндекс Практикума «Веб-разработчик», то смог устроиться фронтендером ещё до того, как окончил учёбу.
Столяр, предприниматель и менеджер без диплома
Я из Магнитогорска. Город небольшой, поэтому и выбор, где учиться после школы, был такой же: либо идти в металлурги, либо в гуманитарии. Я решил поступать на рекламу, но ушёл с четвёртого курса. Я понял, что никаких практических знаний там не дают, особенно по интернет-рекламе, которая мне была интересна. Просто перестал ходить на пары, даже аттестат не забрал.
У отца и брата золотые руки, я многому у них научился. Полтора года я подрабатывал столяркой. Вместе с братом делали парные комнаты в банях и саунах с отделкой деревом, красивыми полками и абажурами. Параллельно я ещё работал в Макдональдсе.
В 2016 году мы с друзьями из Магнитогорска организовали доход, который не требовал нашего постоянного участия. Мы разработали бота, который автоматически торгует скинами для игр Dota2 и Counter-Strike: Global Offensive. Мы нашли разработчика ботов, который реализовывал наши идеи. Таких программ в то время было очень мало, поэтому удавалось зарабатывать приличные деньги в фоновом режиме.
Скины — это косметическая штука, которая меняет внешний вид игровых предметов, например оружия или одежды. Многие игроки хотят, чтобы они были не дефолтными, а особенными — со своим рисунком, цветом и эффектом. Скины можно достать на специальных торговых площадках, где люди выставляют их на продажу. Обычно продажа проходит в формате аукциона или напрямую, а ещё можно получить случайный скин из чёрного ящика.
Денег от продаж скинов хватало на комфортную жизнь в течение двух с половиной лет. Вместе с друзьями мы переехали в Москву, чтобы сменить обстановку и посмотреть столицу. Прожили вместе всё лето, а потом кто-то вернулся домой, кто-то уехал в Питер. А я влюбился в Москву и остался. С тех пор пару раз в год возвращаюсь в Магнитогорск в гости к родным.
В 2017 году по знакомству я попал в маркетинговое агентство, которое занималось криптопроектами. Я стал баунти-менеджером (от англ. «bounty» — награда) — придумывал активности в соцсетях, которыми люди могут поделиться и получить за это токены. Так агентство привлекало пользователей для различных компаний.
Маркетолог без шляпы
Когда один из менеджеров решил открыть своё агентство, чтобы продвигать компании в интернете без криптовалюты и всей этой шляпы, он предложил мне быть на подхвате. Я без колебаний согласился.
Владимир несколько лет жил в США, и у него были большой опыт и база собственных клиентов, а главное — он знал язык и менталитет. Я отвечал за техническую часть — сверстать сайт или посадочную страницу, настроить рекламу, а он за стратегическую — планирование рекламных кампаний, общение с клиентами, финансы.
Наше агентство было загружено всегда. В основном это были зарубежные проекты, потому что в России дёшево заказывать рекламу.
Программист без системы
Я счастливо проработал с Владимиром три года. Именно тогда я понял, что нельзя заниматься просто настройкой рекламных кампаний. Нужно разбираться в веб-аналитике и хотя бы на любительском уровне освоить программирование: где, какие скрипты повесить, как сверстать письмо в HTML, как применять CSS.
Незаметно я стал всё сильнее втягиваться в Java Script: в свободное время читал, изучал технологии, но бессистемно, скорее как хобби. Мне были интересны отдельные вещи, например, как работает веб-сервер, что такое callback или структура DOM-дерева. Просто находил тему и погружался. У меня была отдельная папка в браузере с закладками по темам, которые я изучал.
Я регулярно смотрел и слушал что-нибудь про IT. Из тех, что особенно нравились — канал на ютубе про IT и фриланс Жеки Андриканича, а ещё подкаст про IT и всё, что с ним связано «Подлодка».
Эта работа помогла мне выучить английский практически в бою, потому что задачи приходили на английском. Мне надо было писать тексты для презентаций, а многие инструменты не были русифицированы. Постепенно читать, писать и слушать становилось всё легче. Единственное, что говорить я так и не научился — практики не было.
Английский — основной язык в разработке. Если знаешь его, то можешь читать документацию в первоисточнике и впитывать знания о технологиях именно так, как они были задуманы создателями. И это важно для формулирования запроса, если поиск на русском не принёс результатов. Да и к тому же информации на английском по теме в разы больше, чем на русском.
Снова студент
В мае 2021 года Владимир сказал, что устал и больше не вывозит. Объём работ был большой, но за три года мы так и не нашли менеджера, который бы помогал с его частью работы. Он заплатил мне из расчёта, чтобы я мог какое-то время спокойно искать новое место, и на этом мы попрощались добрыми друзьями.
Я понял, что этот момент — шанс заняться тем, что мне интересно в жизни. Маркетинг — всё-таки эфемерная штука. Маркетолог создаёт пользу для бизнеса, которую никогда не сможет пощупать руками. Это абстрактные цифры, статистика, при этом ещё и довольно рандомная: ты можешь составить сколь угодно крутую гипотезу, а рынок щёлкнет по носу, и она не сработает. Придётся начинать сначала. Хотелось научиться создавать что-то измеримое, настоящее, красивое. Я уже кое-как умел верстать, и мне это было интересно.
И всё-таки я раздумывал — вдруг совершаю ошибку. Но повезло, что меня поддерживала моя девушка с самого начала и до конца: помогала с выбором курсов и утешала, когда было тяжело в учёбе. Если я сомневался в себе, то она — нет.
Выбор курсов
Перед тем, как пойти учиться в Яндекс Практикум, я рассматривал несколько других вариантов. С одной из школ я даже договорился посмотреть учебный материал на один день, чтобы познакомиться и принять решение. Но это была такая скука: записанные когда-то лекции, пустые чаты. С таким раскладом я мог и сам всё это посмотреть на Ютубе. В другой школе было слишком много самостоятельного обучения, не было наставничества. А я всё-таки новичок — для меня это было важно.
Всё решилось, когда я прошёл бесплатную часть курса по веб-разработке на Яндекс Практикуме и сразу понял, что надо брать весь курс. На момент поступления работы у меня не было, поэтому я полностью посвятил всё своё время обучению.
Учёба в Яндекс Практикуме
Сначала была вёрстка в HTML и CSS. Я уже что-то умел, поэтому эти темы были не такими сложными. Однажды к нам пришла куратор и предложила поучаствовать в соревнованиях по вёрстке: ищете себе напарника, пишете код и потом сдаёте. Нужно было сделать простой сайт-визитку для вымышленного разработчика. Мне стало интересно, я решил попробовать, нашёл напарника, и мы вместе сделали сайт. В результате заняли третье место, всего было где-то 10 команд. Эпизод совсем небольшой, но, как потом окажется, участвовал я не зря.
Когда начался спринт с Java Script, тут была уже настоящая терра инкогнита. Хотя в описании курса было заявлено 10–15 часов в неделю, это явно было слишком усреднённо. Да, иногда выходило на каком-то спринте и 3–4 часа, хотя на некоторые приходилось тратить по 25–30 часов в неделю. Но, когда интересно и есть много свободного времени, то шанса облажаться нет. Сам курс хорошо продуман: есть тренажёр, чек-лист, есть сообщество, наставник, ревьюер, спринты с дедлайнами.
Дедлайн наступал каждые две недели — это очень стимулирует. Открываю спринт и испытываю давящую неопределённость — справлюсь или нет. Поэтому хотелось сразу всё сделать, иначе в конце второй недели буду сильнее переживать из-за дедлайна.
Ещё важно было уметь формулировать вопросы — это очень помогает. Ты обязан сначала сделать всё, что можешь сам, а потом сформулировать проблему в двух-трёх сообщениях. Вообще помощь другим — это очень мощный двигатель. Я это понял сразу: так гораздо лучше разбираться в теме. Сначала прошёл сам, а потом ещё раз с кем-то. Разные люди — разные точки реализации.
В целом с учёбой я справлялся достаточно быстро. Обычно двухнедельный спринт у меня проходил так:
- день или два на теорию,
- три–четыре дня на практику,
- оставшиеся дни я старался помогать другим студентам.
Во время учёбы я всегда что-то читал, смотрел и слушал про разработку:
- учебник по Javascript,
- книга Дэвида Флэнагана «JavaScript: полное руководство»,
- всю серию книг Kyle Simpson ”You Don’t Know JS”,
- телеграм-канал React_js,
- канал на ютубе Тимура Ульби.
И немного про деньги. Регулярно откладывать часть денег с дохода — для меня обычное дело, чтобы всегда была подушка безопасности. После того, как агентство распалось, нас с Владимиром пару раз просили помочь с рекламой. Это дало возможность продержаться, пока я учился и не работал. Хоть и на жизнь в переходный период ушла прорва денег, но это того стоило, ведь стать разработчиком было моей мечтой.
Соискатель без диплома
За четыре месяца до окончания курса начался спринт по трудоустройству. Нас учили составлять резюме, проходить собеседования, писать сопроводительные письма, искать подходящие вакансии и рекрутеров.
До учёбы у меня было только резюме маркетолога, и казалось, что оно составлено неплохо. Но я не знал, что резюме должно составляться конкретно под вакансию. Резюме разработчика я собрал уже совсем по другой системе.
Очень помогла репетиция интервью. Надо было на видео записать ответы на вопросы. Пульс подскочил до 180, хотя на видео не было видно. На реальном собеседовании я уже был поспокойнее.
Так получилось, что когда мы с сокурсниками выложили резюме в открытый доступ — на Хабр, HH и Гитхаб, одной моей сокурснице почти сразу предложили работу мидл-разработчиком. У меня, по-честному, тут же пригорело, и я стал активно искать вакансии.
Не попал
Хоть я и активно откликался, но не там, где нужно. С Хабра и НН на 20 откликов пришло всего три ответа, из них только один человеческий, а остальные — автоматические.
В Практикуме говорят, что очень важно использовать все ресурсы: заходить на сайт компании, в которую хочешь попасть, искать вакансии там. Или с помощью соцсетей: находишь тимлида по поиску и пишешь в личку, а вдруг у них ищут. Это гораздо сложнее, но только тогда есть шанс на успех.
В феврале я всё-таки попал на первое собеседование: наставник скинула вакансию нам в чат. Московская компания искала фронтендера в помощь техдиректору. Мне казалось, что это работа мечты. Я откликнулся, отправил резюме — пригласили на собеседование. Волновался страшно.
Накануне перечитал всё, что мог, а на тестовом задании дали простую задачу: написать кнопку, инкремент. Тогда по учёбе мы перешли на React, а я уже не писал на чистом JS. В итоге я не смог выполнить задание: до того пережёг себя волнением, что даже погуглить не помогло. И я решил попросить подсказку у техдира, только с ней смог решить задачу. На дальнейшие вопросы я ответил — про промисы, асинхронные и синхронные функции. Через неделю мне написали — и отказали.
Интересный момент: это собеседование случилось в первую неделю предпоследнего спринта. Я приступил к учёбе не сразу, а только через несколько дней, после того, как сделал ещё один личный проект и неудачно прошёл собеседование. И как я удивился и расстроился, когда открыл теорию и увидел, что там разбиралась тема про замыкания в функциях и примером была именно та примитивная программа-инкремент, которую меня просили написать на интервью. Если бы я, как обычно, приступил к спринту в первый день, я бы точно дошёл до этой темы и вспомнил бы все нюансы, которые успели забыться.
Попал
В Яндекс Практикуме говорили, что один из эффективных способов найти работу — спросить у знакомых. У меня знакомых в разработке не было, спрашивать было не у кого. Но буквально через неделю после неудачного собеседования ко мне в друзья добавилась моя знакомая, которая работала HR-специалистом в том первом, баунти-агентстве. Спросила, как дела, и я сказал, что ищу работу. Оказалось, что им в SAAS-компанию нужен разработчик. Она попросила прислать резюме. Моё резюме из Практикума сработало сразу, и меня пригласили на собеседование.
Старший фронтенд-разработчик очень быстро расположил меня к себе. Я почувствовал себя уверенно, как будто разговариваю со знакомым. Даже если были сложные вопросы и я затруднялся, он спокойно всё разжевывал, и было видно, что он во мне заинтересован. Удивительно, но ему из всего моего резюме понравился мой сайт Киану, а не более сложные проекты. Вообще он был приятно удивлён, как за 10 месяцев можно так натаскать. Меня взяли.
Фронтендер
Я ещё не дошёл до дипломного проекта, а уже нашёл работу. Хотя у меня ощущение, что это всё ещё часть учёбы — настолько бесшовный переход. Всё, что мы проходим в Практикуме, тут же пригождается.
Я работаю в компании Quick Resto, она занимается автоматизацией ресторанного бизнеса: чтобы в программе был и склад, и учёт работников, и доставка, и меню, и техкарты, но более гибко, чем в 1С.
В компании есть несколько команд разработчиков — все под разные продукты. Конкретно у моей команды — программа, которой может воспользоваться ресторан-клиент Quick Resto, чтобы сгенерировать себе сайт-витрину из тех данных, которые уже есть в системе.
В работе использую стек React, TypeScript и mobx-state-tree. Есть несколько необходимых инструментов, которые я не знаю: Typescript и MobХ. Но это не пугает, просто нужно ещё поучиться.
Я благодарю Бога и Вселенную, что мне написала моя знакомая и на собеседовании был именно тот разработчик. Он суперэмпатичный и знает, как мне тяжело, поэтому даёт мне соответствующие задачи. Это сложно, но я наоборот, вдохновляюсь тем, что он на меня не давит.
Интересное совпадение: у компании есть офис в Москве, есть люди в Питере, но она сама — из Магнитогорска, и директор оттуда. Круг замкнулся.
Мои наблюдения по итогам поиска работы
- Работа по знакомству — это не случайность. Да, бывает, везёт, но здесь очень многое зависит от самого человека. Рекомендации по знакомству могут сработать, если ты действительно подходишь.
- Очень много зависит от того, кто проводит интервью. Между моим первым неудачным собеседованием и удачным вторым прошло не больше 10 дней. Я объективно не мог выучить ничего нового — знания те же. Задача как для начинающего фронтендера была примерно одинаковая. Единственная переменная — это интервьюер.
- Не стоит заранее накручивать себя и бояться. Синдром самозванца может всё испортить. Когда уверенность падает ниже плинтуса, становится сложно решить даже простую задачу.
- Чего-то не знать — не страшно. Должно быть просто интересно, отсюда и желание научиться. И потом, в IT-сфере всё очень быстро меняется. Сейчас ты выучил фреймворк, а через год он может оказаться ненужным.
Три совета тем, кто думает, пойти учиться или нет
- Вводный курс показывает то, что ждёт в платной части. Если всё понравилось здесь, понравится и там.
- Нужно быть готовым потратить время и изменить свои привычки ради того, чтобы поменять жизнь. К прежней жизни вы уже не вернётесь.
- Когда есть опасения, что самое интересное останется за бортом в течение всех 10 месяцев и что от многого придётся отказаться, попробуйте отнестись к этому по-другому: это вы с жизнью мчитесь друг другу навстречу. Кто бы меня взял на работу, если бы я не потратил время на учёбу.
GitLab — это комплексное решение для управления репозиториями Git, которое позволяет разработчикам эффективно сотрудничать, управлять кодом, автоматизировать процессы развертывания и следить за состоянием проектов. GitLab объединяет в себе инструмен...
Python-разработчики — это специалисты, которые используют язык программирования Python для разработки программного обеспечения, включая веб-приложения, системы автоматизации и проекты в области машинного обучения. Язык Python популярен благодаря про...
В мире, где технологии развиваются быстрее, чем новые слова появляются в слэнге подростков, выбор правильного курса программирования для вашего ребенка может стать настоящим испытанием. Сегодня мы погрузимся в лабиринты кода и алгоритмов, чтобы помо...
В этой статье мы расскажем о разных программах для программирования, какие из них подойдут новичкам и что предпочитают профи. Редактор кода Это специальная программа для написания и редактирования кода компьютерных программ. Она обычно предлаг...
Системный администратор — это важный специалист в любой организации, который следит за тем, чтобы компьютеры и сети работали без сбоев. В этой статье мы расскажем, кто такие системные администраторы, какие задачи они выполняют, какие навыки им нужны...
Сейчас почти каждый из нас всегда носит с собой смартфон. А кто делает все эти приложения, которыми мы пользуемся каждый день? Это мобильные разработчики. В этой статье мы расскажем о том, кто они такие и что делают. Вы узнаете, какие умения нужны,...