A melhor forma de melhorar a logica de programacao eh programando =S existem alguns sites especificos pra fazer exercicios justamente pra melhorar a logica de programacao, vou deixar o link da plataforma q eu uso geralmente. https://exercism.org/
Outra coisa q fez eu melhorar minha logica de programacao eh o dia a dia de trabalho mesmo, refatorar codigo, tentar aplicar conceitos de clean code, por exemplo se vc tem um methodo com 3 lacos de repeticao em cascata, avalia se existe a possibilidade de fazer apenas com 2 lacos ou menos, isso vai fazer vc exercitar a logica.
espero ter ajudados, sucesso pra ti =]
Vou fazer alguns dos desafios do site indicado aqui também. Quanto à refatoração de códigos, tenho que buscar aplicar essa prática nos meus projetos, que são mais simples, pois no da empresa ele é muito robusto, com um grau de complexadade maior, além de que tenho acesso apenas para leitura atualmente.
No mais, obrigado pela indicação e dica.