История о том, как я сменил инженерную специальность на IT. Порядка двух лет назад, я принял решение поменять специализацию и стать программистом. До этого работал инженером в сфере никак не связанной с IT. Из опыта программирования был только Paskal в далеком школьном прошлом. Хорошим стартовым преимуществом было знание английского на достаточно высоком уровне. По совету одного знакомого, выбор языка программирования сразу пал на Java, как на наиболее востребованный на рынке на тот момент. Начал я с чтения книг и просмотра туториалов на Ютубе. Потом случайно наткнулся на проект Javarush и порядка полгода (с перерывами) здесь занимался. Паралельно с Javarush изучал прочие интересующие темы/технологии (типа SQL, HTML/CSS), на базовом уровне знакомился с синтаксисом С++/С#. За мои успехи на Javarush администрация JR даже предоставила мне возможность бесплатно поучавствовать в проекте (за что я им очень благодарен!), но, к сожалению, я не смог выдержать тот темп изучения, который задавал Хуберт, и вынужден был покинуть проект. Чуть позже я поступил на курсы программирования, где проучился 5 месяцев. Там я познакомился с принципами построения Java EE приложений, базовым набором EE фрейморков и написал свой первый проект. Параллельно шлифовал знания по различным технологиям на разных ресурсах и периодически «возвращался» на Javarush. Сразу после окончания курсов начал искать работу (на поиски ушло полгода, но это уже отдельная долгая история:)). С инженера в программисты - 1 Мое ИМХО по поводу JavaRush: Плюсы: главным плюсом для меня изначально было наличие задач – так как для начинающего программиста проблема всегда «на чем бы потренироваться». Причем качество задач довольно высокое в плане их технической разносторонности и разнообразия (это я как человек, занимавшийся на различных ресурсах, говорю). Также понравились лекции своей доступностью и содержательностью (была бы возможность - я бы лекции продолжал читать и сейчас). Понравилось, что сразу за теоретическим материалом идет закрепление на практике. Хорошая подборка дополнительных материалов, причем из различных источников, что очень круто для новичка – сразу открываешь для себя много полезных и содержательных ресурсов. Учиться было интересно, и в целом я доволен тем прогрессом, который получил здесь за проведенное время. Минусы: не очень удобная система проверки задач без фидбека. Поначалу это было не особо заметно, но на более высоких уровнях стал ловить себя на мысли, что зачастую 90% времени решения задачи уходит не на составление алгоритма решения/изучение темы, а на топтание по кругу : «какой же тесткейс проваливает мое решение». Особенно сильно это стало заметно на больших задачах. С одной стороны, это вроде как и челенж, но потом все же понимаешь, что время можно потратить с большей пользой. Еще не понравилось, что ближе к 30-му уровню для того, чтобы продолжать читать лекции, нужно решить практически все задачи ничего не пропуская (вкупе с предыдущей «проблемой» из-за этого процесс обучения сильно замедляется/останавливается). Отдельно хотелось бы выделить реальный проект – обязательно поучаствуйте в нем, чем раньше – тем лучше. Изучения Java Core – это круто, но деньги программистам платят за знание Enterprise технологий. Если не хотите/не получается участвовать в проекте на JR, ищите другие возможности – курсы программирования или начинайте что-то простенькое писать сами (хотя самому без помощи поначалу будет трудновато). Вот моя краткая история обучения, приятного всем кодинга :).