プログラミングに慣れてきて1年くらいたつと自分で何が問題なのか理解できる部分にたどり着くようになります。しかし中級レベルだとその解決策がベストなものなのかはまだ明確に理解できないです。
プログラミングの大半は調べることから始まります。調べて実際に検証をしながら経験を重ねて上級者レベルを目指していきましょう。