Junior разработчик в 32 года. Испытательный срок пройден!

Год назад я работал инженером ПТО со свободным графиком, то есть самостоятельно искал заказчиков и на сдельной основе выполнял работы. Чаще всего это была подготовка исполнительной документации для сдачи выполненных строительно-монтажных работ заказчику. За 10 лет работы я откровенно устал от неповоротливости системы, бюрократии и кумовства в строительной сфере. Рутина, кидающие на деньги подрядчики, не желающие принимать идеально подготовленные документы заказчики и непокидающее ощущение, что результат моей работы в скором времени отправится в архив, а через N лет будет служить средством розжига камина — всё это давило на меня с каждым годом все сильнее, но по какой-то неведомой причине я продолжал всем этим заниматься (не зря же я учился 5 лет в университете). По меркам города у меня был приличный доход, но когда закрываются базовые потребности, начинаешь задумываться о том, а почему бы не заняться тем, что действительно интересно, ведь работе мы посвящаем существенную часть своей жизни.

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

Не все осилят мою эмоциональную простыню, поэтому очень кратко остановлюсь на основных этапах, которые пришлось преодолеть.

Обучение, курсы

Я не приобретал дорогостоящие курсы, которые обещают из бревна сделать разработчика за 3 месяца с гарантией трудоустройства. Я отдал предпочтение бесплатным материалам на YouTube, недорогим курсам на площадках Юдеми и Степик и бесплатным площадкам по тренировке алгоритмов (codesignal). Абсолютно все есть в бесплатном доступе. Я не мог себе позволить вестись на рекламу и платить 100к+ за то, что мне продают надежду на красивую и беззаботную жизнь программиста. Учиться гуглить, анализировать информацию и выбирать наиболее рациональные решения я начал ещё на этапе выбора подхода к обучению.

Процесс обучения с нуля до трудоустройства занял у меня 7,5 месяцев. В процессе обучения я не работал, жил на подушку и посвящал учебе 35 часов в неделю. Изначально я закладывал год на обучение, но видимо так сошлись звезды, что получилось относительно быстро "заскочить в IT", хотя без жертв не обошлось, но об этом немного ниже.

Ментор

Если дорогостоящие курсы можно обойти стороной и абсолютно ничего не потерять (и даже сэкономить), то вот найти человека, который будет направлять вас в процессе обучения и давать обратную связь — это нехилый такой буст. Мне повезло, я нашел человека, который умел и хотел менторить новичков. Если открыть Пикабу, то даже тут есть посты с предложениями бесплатно обучать новичков, правда реально заинтересованных и занимающихся — единицы. Не всем хватает мотивации, особенно когда дело доходит до изучения материала и до просмотра количества технологий, необходимых для трудоустройства. Вот пример roadmap для бэкендера.

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

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

Первая работа

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

Я сделал около 700(мать их!) откликов на вакансии, получил всего 4 приглашения на собеседования и прошел успешно только одно. Так как мне не приходилось выбирать, я ухватился за этот оффер, как за шанс приобрести хоть какой-нибудь опыт коммерческой разработки. Но условия были так себе:

  • Зарплата 45000 на руки

  • Поддержка legacy проекта на Java EE

  • Работа в офисе, которая подразумевала мой переезд с семьей в другой город

Вся моя работа сводилась к тому, чтобы удалять из базы данных некорректные данные при помощи SQL-запросов. Ни одной строчки кода я так и не написал. Посоветовавшись с ментором, принял решение продолжить откликаться на вакансии и проходить собеседования.

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

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

Первые впечатления от работы разработчиком

В общей сложности я работаю уже четвертый месяц, а конкретно в текущей компании только на днях успешно перешагнул испытательный срок. Я попал в крутой и дружелюбный коллектив. Средний возраст коллег: 25-35 лет. Есть более опытные разработчики, у которых можно многому поучиться. Самозванцем себя не ощущаю, так как справляюсь со всеми задачами, которые мне дают. Бывают моменты, когда что-то долго не получается, но после решения проблемы наступает чувство удовлетворения и гордости за себя.

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

В отличие от большинства других профессий, прелесть разработки в том, что в процессе повседневной работы можно быстро расти как профессионал и повышать свою стоимость на рынке труда, причем не ограничиваясь только своей страной. Условно говоря: зарплаты Junior и Senior разработчика могут отличаться в 20 раз, в то время как зарплаты начинающего инженера и ведущего инженера в строительной сфере будут отличаться всего в 2-3 раза, да и работу в другой стране на сопоставимую должность найти в разы труднее.

Выпускники курсов за 100к+

Ни на первой, ни на второй работе я не видел тех, кто закончил курсы Гик/Скилл/Брейнс/Бокс и теперь работает разработчиком. В основной массе программисты — это люди, которые ещё в школе определились с выбором, получили профильное IT-образование и вот теперь работают по специальности. Но я знаю нескольких самоучек, которые в сознательном возрасте (35+) решили уйти в разработку и у них это получилось. Всех их объединяет неподдельный интерес к программированию, к решению логических задачек и вот всему этому делу.

Так что мне искренне интересно узнать: где же тысячи выпускников, которые окончили курсы стоимостью по 100к+?

У меня есть ощущение, что на одних только ожиданиях высокой зарплаты и возможности удаленной работы почти невозможно пройти путь от полного нуля до полноценного и трудоустроенного разработчика. Учитывая тот факт, что на джуновские вакансии по 1000-1500 откликов, нужно иметь охренеть какое упорство, чтобы достигнуть цели. Но если процесс обучения захватывает, работающий код приносит удовольствие, то становление программистом — вопрос только времени, упорства и дисциплины. И этому есть огромное количество примеров, в том числе и мой.

P.S. Мелкие заметки делаю в телеге (https://t.me/lovecodebro), на Пикабу публикую редко и только лонгриды.

Вы смотрите срез комментариев. Показать все
9
Автор поста оценил этот комментарий

Подскажите пожалуйста, где можно поискать ментора, который подскажет нубу, с чего всё таки начать? Давно вынашиваю идею заняться обучением. Даже начинал. Но, глаза разбегаются и я впадаю в дикое отчаяние, если что-то не получается. Хотя когда что-то получается, то я в восторге. Но, чем дальше начинаешь продвигаться по ютуб урокам, тем больше новой информации и осознание того, что я тупой валенок

раскрыть ветку (33)
22
Автор поста оценил этот комментарий

Кстати, если хотите в ит, то будьте готовы к тому, что ощущение дикого отчаяния и разбегающихся глаз с вами на долгие годы)) и что с новыми грейдами, записями в трудовой и умножением зарплаты ощущение того, что "я тупой валенок" может никуда не деться, а то и будет увеличиваться)) так это работает

раскрыть ветку (11)
1
Автор поста оценил этот комментарий

С этим можно смириться, я думаю, если я хоть что-то начну понимать. Ибо из моей попытки - на единицу знания приходилось 100 единиц непонимания из-за новой информации)

раскрыть ветку (10)
7
Автор поста оценил этот комментарий

Если ты досконально знаешь как сделать что-то в программировании ты уже практически сделал эту работу. Если ты повторяешь свои же работы раз за разом - значит ты работаешь плохо, ведь всё что повторяется нужно заложить в комп и путь работает само. В итоге ты 90% времени проводишь решая задачи, которые ты не умеешь решать.
Я в программировании в своей сфере собрал почти все ачивки, моя должность выше senior. Я каждый день туплю об новые непонятные задачи. Работа такая

раскрыть ветку (9)
1
Автор поста оценил этот комментарий

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

раскрыть ветку (8)
4
Автор поста оценил этот комментарий

Я так понял идешь во фронтенд. Для начала надо практиковаться сходу, прям с первого дня. Теорию без практики забудешь по-любому. Фронтендеру для начала неплохо бы научиться верстать. Для этого вбиваешь на ютубчике "верстка сайта для новичков". Если глаза разбегаются от выбора, моя рекомендация - "верстка сайта для самых маленьких", канал "от 0 до 1". Включаешь это видео и повторяешь все, что он делает. Если этот процесс займет неделю  по несколько часов в день, ничего страшного, для начинающего это приемлемо. Таким образом верстаешь по видеоурокам 3-5 макетов, попутно все неясные моменты уточняя в гугле. Например говорит мужик с ютуба - прописываем элементу position: relative; и молча его прописывает, ничего не объясняя. Задаешь себе вопрос - знаю я, что такое position:relative, и если нет - ставишь видео на паузу и выясняешь, что это такое. Выяснил - погнали далее. Скоро почувствуешь, что можешь уже и сам что-то сверстать попробовать. Ищешь где-нибудь какой-нибудь макет и пробуешь уже сам сверстать, попутно решая возникшие затруднения в гугле. Это самое главное - искать в гугле ответы на вопросы. Если у тебя что-то не получается в верстке, то 100 процентов это не получалось у кого-то до тебя, и 99,9 процентов на то, что этот вопрос давным-давно решен и его решение описано множество раз и разными способами. Остается только это решение найти, в 99,9 процентах случаев это решение находится в первых двух-трех ссылках, выдаваемых гуглом в ответ на твой вопрос. Короче забыл я уже с чего начал, спать пойду

раскрыть ветку (3)
Автор поста оценил этот комментарий

Огромное спасибо, это пожалуй самый исчерпывающий ответ. Миллион плюсов этому господину)

раскрыть ветку (2)
1
Автор поста оценил этот комментарий

Вообще, я руководствовался идеей - какие советы я бы дал себе начинающему с высоты какого-никакого опыта. Поэтому интересно, помогут ли тебе мои рекомендации

раскрыть ветку (1)
Автор поста оценил этот комментарий

Сейчас самое главное, заставить себя с начала начать изучение того немногого, что я узнал) и не бросить снова, если что-то не будет получаться. Сложно начинать, когда тебе 30+ (хотя это вообще не причина) и мозги на работе одеревенели

4
Автор поста оценил этот комментарий

Работодателю вообще не интересны теги, хуеги. Сделай рабочий сайт, потом второй, третий. Чтобы каждый следующий был красивее и функциональнее первого.
Если ты напишешь 10 строк кода и отдашь их посмотреть шибко умному программисту, он найдет в коде сто ошибок и потешит ЧСВ об тебя.
Если ты напишешь программу в которой 10 тысяч строк кода, которая работает и достигает результата - тебя примут на работу.

Умение делать так как надо важное, но более важное умение это вообще  умение делать, поначалу криво, потом чуть менее криво.
Код линукса, изначально созданный профессионалами, переписывался полностью в среднем 15 раз.

раскрыть ветку (2)
1
Автор поста оценил этот комментарий

А вот это очень интересное мнение, без сарказма. Оно на личном опыте основано, вы работаете в данной сфере?

раскрыть ветку (1)
6
Автор поста оценил этот комментарий

Я не работаю во фронденде (каюсь, был грех, джуном провёл несколько месяцев в 2017м и сбежал)

Про то сколько раз переписывались популярные программы читал на хабре давно, сейчас не найду статью. Там многие переписаны 10+ раз.

Про мышление работодателей это на опыте.
Кроме того джуна в возрасте хоть и будут проверять на всё подряд, начиная от математики в алгоритмах перестановки до типовых настроек популярных CMS. Но принимать на работу будут того кому дать задачу и он сделает.
Это студенты технических ВУЗов имеют шанс на чистых алгоритмах и знаниях ядра языка попасть в какой-нибудь Яндекс на стажировку за шаурму, где их еше год-два-три будут интенсивно доучивать специально под себя.
У человека с жизненным опытом такого шанса уже нет, скидку на молодость не дадут. А значит будут смотреть на то как делаешь дела, а не насколько идеально знаешь теорию

DELETED
Автор поста оценил этот комментарий

div для блочных элементов, span для строчных, чего еще надо-то (ну и в начале документа служебные теги)

8
Автор поста оценил этот комментарий
Если нужен ментор по бэкенд части, то оставлю контакт своего ментора

https://t.me/zhukovsd_it_mentor
раскрыть ветку (16)
Автор поста оценил этот комментарий

А можешь скинуть тех задания своих pet проектов в начале обучения? хочу попробовать

раскрыть ветку (2)
раскрыть ветку (1)
Автор поста оценил этот комментарий

Оперативно, спасибо)

Автор поста оценил этот комментарий

К сожалению, интересен frontend

раскрыть ветку (12)
1
Автор поста оценил этот комментарий
А какие конкретно вопросы? Ментором быть наверное не готов, но пару советов дать могу
раскрыть ветку (10)
2
Автор поста оценил этот комментарий

С чего вообще начинать и как продвигаться в обучении. Прошёл несколько уроков, офигел от количества информации и понял, что нужна какая то структура, как в школе. То есть начинаем с того то, потом делаем то-то и вот мы уже готовы к кр предмету. Потому что иначе полнейшая деморализация и непонимание, что делать.

раскрыть ветку (5)
4
Автор поста оценил этот комментарий

Привет. Найди в ютубе Антона Назарова. У него есть таблица менторов по многим языка как платные так и бесплатные.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Спасибо, посмотрю)

2
Автор поста оценил этот комментарий
По JS я бы посоветовал Complete JavaScript course, там прям по полочкам с нуля до написания приложения
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Спасибо, я обязательно посмотрю

1
Автор поста оценил этот комментарий

Для фронтенда вам нужно прежде всего разобраться, что делает браузер, как работает HTTP, что такое документ, событие, граф элементов. Тогда все "теги" и скрипты встанут на свое место.

Автор поста оценил этот комментарий

1) Что дожен знать каждый фронтенд разработчик (HTTP, как работает интернет и т.д.)? Где об этом почитать, посмотреть?
2) Какие есть хорошие обучающие материалы по JS?
3) Какие есть хорошие обучающие материалы по Vue?
4) Какой проект сделать, чтобы работодатель только взглянув на него сразу же дал тебе оффер?
5) Может можете дать советы о том как правильно учиться и искать работу фронтендером?

P.S. желательно чтобы обучающие материалы были на русском т.к. в английском не силен

Заранее благодарен

раскрыть ветку (3)
3
Автор поста оценил этот комментарий
1. Каждый фронтенд разработчик должен знать html, css, js, хотя бы один фреймворк. Это минимум. Как работает интернет конечно тоже знать не помешает, но вряд ли это сильно пригодится. Вообще по фронтенду есть роадмапы, но новичку наверное лучше их не смотреть, можно напугаться)
2. По JS, как уже говорил, Complete JavaScript course, но он на английском, хотя там английский очень простой, и дикция у автора хорошая. Из русскоязычного - ютуб каналы Владилена Минина, Ulbi TV.
3. По Вью на этих же каналах много полезного. Правда у Минина старые видео по Вью 2 и vuex, но в принципе можно смотреть. У Ulbi не так много видео, и возможно не для новичка.
4. Таких проектов не бывает. Минус всех пет проектов в том, что ты сам решаешь что делать, а что нет. И если ты что-то не можешь реализовать - ты просто выкидываешь это из проекта и всё. Или у тебя есть какое-то сложные штуки в проекте, но ты убил на их внедрение неприлично много времени. Поэтому проекты это хорошо, но работодатель всегда либо даст тестовое, либо плотно побеседует с тобой. И чтобы справиться, ты не должен плавать в теме. Я устроился вообще с двумя смешными пет проектами, но бодро прошел собес, и хорошо сделал тестовое.
5. Практика каждый день. Добавиться во все профильные чаты в телеге и задавать вопросы. Конечно, сначала гуглить, и только потом обращаться за помощью. Начать смотреть видео на ютубе, потом в рекомендациях тебе кучу материала навалят, выберешь авторов, которые понравятся. Читать learn.javascript.ru. О работе пока не думать, особенно о больших деньгах.
Главное заниматься каждый день, чем больше, тем лучше, и всё получится
раскрыть ветку (2)
Автор поста оценил этот комментарий

А какие pet проекты можно сделать, чтобы и работодателю они были интересны (вряд ли to do подойдет) и чтобы ты на 1-2 проектах попрактиковал все темы, которые понадобятся на работе?

раскрыть ветку (1)
Автор поста оценил этот комментарий
Туду вообще никому показывать не стоит, это чисто для себя.
Чтобы действительно впечатлить работодателя, нужно сделать что-то реально мощное. Например найти дизайн сайта какого-нибудь бара, запилить сайт с разделом Меню, сделать админку, через которую это меню будет редактироваться. Заюзать какой-нибудь firebase и получится полноценный продукт. В качестве бонуса можно написать приложение для управления баром, например нарисовать схему бара со столами, и по клику на стол можно его открыть, добавить в текущий чек напитки, еду и т.д. из того же меню, которое у нас в firebase лежит, управлять бронированием, сохранять историю заказов, вести статистику. Короче на что фантазии хватит
Автор поста оценил этот комментарий
Если нужен ментор по бэкенд
К сожалению, интересен frontend

прям эротика - если представить, что договариваются куда, хм... короче прикольно

3
Автор поста оценил этот комментарий

В IT нужны две вещи: систематическое мышление и английский язык. И то, и то - навык, а не что-то врождённое.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Он систематически мыслил. Ушел в IT

Автор поста оценил этот комментарий

Можете поискать на Авито по отзывам. К сожалению ментор, действующий разработчик, и стоить будет дорого

Автор поста оценил этот комментарий

Осознание себя тупым валенком не пройдет теперь никогда, привыкай.
Чем больше ты продвигаешься в изучении, тем больше видишь сколько ты не знаешь.

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку