Вопрос: Как стать Java Middle Developer?

Лучший ответ:
Во-первых, само разграничение на джуна, мидла и сеньора очень условное. Я видел примеры того, как сеньор из одной компании не тянул на джуна в другой. Обусловлено это может быть как разным уровнем требований к профессионализму сотрудника, так и степенью соответствия области знаний сотрудника области деятельности компании. Экосистема Java очень объёмна, даже в её пределах знать всё тяжело.
Во-вторых, объективно оценить себя самостоятельно невозможно. И даже оценка со стороны тоже может быть не показательна, как я уже писал выше, в разных компаниях разные нормы. И серьёзность компании не показатель. Я видел супепрофессиональные отделы в региональных продуктовых магазинах и частных клиниках и видел огромные ИТ-службы полностью состоящие из профанов в федеральных банках и транснациональных торговых сетях. 
Решаются эти две проблемы относительно просто - смело претендуйте на большее. Естественно, вас попросят подтвердить ваш уровень. Если смогли, вы ему соответствуете. Если нет, готовьтесь лучше. И чем большему количеству людей вы сможете доказать свой уровень, тем более он объективен.
Что касается развития и целей для дальнейшего роста, мозг развивается, если его напрягать. Нужно всё время практиковаться, всё время изучать что-нибудь новое, всё время искать дополнительные способы применить свои силы. Я часто слышу, что в маленькой компании нет возможности развиваться - это неправда. Как раз в кровавом энтерпрайзе приходится делать годами одно и то же и работать с махровым легайси, без возможности что-либо изменить без полугодового согласования экономического обоснования изменения. Маленькие компании на много более гибкие в выборе технологий и методов работы. К тому же, всегда есть возможность завести пет-проект. Чтобы выбрать технологий для пет-проекта, найдите все вакансии java-программистов на нескольких работных сайтах, отсортируйте по зарплате и в списке требований топовых позиций найдите то, чего не знаете. Потом повторите подобную операцию с фрилансерскими биржами.

Худший ответ:
Джун, мидл, сеньор... 1 придумал и теперь все выеживаются непонятной градацией, но зато как-то по европейски/американски. Профессиональный рост подразумевает изучение чего-то нового и набор опыта в том что уже знаешь, и этим  стоит заниматься не для карьерного роста, а просто потому что это интересно и необходимо. Назовем это самореализацией. Административный рост аля карьерный никак не связан с профессиональным. То есть по идее должен быть. Но в настоящее время вырасти по карьерной лестнице больше помогают амбиции, умение находить общий язык с людьми, постоянно быть на виду у руководства и далее далее по списку. 
  К чему я тут вел то? Ах, да...
  Если вы говорите о мидле как о повышении зп и обязанностей, то можно просто сменить работу (где то полюбому возьмут) или заявить руководству что вы готовы. Если руководству нравится как вы работаете, то должность вы получите (если в вашей конторе принято кого то повышать вообще).
  Если же вы говорите о мидле как о человеке с определенным набором знаний, то можете смело установить эту планку самостоятельно, либо найти её на каком-нибудь hh в вакансиях конторы занимающейся непосредственно IT. В таком случае этот список за вас просто составит кто-то другой (хотя не факт, что этот список будет похож больше на супер-пупер-имба сеньора, а называться мидлом). Потом вы все это выучите и будете себя считать мидлом. При этом работать вы можете так же и джуном =) или наоборот сеньором.