История моего обучения почти на 99% повторяет все ранее изложенные мемуары, постараюсь коротко. Я учился в университете по специальности, которая подразумевает под собой IT-направление, но, увы, что касалось программирования, дальше "Hello World" дело не двигалось. Менялись языки, вместе с ними менялись преподаватели, а толку было мало.

Появлялись первые мысли: "А что же дальше?"

Началось все стандартно: товарищ показал ресурс с классными задачами и системой оценки этих задач, как вы уже догадались,это был тот самый JavaRush! Было это в 2014 году. 10 Уровней пролетели как секунда, нашлись деньги, появилась подписка. Следующие уровни шли тяжелее, так как затрагивали те области, по которым не ступал мой разум...Осилив n уровней после приобретения подписки уверенность подскочила до небес и толкнула меня создать резюме на небезызвестном сайте вакансий. В течение недели даже нашлась вакансия, под которую подпадали мои навыки программиста. Первое собеседование прошло ужасно, и это, кстати, очень важный момент,в который нельзя опускать руки. Это собеседование дало мне пинок мотивации и следующие 2 месяца я занимался ежедневно по 6-8 часов. Но во мне таился страх завала следующего собеседования, и так и не дойдя до такового я потерял мотивацию, плюс добавились обстоятельства, которые забрали все свободное время, а подписка осталась пылиться...

Вторая попытка началась с того же вопроса: "А что же дальше?"

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

Третья попытка началась с тревожного вопроса после защиты диплома: "И что теперь?"

Для третьей попытки требовалась новая тактика. Взяв пачку книг и видео курсов, я плотно уселся за занятия на ежедневной основе и уже через пару недель поднял все старые воспоминания даже подкрепив их новыми. Третья попытка дала мне возможность осмыслить почти каждый символ, литерал и строчку, используемые в коде. Через месяц после старта третьей попытки, я начал искать собеседования, но набор Junior'ов был очень скудный, а количество претендентов на одно место порой достигало 70 человек. И наконец, в декабре 2015, после успешного выполнения тестового задания и прохождения собеседования в трудовой книжке появилась запись "младший программист". Сейчас заканчивается мой испытательный срок и вероятность трудоустройства на постоянной основе стремится к 100%.

Пожелания

Ребята, не стремитесь к космическому количеству решенных задач. Не решайте задачи для того, чтобы решить задачи! Вникайте в суть, задавайте вопросы, сомневайтесь. Смотрите шире. Да, JAVA очень нужна, но помимо JAVA нужно много знаний. Читайте про сети, web технологии, шаблоны проектирования и многое многое другое.

Традиционный список того, что нужно знать

  1. Основы
    Без основ никуда, если пару раз прочитать устройство HashMap, то скорее всего уже никогда не забудешь. В основы входят String, Collections API, Threads, I/O.Threads, I/O.
  2. Debug
    Обязательная вещь в больших Enterprise проектах.
  3. ООП
    Очень классно порешать тесты на QUIZFUL
  4. Servlets
    Так как Java - это всякого рода web и Enterprise, то с 50% сервлеты вам пригодятся.
  5. SQL
    Тут без комментариев.
  6. Spring и Hibernate
    Связка, которая мне сначала не пригодилась, но с которой постоянно приходится иметь дело, поэтому MUST HAVE!
P.S. Насчет работы. Верьте рассказам людей про то, что это лучшая работа в мире. P.S.S. Спасибо JavaRush за интересные задачи, и огромное спасибо