На что потратить время и силы в плане программирования?
Глупые, непонятные вопросы.
Сеньер Java и Сеньер C++ получают примерно одинаково. Уровень ЗП зависит от твоего уровня знаний и опыта работы. К тому моменту, как ты перейдешь с junior на mid, в мире все может поменяться.
Учишь С++ и тебе нравится - продолжай. Мотивация в виде "нравится" важнее, чем лишние 100$ когда-нибудь через 5 лет.
Мотивация в виде "мне нравится моя работа" важнее чем лишняя 1000$ в зп.
Переучиться с С++ на java в районе junior-а не проблема. Проблема из никого стать хотя бы junior-ом и получить первую приличную работу в компании, где есть возможность реального роста.
Отвечу не популярно, но я бы советовал копать не C++, а C# или Java. Уверен что здешние олдфаги освистают такой совет, но вот лично моё мнение: C++ гораздо менее клёвый на начальных этапах освоения, чем C# или Джава. На этой двойне неподготовленному человеку писать намного проще и веселее, а возможностей для творчества и заработка за глаза хватает. С++ не катится вниз, но просто тебя постигнет депресняк, пока будешь его осваивать и мириться с ним. Я лично начинал и с C# и с C++, в итоге остался на C#, все курсовые на нём писал, на работе пишу Asp.Net сайты на C#, и всё устраивает, очень радуюсь, открывая для себя то, как легко некоторые крутые вещи делаются на этом языке.