まずオブジェクト指向を、
スッキリわかる Java入門 第2版、2014で学ぶ

リファクタリング・デザインパターンは、
Eclipseの説明を読んで、お茶を濁すw

Javaを学ぶと、C++ = Java + ポインタだから、
C++を理解しやすくなる。
C++は読んだことないけど、ロベールとか?

UMLを軽く学ぶ

アルゴリズムはセジウィックとか、インド人の本で、初歩を学ぶ

これら以外に、SQLや情報処理の資格も、軽く学ぶ。
すべて浅く学ぶこと。深く勉強すると、切りがないw