Стоит ли переходить работать с php на java?
Я бы смотрел в сторону Angular, Play2, swagger, Jooq, Apache DirectMemory и не заморачивался с энтерпрайсом. Как показывает практика J2EE стэк не очень подходят для фриланса. Конечно есть исключения - можно глянуть Grails, Vaadin и ZK для RAD'а.
У Grails ужасно низкий порог вхождения, я на него подсаживал рельсозависимых и джангистоманов; там уровень поддержки на несколько порядков лучше чем в большинстве решений из миров php/ruby/python.
J2EE сейчас немного парализован, и с его использованием в продакшене связано не мало рисков. В первую очередь участились случаи взлома серьёзных учреждений которые используют JBoss и WebLogic. Сейчас как-то стало совсем непопулярно использовать сервлеты ...
JSF / ADF сейчас отмирает.
Spring очень простая и нужная штука если разобраться, правда есть свои проблемы и иногда лучше обойтись без него.
По шаблонам проектирования, важно понимать: mvc, mvp (document-view), mvvm, cqrs-es, disruptor, proactor / reactor. Все остальное, "банальное" типа Factory, Builder, Facade можно подчерпнуть из книжек... в вэбе такое почти не используется, но для понимания остальных шаблонов нужно разобраться.
В большинстве случаев мне приходится реализовывать CQRS-ES в Play2 через Angular + sse. Есть свои сложности с http кэшированием, и кэшированием модели... часто использую prerender.io для клиентов без JS'а и поисковых роботов. Вэбсокеты (Socket.io) работают медленнее (задержки выше, инициализация длительнее) чем sse, иногда приходится откатываться на флеш и long-polling, но это все по ходу дела приходится самому дописывать руками. Есть много классных решений типа restangular, правда большинство из них ещё довольно сыроваты - доверяю тому что сам пишу.
Доброго времени суток.
Да, устроиться "с не сильно хорошим знанием английского" вполне реально". Если в языке достаточно хорошо разобрались - могу посоветовать посмотреть в сторону паттернов, на мой взгляд отличная книга - Фримен, Сьерра - "Паттерны проектирования". Ставится конкретная проблема, решается, показываются проблемы решения и решение постепенно улучшается. 
Чаще всего сейчас в java это именно веб, как следствие будет полезным знание сопутствующих технологий - jquery, javascript, бывает что и поверстать приходится (зависит от вакансии уже). Если вернуться к java частенько нужно знание Spring Framework но разбираться с ним я бы советовал уже на проекте а не самостоятельно (самостоятельно нужно посмотреть только что есть IoC). 
И я бы не советовал лезть во всякие JSF, ADF. С 1го взгляда это может быть и прикольно но очень ограничено и тяжеловесно (моё личное мнение). Так же переходя с 5 лет опыта работы в php на мидл java нужно быть готовым к снижению ЗП, но на мой взгляд это инвестиция в будущее :) 
Если остались вопросы - буду рад помочь! Удачи в постижении мира java! =)