Войти в IT в 27 лет. Что получилось за 4 года

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

4 года назад я решила уйти из маркетинга и начать работать фронтенд-разработчиком. Расскажу о том, как искала первую работу, как жила на 30 тысяч в Москве, как обучалась, как устроилась фронтом в Prequel и что сделала бы иначе, окажись в той же ситуации. Также всем желающим могу рассказать, как выровнять блок по вертикали))

Если подумываешь о переходе в разработку или хочешь поностальгировать по своим славным джуниорским временам, то велкам)


Как все начиналось

В далеком 2007 году я заканчивала экономический факультет Тверского университета, у нас был курс информатики на семестр, где 3-4 занятия были посвящены html и css. Преподаватель объяснила основы табличной верстки, без адаптива, на уровне “Цвет текста можно поменять вот так, а картинку вставить вот так”. Далее в голодные студенческие годы я начала заниматься фотографией и для поиска клиентов сделала свой первый сайт на Joomla. Отсутствие способностей к дизайну, несколько лекций по табличной верстке и случайно купленная книжка с маркетинговым названием “Как сделать сайт, продвинуть его и начать зарабатывать” дали свой ужасающий по стилю, но вполне работающий результат.

Вычитанные в этой книге советы по SEO сработали, удалось продвинуться по некоторым средне- и низкочастотным запросам, например, “деловая фотосессия”, помогло еще и то, что я жила в городе на 400 тысяч человек с умеренной конкуренцией в фотографии. Однако после универа и переезда в Москву заниматься фотографией стало сложнее – отработать полную неделю в Москве, а на выходных встать в 5 утра на съемку свадьбы было тяжеловато физически. В одну из суббот, отсняв армянскую свадьбу на 200 человек, я осознала, что с фото пора завязывать.

Дальше была попытка работать по специальности, однако я снова пришла к SEO и 2,5 года отработала в агентстве SEO-шником, но со временем меня перестало устраивать, что в оптимизации сложно отследить точное влияние своих действий на результат. Одновременно вокруг росло количество курсов, обещающих, что ты станешь Senior Java Developer за 2 недели (нет) и друзей-программистов, обещающих 150к уже через полгода (нет, нет, нет).

Я самоуверенно решила, что верстку и так знаю, купила книгу по JavaScript и начала читать и делать упражнения. Дополнительно посмотрела пару уроков на Youtube “Как сделать сайт за 2 часа”, повторила за авторами, получила несколько лендингов. Через пару месяцев отправилась на поиски работы, сайтики с видео-уроков представила как свое портфолио, но не скрывала, что сделаны по обучающим видосам.

Поиск работы без опыта

На тот момент я уже жила в Москве, 2018 год, вакансий на джуниор фронтов на хедхантере было достаточно, и я вышла на охоту. На собеседования меня звали охотно, благо я указала в резюме и верстку, и Бутстрап, и начальное знание JS.

Трех собеседований с отказами мне хватило для того, чтобы понять, что верстку все-таки придется освоить нормально. Мне задавали вопросы по флексам, по адаптиву, просили написать обработчик на кнопку, открывающий модалку, и я откровенно плавала. Для самооценки приятного было мало, однако мои интервьюеры были очень деликатными ребятами, и подробно объясняли мне ответы на свои вопросы.

Я снизила планку, и начала ходить на собеседования на верстальщика, на одном из них меня посадили за комп, сказали сверстать форму, сделать ее отправку на почту и нарисовать баннер. Компании нужен был и верстальщик, и php-разработчик, и дизайнер. Я предупредила, что ни к дизайну, ни к php отношения не имею, но мне сказали “Нарисуй и напиши хоть что-нибудь”. Как ни странно, туда меня и взяли на 30 тысяч.

Там был жесткий график, выговоры за опоздание с обеда на 3-4 минуты, не было гита, верстать было почему-то принято не в редакторе кода, а сразу админке, но мне было не с чем сравнить, я приходила в восторг, когда видела свой код на проде (это было несложно, потому что работали мы сразу на проде, тестовых стендов не было). Но мне категорически не хватало 30 тысяч. После короткого испытательного я попросила прибавку, руководство ответило, что повышение возможно, если я смогу повысить продажи, и я снова отправилась на хедхантер спустя три месяца работы.

На удивление работу я нашла с первого или второго собеседования. Скорее всего, сказалось то, что для начинающего даже три месяца опыта – это срок, за который происходит значительный для уровня новичка скачок, много успеваешь попробовать и узнать. Также сказались мои невысокие хотелки по зп – 40 на испытательном и 50 после него вполне вписывались в мои желания, а гибкий график с началом дня с 9 до 11 и бесплатные обеды от компании вообще были сказкой) так я устроилась верстальщиком в агентство.

Из приколов на одном собеседовании в ходе нетехнических вопросов про мое дальнейшее видение карьеры меня резко спросили, сколько будет три разделить на восемь. В такие моменты чувствуешь, как у тебя в голове образуется звенящая пустота на полминуты)) Так же были задачки типа написать метод, вычисляющий квадратный корень, без использования встроенных методов и прочие синтетические вещи.

Огромный плюс в том, что 95% собеседований можно было проходить удаленно, не теряя времени на дорогу. Если дело шло к офферу, я спрашивала, можно ли приехать посмотреть офис. Один раз это оказалось очень не зря, я уже была готова принять оффер, но офис компании оказался двумя комнатами в коворкинге без окон и без возможности иметь постоянное рабочее место.

Набор опыта

В агентстве, куда я устроилась, велась разработка на Битриксе, нам приходили макеты, мы верстали и отдавали программистам натягивать верстку на Битрикс и писать логику. Первые полгода каждый день был открытием, особенно когда требовалось править баги в чужой верстке. Подключить и настроить слайдер, вставить Яндекс карту не фреймом – все было в новинку. 

Из плюсов агентства – успеваешь набраться опыта даже за короткий срок. Я отработала там полтора года, и чего только не было – и клиент, желающий сайт под IE9, и дизайнер клиента, обожающий PixelPerfect, и баги от тестировщика в формате “Если истерично кликать мышкой более 10 раз по этой кнопке, то модалка закроется на 11-м клике, плавающий баг, но надо исправить” (реальный баг). Такого разнообразия, как агентстве, не было нигде – с утра надо оценить, как долго будешь делать анимацию svg на 6 тысяч элементов на скролл, далее срочно идешь разбираться с задачей “Клиент хотел изменить шрифт, у него пропала корзина в мобилке, продажи стоят”, а после обеда наконец приступаешь к основной задаче на день. Однако работа на 85-90% состояла из верстки, а JS оставался на уровне кастомизации готовых библиотек и простого кода на JQuery. Мне нравилась верстка, но хотелось попробовать и что-то более сложное.

Я выбрала курсы, классический курс по JS на 2 месяца с еженедельными лекциями и работой с наставником. Результатом курса должен был стать сайт-приложение с планером путешествий на чистом JS. Первые 3 лекции зашли на ура, но дальше объем кода вырос, я стала наталкиваться на свою же плохую архитектуру, костылить, путаться и тд. Наставник отвечал на вопросы подробно, но в основном общими фразами, скорее всего, ему не очень хотелось каждую неделю заново погружаться в тот хаос, который пытался написать каждый из его студентов и вспоминать, у кого что лежит в переменной list, и в переменной block))

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

В общем, я окончательно закопалась в коде и продуктовых вопросах, и бросила этот курс где-то на 60%, тем более, что к тому времени у меня стало появляться все больше проектов на фрилансе, которым я занималась по вечерам после основной работы.

Фриланс

Мой первый заказ на фрилансе случился, когда я едва знала верстку, требовалось сверстать 5 форм на 5-6 полей каждая. Заказчик сам работал фронтом, искал кого-нибудь в помощь. По деньгам он попросил меня оценить задачу самостоятельно. В ответ на мое скромное "2 тысячи" сказал "Ну и цены у вас, давайте за косарь". Для меня это было "Ооооо, мой первый фриланс!", конечно, я согласилась. 

Далее я 5 дней шарашила эти формочки. Оказалось, что "валидация форм" – это не только прописать атрибут required в верстке, а уж когда я столкнулась с тем, что плейсхолдер должен не исчезать при вводе, а уменьшаться и плавно отъезжать вверх, оставаясь подсказкой – это была задачка века. Потом выяснилось, что нужно запретить пользователям вводить буквы в поле телефона. Неожиданно, правда?)) 

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

Дальше я набрала опыта, посидела на сайтах фрилансеров. Получать заказы без опыта и рейтинга помогало первое сообщение формата “Добрый день, могу сделать заказ в такие-то сроки, также обратила внимание, что слайдер на главной странице у вас не работает в Internet Explorer, могу пофиксить это и заодно убрать проблему в адаптиве у карточки товаров”. Конверсия в заказы была небольшая, но была. После 2-3 выполненных работ для одного заказчика иногда уходила с биржи на личное общение, заказчик не хотел тратить деньги на комиссию бирже. Мне повезло, ни разу не кидали с деньгами. Обычно договаривалась примерно на 1200-1400 за верстку страницы на 4-5 блоков без хедера и футера.

Далее меня стали активно рекомендовать знакомые и у меня появились постоянные заказы сначала на верстку, а потом и на разработку на фрилансе. Оплачивались не очень значительно, но их было много, а мне было в кайф – после работы я приходила домой и могла до полуночи или до часу ночи заниматься фрилансом. Если это была простая верстка, я занималась ей под сериальчик, если компоненты и логика на Vue – то под сериальчик уже не получалось, зато это были дополнительные стимулы для развития. 

Основную работу и фриланс я совмещала, наверное, года 2-2,5. На данный момент я не беру заказов на фриланс, фокусируюсь на работе в Prequel и небольшом самостоятельном обучении.

Обучение


Мои способы в порядке уменьшения полезности:

  1. Коммерческая разработка. Для меня нет ничего более эффективного, чем боевой опыт в реальной команде и желательно оффлайн. Никакие курсы и пет-проекты не дадут понимания, как все работает на самом деле, как взаимодействовать с несколькими фронтами на одном проекте, как синхронизироваться с бекендом и т.д. Единственный недостаток – сложность с поиском работы без опыта. Ну и нервно бывает, особенно первое время) Однажды я сменила работу в первый день большого карантина 2020 года, и несколько первых месяцев работала только онлайн. Так мне было гораздо сложнее вливаться в проекты. Сейчас стараюсь выбирать гибридный график.

  2. Видео на ютубе. Неожиданно, но для меня смотреть видео формата “Как сделать лендинг за 2,5 часа” или “Пишем за 4 часа приложение на Vue3” оказались довольно эффективными при условии, что я не просто смотрела, но и повторяла за автором. Когда на 15-ой минуте трехчасового видео у автора все отлично работает, а у меня падает сборка, это неприятно и очень полезно – ищешь ошибки, сравниваешь свой код с кодом автора, гуглишь. Основная польза – узнаешь про технологии, про которые сам бы не догадался погуглить.

  3. Курсы. Несмотря на мой не самый удачный опыт обучения на курсах, я очень рекомендую этот способ, как один из самых системных. Если человек на начальных этапах обучения, то адекватные курсы – топ. Там дадут ту самую систематизацию, которую очень сложно наработать отрывочными знаниями из статей и отдельных видосов. По продолжительности, 2-3 месяца с занятиями в пару раз в неделю, мне кажется, оптимально. 6-9 месяцев многовато для новичка, можно 10 раз перегореть. Также я пробовала преподавать на курсах, была наставником на 9-недельном курсе по основам верстки, провела несколько курсов, у меня было 9 студентов. Этот опыт оказался очень ценным, позволил столкнуться с проблемами, с которыми я никогда сама бы не столкнулась. Однажды мне нужно было помочь своей студентке решить конфликты в гите, она умудрилась создать эти конфликты в svg-картинках, работая одна в своем репозитории. Сложность была не в решении конфликтов, а в том, что это нужно было объяснить человеку, который познакомился с гитом 2 дня назад. Ушла из наставников после третьего курса из-за очень низкой оплаты – 600 рублей в час, при этом оплачивалось только 5 часов. Все остальное взаимодействие со студентом велось бесплатно, либо можно было отказать студенту в помощи. А 5 часов на 9 недель это очень мало, первое время я помогала бесплатно, но потом решила завязать с курсами, а жаль, преподавать мне очень нравилось.

  4. Онлайн-тренажеры. В целом, могут посоперничать с курсами по эффективности, но бьют в разные цели. Если курсы работают на системность, то тренажеры наоборот позволяют получить и потренировать точечные знания. Для меня оптимальны тренажеры, где дается страничка теории и далее упражнение на нее. Сталкивалась как с максимальным разжевыванием и упражнениями формата “напишите метод, возвращающий палиндром строки”, так и с упражнениями на 2 часа на одну задачу, причем и то, и то на одном и том же ресурсе. Но и то, и то полезно.

  5. Книги. Если делать упражнения из книг, то эффект будет, однако язык развивается очень быстро, и информация может быть слегка устаревшей.

  6. Конференции. Для такого интроверта как я понятия “нетворкинг” не существует, ну и для обучения конференции не слишком эффективны – часть докладов состоит на 95% из воды и фраз “Мы повысили конверсию в 500 раз, но как мы этого добились рассказать не можем – NDA”. Однако ходить на оффлайн конференции интересно, иногда попадаются классные доклады, вкусный кофе, ну и нельзя недооценивать возможность небрежно упомянуть о прошедшей конфе на очередном созвоне с коллегами. Иногда конференции в Москве проводятся в офисах крупных компаний, и присутствующие получают возможность увидеть офис Яндекса, Озона, Газпромбанка и т.д. В общем, конференции очень рекомендую, несмотря на низкий обучающий эффект. Жаль, что сейчас они в большинстве переехали в онлайн.

С конференциями у меня был опыт  с другой стороны – однажды руководитель предложил мне самой выступить от лица компании на конференции. Ездила в другой город, выступала перед студентами, и для меня это был очень приятный, волнующий и интересный опыт. Такое я бы повторила и в будущем.

За пределами списка напишу про обучающие игры типа CodeCombat, потому что это отдельная история) игрок движется по карте, решая небольшие задачки, в которых персонажу нужно сортировать массив орков, убивая в первую очередь самого сильного, фильтровать песчаных яков и т.д. Для обучения может быть эффективно только для новичков, но поиграться забавно, если у вас есть лишнее время. Будьте готовы к соответствующим вопросам от начальства, если кто-то увидит открытый  CodeCombat на вашем рабочем компьютере)

В целом, чего я только не пробовала для обучения, иногда оно начинало буксовать без видимых причин. Для текущих работ и фрилансов знаний хватало, новое вроде бы было интересно, я пыталась вникать, но развитие шло медленно.

Стереотипы

С каким-то притеснением по половому признаку я не сталкивалась практически никогда, максимум шутки и вопросы на собеседованиях “А как вы относитесь к мату и шуткам 18+?”, на который сложно сдержаться и не ответить в тон)

Насчет отношения именно к фронту как к сфере деятельности видела где-то в комментах:

  • Да фронты только и делают, что формочки верстают

  • Ну так и про бек можно сказать, что вы только и делаете, что туда-сюда json-ы на лопате носите

Такие шуточки не редкость, но наверняка с подобными сталкиваются и php разработчики, и 1с-ники, мне такое не кажется обидным.

Яндекс

В начале 2021 года на Хедхантере мне написали ребята из Яндекса, пригласили на первое собеседование, предупредили, что мне предстоит 1,5 часа лайфкодинга и решения задач. На подготовку у меня было 7 дней, и меня неожиданно пробило на изучение. Я гуглила “Вопросы на собеседованиях Middle frontend разработчик” и разбиралась с теми, на которые не могла ответить – нормально читала теорию и дальше отправлялась на CodeWars решать задачки на эту тему. Я учила дома, учила на работе, учила в электричке по дороге в гости к родителям. У меня наконец-то резко выросла мотивация разобраться с контекстом, лексическим окружением и макротасками, в Яндекс очень хотелось.

В итоге с Яндексом не сложилось – и я не дотянула по техническим знаниям, и в процессе общения с сотрудниками компании открылась пара моментов, которые меня не совсем устраивали.

Однако процесс пошел, новые знания закрыли белые пятна и легли на имеющиеся знания и опыт, и эффект сразу же появился на следующих собеседованиях. Оказалось, что не только вопросы повторяются, но и задачки для лайфкодинга весьма похожи, а даже если не похожи, то 50 решенных задач на алгоритмы, методы работы с массивами, промисы и ООП все равно дают переход от “Этого я не знаю, никогда с этим не работала” до “О, точный ответ я не знаю, но работала с аналогичным, можно сделать вот так, а еще работала с похожим функционалом, и там подобные задачи решались тем-то”.

Каждый 3-4 собес начал заканчиваться оффером, что было весьма приятно.

Prequel

Вакансию Prequel я нашла на HH, почитала про компанию, про сферу деятельности – обработка фото и видео, вспомнила свои студенческие подработки в сфере фотографии и установила себе приложение Prequel. Ребята искали фронта на Vue, я подходила по требованиям, откликнулась, со мной связались и назначили техническое собеседование в тот же день. Собес с моим будущим руководителем Сергеем начался с фразы “Привет, давай поговорим как фронт с фронтом”, и мы погнали по вопросам. Техническое собеседование длилось минут 40, прошли по теории, я порешала задачи по чистому JS, также была задача на исправление компонента Vue. Уже через час после окончания собеседования вернулся HR с положительным ответом, и мы договорились о собеседовании с CTO через день.

На втором собеседовании ребята рассказывали про процессы, про график, про предоставляемое оборудование, про оформление в белую. Там же я узнала о прикольной возможности поехать на пару недель в Калининград, где у Prequel тоже есть офис, и поработать оттуда. На следующий день после созвона с CTO я получила оффер, взяла время на подумать и договорилась о визите в офис.

Посещение пришлось как раз на переезд, ребята только-только переехали и осваивали новый офис в Москве на Библиотеке Ленина. Меня встретила офис-менеджер София, показала рабочее пространство, диванчики, переговорки, кухню, рассказала про йогурты от компании в холодильнике (на этом месте я поняла, что надо соглашаться на оффер))).

Так я устроилась в Prequel.

Результаты

Мой классический грейд джун-миддл-сеньор назвать сложно, потому что понимание этих грейдов в разных компаниях различается кардинально. Была компания, где я прошла собеседование и устроилась миддлом фронтом, но в обязанности входила в основном верстка, просто не было задач по фронту. После этого я пришла джуном в другую фирму, но на большие деньги и задачи были уже именно на js и vue.js.

Расскажу по деньгам – мой максимальный оффер за все время поисков был на 185 к грязными, но с той компанией не сложилось по другим условиям работы, требовалось посещение офиса 5 дней в неделю. И этот оффер был не в первый и не во второй год работы – курсы врут про 150 к через три месяца)

Сейчас я работаю в Prequel, и очень рада тому, что я здесь. У меня гибридный график с возможность работать как из дома, так и из нового офиса в центре Москвы, и действительно классные задачи. Я нашла свой баланс в плане сложности – 65-70% задач мне знакомы, и я занималась аналогичными раньше, а с остальными сохраняется эффект – с утра не представляла, что такое, например, протобафы, а к вечеру уже научилась ими пользоваться. Аналогично – есть проекты на знакомом и привычном Vue 2, но есть и на Vue 3, с которым раньше я сталкивалась только в учебных целях.


Что я сделала бы иначе
В целом оставила бы все как есть) Может, скорректировала только следующие моменты:

  1. Если бы была возможность найти хорошего ментора и общаться с ним пару раз в неделю, так бы и сделала. Это бы избавило меня от попыток изучать бутстрап, не понимая, как работают медиа-запросы в стилях, и от скомканного изучения JS на начальных этапах, когда и основы, и прототипы, и контекст – все в кучу.

  2. Выучила бы теорию не перед собеседованием в Яндекс, а еще 2 года назад. Мне всегда казалось, что нормально глубоко разобраться с теорией – это годы. Скорее всего, это и правда так, но при этом закрыть свои основные белые пятна – хватило недели усиленных занятий.

  3. Больше бы ходила по собеседованиям – вопросы на них очень сильно повторяются. Например, в 2021 году редкий собес обходился без вопросов про отличия var и let и про известные мне способы работы с массивами. Если после собеседований тратить 10-15 минут на изучение каждого момента, на который не смогла ответить, то на следующем собеседовании на него будет готов хороший ответ. Сразу скажу, что этот способ – это скорее читерство, чем изучение JS. Но я считаю коммерческую разработку в реальной компании лучшим способом прокачки своих навыков, плюс этот способ – это скорее шлифовка и закрывание белых пятен, чем возможность получить хороший оффер с нулем знаний – если просто заучить ответы на большинство вопросов, то спалят на любом дополнительном или перефразированном вопросе.

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

Источник: https://habr.com/ru/company/prequel/blog/666136/


Интересные статьи

Интересные статьи

Для индустрии разработки программного обеспечения и для программистов 2020 год стал значительным годом больших прорывов во многих областях. Пандемия значительно ускорила перевод самых раз...
Всем привет! Давно читаю Хабр и руки чесались тоже написать чего-нибудь. Так получилось, что повод появился только когда я начал искать новую работу. Вдохновил меня на эт...
Маркетплейс – это сервис от 1С-Битрикс, который позволяет разработчикам делиться своими решениями с широкой аудиторией, состоящей из клиентов и других разработчиков.
Как стать DevOps инженером за полгода или даже быстрее. Часть 1. Введение Как стать DevOps инженером за полгода или даже быстрее. Часть 2. Конфигурирование Как стать DevOps инженер...
Если посмотреть на нашу подборку важных новостей за 2018 год, то может возникнуть ощущение, что в уходящем 2019 году ничего не поменялось. Аппаратные уязвимости по-прежнему выглядят многообещающе...