Java junior developer кратчайший путь с нуля до реальной работы?

Приветствую сообщество Toster.ru!!
Пролог к вопросу(немного о себе): Мне 27 лет, жизнь так повернула что через 6 - 9 месяцев нужно будет искать работу, сфера в которой я работаю обмельчала и работать в ней далее самоубийству подобно, и да она не связана с IT как весь мой предыдущий опыт.

Как я сейчас учу Java: Читаю - "Шилдт Г. - Java 8. Полное руководство. 9-е издание (2015)", поглядываю на примеры кода в книге "Хорстманн К., Корнелл Г. - Java. Библиотека профессионала. Т1 - 2014" , смотрю видео на канале Golovach Courses. Иду по курсу javarush.ru но пока не понял насколько это эффективно т.к. решил продвинуться в теории по книге, чтобы потом закреплять все этим онлайн курсом.

Вопрос: Прошу старших товарищей дать рекомендацию по обучению на сейчас (скорректировать мою схему Выше), дать ссылки на вкусные ресурсы о которых я не знаю.
Но в основном подсказать что по Вашему мнению нужно изучить (с указанием литературы или ресурсов) чтобы в кратчайший срок дотянуть до устройства на работу.
  • Вопрос задан
  • 31128 просмотров
Решения вопроса 1
@Mikeismynick Автор вопроса
2 месяца как работаю разработчиком ))) желаю всем дойти до своей цели, на любые вопросы с радостью отвечу.

Перед прочтением поста прошу достать свой компас сейчас мы будем его настраивать или же решим что он все таки показывает в отличную от программирования сторону, дело в том что люди которые читают подобные статьи находятся в смятении, и прочитав очередную саксес стори пытаются замотивировать себя идти в этом направлении, это все понятно - я писал этот пост именно для вас, выше вы найдете предисторию чтобы все это “примерить на себя”, чего таить и я в свое время делал точно также, причем я больше мотивировал себя чем шел к цели.
Будучи разработчиком сейчас я вполне отдаю себе отчет что мог им и не стать, да у меня была цель, да были мотиваторы, но реально почти до самого конца я вел себя так как будто не хотел этого - чуть что давал слабину, расслаблялся и чуть-ли не забрасывал все это дело, года 2 я просто думал что выучу все сам и по факту вообще ничего не делал, уже будучи на курсах я держался в хвосте из - за чего постоянно был в авральном режим и чуть догонял костяк как тут-же сбавлял темп и отставал, вообще процесс обучения этому занятию переодически очень сильно вымораживает и тот самый фильтр который многие не проходят, я могу посоветовать тебе читатель иметь свою философию и подход к этому занятию, в итоге у тебя все равно все “поднимется” и “победится", советую читать и перечитывать tutorials.jenkov.com/software-as-career/learning-i... с правильным мировозрением все это преодолевается намного легче.
Внимание! Если вы хотите стать разработчиком, то уже сегодня примените весь ресурс что у вас есть. Хотите попробовать сами выучить все ? Вперед! но общайтесь активно с комьюнити, ходите на конференции, и пишите код, много кода, и главное пишите его правильно, посмотрите как устроены небольшие опенсорс проекты, почитайте про трехслоную архитектуру и дерзайте! Не получается ? или вы видите что темп черепаший, а уже начинает надоедать и руки опускаются ? ОК! все к этому приходят, вам нужен турбоБуст а это ментор или курсы.

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

Ну если, вы и дальше ищите статьи и варианты выучить джаву за 21 день то просто перестаньте тратить свое время, это не ваше, увы и АХ!

Как это было - много писать не буду (а получилось в итоге много И ДАЖЕ ОЧЕНЬ), могу посоветовать статьи Стаса Лазенко на dou.com, там расписан путь (на ближайший 1 - 1.5 года), не нужно учить все что там есть от корки до корки, но в конце у вас должно быть свое приложение в моем случае это https://bitbucket.org/Mikeismynick/phonebook, там написаны инструменты которыми я пользовался, все что там перечислено это технологии которые активно используются в современной веб разработке, если и не придется работать с ними в итоге то знать о них и пощупать надо, и да там не весь список технолгий которые нужно изучать, вот то что я указывал в резюме,

Классические алгоритмы и структуры данных Java SE 7 ООП IO Collections Multithreading Concurrency Utilities JDBC JPA Hibernate(ниже написал что именно) Servlet JSP Spring Framework (IoC Container, JDBC, ORM, MVC) JavaScript jQuery Ajax JSON Twitter Bootstrap XML (DOM, SAX, StAX) JUnit Mockito IntelliJIDEA Git/Bitbucket Maven Tomcat MySQL

по хибернейту - нужно уметь поставить на проект, знать где конф файлы и как их настраивать, список аннотаций которые должны быть в проекте изложен в первый 7 - 8 главах референса, на проекте должны быть таблицы находящиеся в отношениях manyToOne oneToOne, manyToMany соответственно хибер должен все это покрывать, неплохо поработать через jdbc для начала чтобы понять а зачем вообще нужен хибер.

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

Без ментора очень тяжело, оглядываясь могу сказать что выучить нужно много и желание учится часто будет пропадать тк. цель будет маячить где то там далеко, а процесс разработки переодически просто вымораживает особенно когда ты ищешь багу 6 часов а окозалось что просто где то по не внимательности пропустил самую тривиалную вещь.

Я лично учился в группе getJavaJob (собственно мне это здесь и посоветовали, поклон ребят !!), чистыми учился около 6-7 месяцев, работал очень плотно, 3-4 часа в день минимум, конечно не всегда так получалось но и в выхи и в праздники я тоже учился так что назвал средние цифры. ну и у всех голова и бэкграйнд разный, считаю что быстро схватывал, но отсутствие бэкграунда и посредственный англ очень тормозили меня. На курсы пришел прочитав 150 стр. из "полного руководства" Шилдта.

Что до конкретных курсов то очень рекомендую попробовать, курс поделен на 2 части, первая длится 2 месяца и там учат java se (алгоритмы, структуры данных) паралельно прививают правильный стиль программирования и учат работать с инструментами разработки (idea, git, debugger). Ну и организатор курсов суров, если начинаешь тупить и отставать то он быстро тебя подрежет и ты престыженный будешь дальше пилить, пилить ))

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

Кстати в slack сидит русскоязычное комьюнити канал называется 3monthjunior, заточенное как понятно из названия на подъем до джуна и трудоустройство ))) чуть не забыл, мега важно иметь людей которые буду подсказывать и толкать вперед
Ответ написан
Пригласить эксперта
Ответы на вопрос 14
Deerenaros
@Deerenaros
Программист, математик, задрот и даже чуть инженер
Ну java это хорошо. Ладно не PHP, и пролетариат с вами. Воркфлоу следующий - начинайте искать прямо сейчас. В нормальных компаниях реабилитация около полугода, так что как раз по два раза в каждую можете успеть. А во время первого интервью получите некоторый опыт. Не бойтесь заданий - их элементарно накопипастить прямо с документаций. Даже если просят какую-ту НЁХ - всё равно можно отыскать откуда копипастить. Главное научиться делать ровно три вещи: анализировать задачу, разбивать на подзадачи, применять пункт 1-2 на полученные подзадачи. Ну а база рекурсии - задача элементарна и решается в две строчки.

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

Ну а на практике. Готовьтесь работать за бесценок. Серьёзно, может быть оффер - 5-10к в месяц. Надо привыкать и морально готовиться. Зато могут толком ничего и не спросить. А бывают просто предложения года, если не жизни - пол штуки - штука в час на старте с контрактной работой - с одной стороны это не много (тот же odesk уделывает этот параметр даже до старта), однако могут даже предложить офис, да и налоги знаете ли, уплачены. Но соглашаться не стоит - договор подряда обычно туфта, платят через раз, да и задачи из разряда - что хочешь, то и делай, только попробуй потом заставить заплатить.

Впрочем, есть ещё компании года. Те самые гуглы, яндексы и фейсбуки, да и пара сотен стартапов. Стартапы берут едва ли не всех. А результат виден очень быстро - только прямые руки иметь надо (и уметь копипастить). Из минусов - очень слабый старт - нередко вообще дому у нанимателя (студент-стайл), про деньги лучше даже не говорить... Зато если получиться - будете обеспечены, а то и вовсе - сможете не работать всю жизнь. Но один два раза в год. Оказаться в кругу таких ребят - большая пребольшая удача. А у яндекса есть школа. Записывайтесь! Обучат по нормальной программе:
1) базовый синтаксис
2) немного про ООП
3) базы данных (реляционные и не очень)
4) чуть про паттерны
5) тестирования
и другое, но что главное, очень релевантное при апеллировании на работу.

2897-1360586427.jpg
Ах, снова здесь полотна развожу. Извиняюсь и удачи на собеседованиях!

UPD.
Ссылка на школу яндекса затерялась среди тегов. Исправил.
Ответ написан
@adsky13
Программист, исследователь методом тыка
Как говорил мне один великий программист из США(уехавший туда из бывшего СССР), что хватит изучать языки, читать книги, начинай делать проект, ставишь цель и стремишься.
Керниган Ритчи: Хочешь научиться программировать?! начни программировать

P.S. Если хочешь могу помочь в развитии, пиши в личку, сброшу аську
Ответ написан
timych
@timych
Не разменивайтесь на много ресурсов. Одной хорошей книги достаточно на данном этапе. Самое главное, без чего вас многие не захотят брать на работу - свой проект. КАЖДЫЙ работодатель будет у вас спрашивать, что вы написали для себя, для души. (По крайней мере у меня так было) Придумайте себе задачу. Начинайте писать. Работадатель хочет увидеть реальный код и то, что вы не теоретик. И очень немаловажно этим показать что программирование для вас больше чем просто работа. Удачи!
Ответ написан
@lstdayofhmnty
Если станешь зачитываться теорией - провал тебе обеспечен. Читай и по изученному усиленно пиши код(просто "поглядывать" не катит), иначе далеко не уедешь.
Не надо тебе больше литературы и ресурсов, не прыгай с одного обучающего материала на другой без крайней на то необходимости, не распыляйся.
Добавь практику к изучаемому материалу как можно скорее и на ней же сосредоточься, Джавараш подойдёт.
Загляни на досуге на Гетджаваджоб, рекомендовать не могу - не счупал, но такое есть и вроде у некоторых выстреливает.
Ответ написан
sermann
@sermann
Junior Java
Я начинал с видеокурса Якова Файн и его же книги "Программирование на Java для детей...". Ещё очень помогли видео этого паренька.
Ответ написан
@ledorubl
Насчёт моей учёбы. Систематически и целенаправленно ничему не учусь. Бессмысленно по целому ряду причин.
Все перечислить невозможно. Вот некоторые.
Все области знаний и части профессий с которыми я имел дело видоизменились и требуют другого уровня знаний и опыта.
Что в области электроники, что в вождении и ремонте автомобиля, что в компьютерных технологиях, что в программировании.
Мне это уже не осилить даже на любительском уровне.
Допустим я чему-то научился. Со всем этим я никому не нужен в силу возраста и низкой трудоспособности.
И мала вероятность успеть окупить вложенное в обучение.
Из прошлого.
Писали мы программы. Они даже были в 90-х годах востребованы и кое-где работают до сих пор.
Но! Одиночек выдавили коллективы. И это правильно.
Главное - у нас был любительский подход и под конкретную задачу.
Когда я смотрел тексты программ на том же языке, написанные профессионалами, я ощущал убогость своих знаний.
Вывод.
Из занятой ниши вылезти легко. Занять другую - трудно, практически невозможно.

Ещё анекдот:
"Выступают два балалаечника. Старый заслуженный и молодой начинающий.
Молодой вовсю играет, пляшет, старый сидит на стуле и иногда дёргает струну.
- Дэынь.
И так весь концерт.
После корреспондент спрашивает старого.
- Почему молодой артист так много играл, а вы заслуженный одну струну дёргали?
- Он молодой. Он весь в поиске. А я уже нашел.
- Дзынь....."

"Летят двое в тумане на воздушном шаре и не знают где находятся.
Вдруг просвет в облаках, видят мужик пашет поле.
- Мужик, где мы?
Мужик поднял голову и ответил.
- На воздушном шаре.
Тут облако сомкнулось и мужик исчез.
Летят дальше. один говорит.
- Это был математик.
- Почему ты так решил?
- Он дал абсолютно точный и
совершенно не нужный ответ."
Ответ написан
Judixel
@Judixel
Front-end Engineer
Рекомендую книгу Обьектно-ориентированное мышление, лишним не будет, т.к. Вы новичок в программировании, и надо понимать как проектируются и продумываются до написания кодa, и кстати все примеры там написанны на java. Отличная книга выходного дня!)
Ответ написан
Alexey_Kutepov
@Alexey_Kutepov
Разработчик программного обеспечения
Тут всё индивидуально. Лично мне проще сначала ознакомиться с языком по книге, выполнить ряд примеров из этой же книги, а потом придумать себе учебный проект на изучаемом языке и начать его пилить и более детально углубляться в язык.
Ответ написан
God-emperor
@God-emperor
create a golden path
Самый короткий путь - учить, а не задавать подобные вопросы на тостер.
Ответ написан
gadfi
@gadfi
https://gamega.org
почему именно java ? да зп на уровне но вход явно выше чем в других областях.
Верстка вход вполне реален за 1-2 месяца
php не на много больше чтоб до джуна дорасти
если все же хочется java то лучше android вход ниже чем в java ee

ссылки Как написать простое приложение на Android?
Ответ написан
zeksa
@zeksa
Попробуйте поискать курсы (университеты) при компаниях, есть возможность со старта поработать в команде и получить ОПЫТ - самое важное.
В моём случае всё было круто - получили большую задачу, начали пилить, просто так, с нуля. Ментор только подсказывал по архитектуре и кодстайлу.
Я научился работать в команде, почувствовал как всё "работает", узнал как протекают процессы разработки. Ещё плюс - наличие конкуренции, например Вася говорит что его подход лучший чем твой - в итоге происходит мини-борьба между PoC, и оба человека ищут всё что только возможно, чтобы решить проблемы быстрее, лучше, надёжным способом.
Ни одна книга/сайт такого не предоставит.
Ответ написан
thestump
@thestump
программист PHP
Лучше изучать материал который дается для изучения Java при обучении перед получением сертификата. Учишь, сертифицируешься, учишь сертифицируешься и работать.
Ответ написан
georg28
@georg28
P/QA manager
Если серьезно настроен, то вот сюда vk.com/getjavajob
Если пойдешь, напиши мне в ЛС.
Ответ написан
iKapex
@iKapex
Привет. Учи параллельно Spring, шансы найти работу повысятся вдвойне.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
ИнЭкс Москва
от 70 000 до 150 000 руб.
Sidenis Томск
До 170 000 руб.
CTI Москва
от 100 000 до 130 000 руб.
14 дек. 2018, в 17:59
2000 руб./в час
14 дек. 2018, в 17:36
1500 руб./в час
14 дек. 2018, в 17:31
500 руб./за проект