Resources
Books
 
- 
The Pragmatic Programmer: From Journeyman to Master, by Andrew Hunt and David Thomas.
- Software Project Survival Guide , by Steve McConnell.
- Code Complete, 2nd ed.,
by Steve McConnell. (Chapter 5: Design in Construction is available free.)
- Rapid Development, by Steve McConnell.
- Design Patterns: Elements of Reusable Object-Oriented Software, by Gamma, Helm, Johnson, Vlissides.
- 
Design Patterns Explained: A New Perspective on Object-Oriented Design, by Alan Shalloway and James Trott.
Articles and Web Sites
- Project Ideas and Presentations
- Software Development Process and Practice
- Specifications
- Architecture and Design
- UML
- Design Patterns
- User Interfaces 
-  Testing 
- Refactoring 
- Extreme Programming 
- Estimation