Как я наконец-то попал в профессию
Всем добрый день! Меня зовут Николай, мне 24 года, и я уже почти пол-года работаю в крупном банке на позиции инженера.
Мысли стать программистом у меня появились ещё со школы, но они, как и у большинства, были слабо оформлены. Я поступил в довольно-таки слабенький для программистов ВУЗ на "прикладную информатику в информационной сфере", и всё ждал, когда же из нас сделают конкурентоспособных разработчиков. Наш поток был последним в специалитете, так что учились мы пять лет. В середине четвёртого курса стало ясно, что чуда не произойдёт.
Ещё на третьем курсе один мой знакомый рассказал мне про java, сказал, это очень здорово. Но до пятого курса я этой информацией не пользовался. На первом семестре пятого курса я появлялся в универе раза три, полностью не выседев ни одной пары. С начала сентября по середину ноября дни я проводил в библиотеке Достоевского с ноутбуком и томиком Шилдта. Поскольку учиться программировать я тогда ещё не умел (а это тот ещё скилл, между прочим, и его тоже нужно нарабатывать), я просто читал Шилдта и локально воспроизводил примеры из книжки. Толку от этого было чуть менее чем нисколько.
Где-то в середине ноября 2014 года я пошёл на курсы g**J***J*b. Уверен, многие о них слышали. Тогда у меня не получилось их пройти, потому что была сессия (учитывая мою посещаемость, было много боли и страданий) и диплом. Но на следующий же день после защиты диплома я поехал и заключил договор на новую попытку. Говорить я об этих курсах много не хочу, скажу только, что не всем подходит подобный формат обучения. Мне не подошёл. Я был на тот момент единственным за всю пока что небольшую историю проекта человеком, который не просто не сдал промежуточный экзамен, а даже не был к нему допущен ввиду тотально неправильно выполненных заданий. Я потратил на это 9 месяцев, так и не сумев пройти дальше. Проблема была и в том, что за нами никто не следил и не помогал (и не проверял, что самое главное), и в том, что сам я с трудом могу систематически подолгу заниматься (как теперь выясняется, всё-таки могу). Но самая большая проблема была в том, что если у меня в голове было некое понятие относительно того, как что-то нужно сделать, в книги я уже не лез. А надо бы. Когда вы учитесь, любое ваше решение нужно сверять с книгами или старшими товарищами. Причём именно с книгами, а не с онлайн-статьями. Нас же интересуют фундаментальные знания, а не прикладные трюки.
И вот, когда 8го марта меня отчислили (предложили всё-всё переделать, но я решил, что ждать следующего потока ещё 7-8 месяцев я не буду), мне пришлось всё начать с нуля. Снова. Тогда, за неимением альтернатив, я пошёл на JavaRush. За пять месяцев я дошёл до 30го уровня, когда уже можно подавать заявку на стажировку, чем и воспользовался. Пара слов о JavaRush: это, пожалуй, самый грамотный и сжатый курс программирования на Java, о котором я знаю. Я совсем уж новичком себя не считал, но JavaRush помог хорошо систематизировать мои знания и заполнить пробелы. Если не филонить и читать и делать всё рекомендованное, в целом к 30-му уровню вы будете готовы если не к работе, то к тому, чтобы показать себя на интервью слегка недоученным, но в целом неглупым человеком с отличной базой, которого можно доучить уже в боевых условиях. Приблизительно это мне и сказали, когда я первый раз пришёл в теперь уже мой родной банк, будучи на 24м уровне)) Дико боялся, не хотел идти, но мой друг меня буквально вынудил съездить и проверить, на что я вообще гожусь. Гоняли меня тогда 2 часа периодически сменяясь пять специалистов. В тот раз меня не взяли на работу, потому что им нужен был уже доученный специалист, но в целом впечатление я о себе оставил неплохое. Так как это было моё первое собеседование, я был горд собой просто до ужаса))
На JavaRush я рекомендую делать всё, не пропуская ничего ВООБЩЕ. Если затык, сложность, не хватает топлива — списывайте. Они рекомендуют задавать вопросы на форуме, не смотреть в ответы, но моё ИМХО — списывайте. Но не тупо списывайте, а смотрите, как сделал умный дядя, и пытайтесь повторить. В крайнем случае — перепечатывайте. Никакого копипаста, иначе не запомните и не поймёте.
Перед стажировкой JavaRush мне дали тестовое задание. В целом оно довольно элементарное, если у тебя есть хотя бы начальное понятие об используемых технологиях, в противном случае это блин просто тема для докторской, потому что нормальных материалов по спрингу и хибернейту для новичков в сети НЕТ. То есть они есть, но, когда ты новичок, ты не понимаешь, что тебе нужно именно то, что ты находишь. Видеогайды в этих ваших ютубах тоже страшенные как моя жизнь до джавы. Бородатые дяди два с половиной часа делают синхрофазотрон из таких штук, которые даже гуглить страшно. Перестаёшь что-либо понимать на сороковой минуте. Списать тоже не вариант, потому что даже если ты на гитхабе что-то и найдёшь, то не поймёшь, что именно нужно изменить, чтобы получилось что-то твоё собственное. Я каким-то чудом за две недели сделал что нужно, правда, без спринга. Спросил на поддержке, примут ли такое решение, мне сказали, что без спринга решение не принимается. Я заплатил человеку, он переписал мой код заново, использовав спринг. Так я попал на стажировку.
После 8го занятия стажировки у нас были все знания, необходимые для написания собственного проекта, который мы должны были гордо прикладывать к резюме. Я свой проект полностью переписывал дважды, а потом ещё вносил правки Григория. В конце концов получилось что-то не слишком уродливое, и я пошёл по собеседованиям. Долго их описывать, скажу лишь, что у меня их было четыре, два успешных, и что вопросы типа «чем отличаются ArrayList и LinkedList» вам уважающий себя интервьюер задавать скорее всего не будет, если только не потребуется проверить вашу общую адекватность. В одной конторе меня просто сразу посадили за комп и сказали с нуля за час написать приложение для маппинга объектов на базу, пользуясь JDBC. В любом случае, сначала — тест, потом — знакомство. Испытательный срок прошёл гладко. На вторую неделю меня обозвали п*****сом, но не выгнали. Я считаю, это успех!) Я люблю здесь абсолютно всё и всех, и уверен, что все старания были не напрасны.
Резюме и выводы
- Книги — наши друзья. Не знаете как сделать — смотрите в книгу. Знаете как сделать — сверяйтесь с книгой. Онлайн статьи не в счёт.
- Невыясненных вопросов быть НЕ ДОЛЖНО. Старайтесь до конца понимать если не всё то, о чём вам рассказали на лекции, то хотя бы то, что вы лично используете в своём коде.
- Никогда не забывайте, какова ваша цель. Если вам нужен перерыв, дайте себе времени сколько нужно, но потом вернитесь к работе. У меня был период, когда я за полтора месяца не написал ни строчки, но я каждый день помнил, что должен продолжить.
- Не работайте до потери пульса. 5-6 часов чистого времени в день более чем достаточно для обучения, сидите больше, значит, отвлекаетесь и не можете организовать свою работу.
- Не давайте себе упасть духом, ни при каких обстоятельствах не переставайте в себя верить и не опускайте руки. Мой личный лайфхак — просто запретить себе думать о неудаче. Возможно, придётся начать всё сначала, но я просто никогда даже не рассматривал возможность всё бросить. Думаю, это меня и спасало.
- Ходите на конференции по Java, бесплатные встречи. Будьте в связке с теми, кто сейчас делает то же самое или недавно закончил делать. Созванивайтесь по скайпу, оценивайте код друг друга. Получайте заряды мотивации. Коммюнити оказывает неоценимую поддержку.
- Не можете работать дома? Привлекает диван? Меня очень спасали муниципальные библиотеки. Раз в пару месяцев рекомендую менять обстановку, чтобы присутствовал минимальный стресс. Так проще держать себя в тонусе.
- Если есть возможность, занимайтесь спортом. Хотя бы просто регулярно бывайте на воздухе. Мозг может не выдержать сильных систематических нагрузок, получите много явных и не очень проблем со здоровьем, отодвинете срок устройства на работу месяца на два.
И главное. Обучение новой профессии — это не спринт, это марафон. Я не считаю себя очень умным человеком. И с математикой и физикой у меня в школе всегда было плохо. Меня даже после 9го класса отчислили за неуспеваемость. Но, как выясняется, я очень упорный. И такое упорство и вера в себя помогли мне достичь своей мечты. Надеюсь, помогут и вам.
Николай Великохатько, 20/08/2017