10 stages to turning into the java engineer