Well, I shouldn’t say “recommendations,” since I’m just recommending one book: Testing Computer Software (Second Edition) by Cem Kaner, Jack Falk, and Hung Quoc Nguyen. This is an utterly invaluable book for anyone who ever aspires to be more than just a code monkey.
Technically speaking, this book was written more for “testers” and people who manage testing teams rather than “programmers” but as long as you keep that in mind it shouldn’t be a problem.
This book goes over everything that a good software testing team should do – from bug reports (including how a bug reporting system should be designed) all the way up to how to hire and manage a team of testers. There’s also a lot of stuff in there in regards to dealing with being a tester – because too often in a corporate environment, testers are really looked down upon, especially when finding bugs near the end of a deadline.
All in all, just a really great book.