Александр Колинченко
41 уровень
Москва

My success story

Статья из группы Истории успеха
  1. Привет всем, пишу с первого рабочего места (точнее с места первой оплачиваемой стажировки как junior java-developer'а) пока не начался рабочий день.
  2. My success story - 1
  3. Мне 39 (!), начал программить как хобби, пока был перерыв в работе, какие-то деньги, уход за родившимся недавно дитем, переезд назад, к семье, в Москву и еще пара моментов. До этого работал финансистом, много участвовал во внедрениях учетных систем на разных 1Сах.

  4. Сначала попробовал ковырять программирование сам, да еще и начать с Котлина (очень понравились как сам язык, так те, кто его разрабатывает - JetBrains). Но быстро, за неделю наверно, понял, что без java в котлине нечего делать, да и нужен какой-то курс, самому копать очень неэффективно. Нашел, уже не помню как, JavaRush, зарегился на нем 30-го июня (посмотрел сейчас по почте). Уже 5 июля купил подписку (за эти 5 дней прошел первые 10 уровней, по два уровня за день). Прошел за 3, по-моему, месяца 25 или чуть больше уровней (полностью, ковыряя подробно, какую-то небольшую часть решений скачивая, но обязательно подробно разбираясь, правда).

    Сильный кайф помню был, когда сделал наконец парсинг математических выражений. Это задание было большим скачком, некоторым прорывом в осознании себя, как программера.


  5. Я выбрал проходить сначала коллекшнс, а потом уже конкарренси часть. Посмотрел по содержанию, решил, что интереснее и полезнее разбираться с коллекциями. Еще 10 уровней (до 35-го где-то) проходил, по-моему, месяца два.

  6. Где-то посередине конкарренси стало понятно, что дальше добивать уже почти бессмысленно. Стало интереснее разбирать проблемы в разделе help (мне это было полезно - учился разбирать чужой код и структурировал свои знания), чем делать упражнения. Тогда поставил себе цель сделать веб-проект на спринге + гибернейте + майэскуэле + каком-то движке шаблонов (в итоге делал на Thymeleaf). Остальные уровни открыл чисто чтобы открыть самые вкусные задачи.

    Была бы в этот момент стажировка - было бы вообще супер, но для той, которая в тот момент шла, было уже поздно, а для следующей слишком рано.


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

  8. После того, как я в общем-то сделал с нуля веб-сервис (о том, что в нем не было прикручено авторизации, менеджера транзакций, нормальных тестов веб-части и т.д., промолчим), стало понятно, что надо выставлять резюме и искать работу джуна. К этому моменту я стал понимать, что мне очень нравится программирование и что программеры реально нужны. Тогда (в середине января, после праздников) я написал наконец короткое резюме на английском, полностью убрав предыдущий опыт (оставил только краткое описание одним абзацем) и выставил на НН.

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

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

  11. Интересно, что на 3-х собеседованиях (включая текущее место) практически не было технического интервью - смотрели чисто по-человечески, что я из себя представляю, хотя я был хорошо готов, конечно. Особенно запомнилась компания, которая пригласила меня исключительно потому, что мне больше 35 лет. Очень своеобразная атмосфера у них. Когда я спросил их старшего по разработке (сильно старше меня, реальный олдскул), какими IDE они пользуются (Intellij или Эклипс там,есть какая-то политика в этой части), он даже не понял сначала, потом ответил "А, текстовый редактор… Да я ими не пользуюсь, я так код пишу. А ты можешь хоть что использовать, без проблем". И он точно не шутил. Я, мягко говоря, был удивлен.

  12. Через пару недель я получил звонок от Сбертеха (именно по первому собеседованию, у них там море департаментов, каждый набирает сам) с предложением работать за ок. 1.1 тыс. долларов на руки в мес с учетом годового бонуса. Я сказал ок, они начали оформлять оффер. Этот процесс у них занимает приличное время, я все равно смотрел другие работы. В этот момент попалось объявление на джавараше о наборе стажеров в группу компаний Смарт. Я написал, что хотел бы пообщаться, мало ли, практически тут же пошел на собеседование. Тим лид практически не задавал вопросов по технической части (правда я сам достаточно адекватно, без булшита, описал свой уровень) и сказал, что готов меня попробовать на оплачиваемой стажировке. Я согласился, потому что Сбертех меня немного напрягал (понятно, что я бы пошел и туда, если бы не было альтернатив), плюс мне понравилась и атмосфера и тимлид плюс их офис находится в 7 минутах ходьбы от места, где мы снимаем квартиру. Мне понадобилось еще пара с лишним недель, чтобы организовать уход за дитем, и реально вышел на работу я 28-го февраля.

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

  14. Советы начинающим:

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

    • Херачить. У меня во время обучения было правило - ни дня без строчки кода. А стандартно я тратил несколько часов в день на программирование. К сожалению (а может и нет), не читал никаких книг. Зато пересмотрел много видео-тьюториалов и выступлений с конференций + перечитал реально море ответов на stackoverflow.

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

    • Обязательно сделать пару десятков упражнений на sqlex.ru (это по эскуэлю, соответственно). Это очень просто после пары десятков уровней на JavaRush, но при этом дико полезно как по программированию бэкэнда, так и по собеседованиям.

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

    • Обязательно разобраться и добавить в этот проект обработку транзакций не просто на уровне "добавить к методу в сервисе @Transactional". Тема про транзакции была постоянно на собеседованиях. Я жалею, что не раскопал sqlex.ru и транзакции спринга и хибернейта до поиска работы. Человек, который в теме транзакций, будет разговаривать с собеседующими на позицию с бэкэндом намного, намного лучше.

    • У кого какие вопросы-проблемы - пишите, обязательно постараюсь помочь, чем могу. Особенно кто делает свой первый проект на Спринге. Кто в Москве - с удовольствием встречусь.

Комментарии (3)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
Zhanir Ex Уровень 15
28 мая 2021
Спасибо! Опыт будет полезен для меня.
Galina Уровень 26
27 декабря 2018
Спасибо! Полезный текст, есть несколько важных для меня моментов.
Денис Уровень 24
26 декабря 2018
Классная история, спасибо что поделились.