Software engineers should read books to learn new patterns and best practices. "Cracking the Code Interview: 189 Programming Questions & Solutions" is highly recommendable to anyone who wants or needs to take coding interviews. "Refactoring: Improving the Design of Existing Code, 2nd Edition by Martin Fowler explains what refactoring really is"
Table of contents
Cracking the Coding InterviewCode CompleteClean CodeRefactoringHead First Design PatternsPatterns of Enterprise Application ArchitectureWorking Effectively with Legacy CodeThe Clean CoderIntroduction to AlgorithmsSort: