Java é uma boa escolha, porque é o novo Cobol. Tem vaga em todo lugar, e por muito tempo ainda. Continua codando, não para.
Se me permite uma sugestão, quebra a função main em funções menores, e cria um record com os dados básicos. Um código estruturado em pequenos blocos fica mais legível (não sempre, mas ajuda).
Trabalhei anos com Java. Aí passei a fazer os testes em Groovy e quando voltava pro Java o System.out começou a sobrar. Depois de algum tempo acabei criando uma helper e dupliquei os métodos print, println e printf como estáticos para usar com static-import. Mesmo usando soh logger, as vezes precisava do print. Pra digitar a IDE até ajuda com autocomplete, mas ficar vendo esse System.out me incomoda bastante até hoje. Que coisa mal projetada da linguagem...