code skill improvement (java; tdd; refactoring)