1.) Comment, comment, comment. If in doubt about comments, comment. 2.) Learn to say no. If you're working on a team where you're constantly asked to introduce new features without extending a deadline, don't be afraid to say no. 3.) Learn to write testable code and unit tests early on. The sheer number of hours in my career I could have saved had I learned early to write testable code is unfathomable.