Elizabeth Keogh has been blogging her advice for software-developer apprentices, and recommends buying and reading a selection of good software development books. I think this is sound advice - personally I felt that my career and abilities starting taking off when I stopped reading tech-specific Wrox tomes that were obsolete within six months of publication and started buying timeless Addison-Wesley hardbacks. Why so many newbie coders insist on rediscovering solutions to well-known problems instead of leveraging the knowledge of our programming forebears is beyond me, but most of us have behaved in this way at some point. Give yourself a leg-up and read some decent software design books.

If I had to make a list, the books I would currently prescribe for new graduates entering a career of enterprise OO development would be:

  1. Code Complete
  2. Domain Driven Design
  3. Refactoring
  4. Design Patterns
  5. Patterns of Enterprise Application Architecture

and if I was feeling cynical I'd perhaps also advise a copy of The Career Programmer - Guerilla Tactics for an Imperfect World be kept stashed in a laptop bag...