Ask HN: What are the books you wish your colleagues had read?
There is a class at Georgia Tech I colloquially referred to as "making sure your coworkers don't hate you." It covered design patterns, software testing, and project management. I'd tack on a basic knowledge of databases to that. These are things you can gain a true functional knowledge of in a couple of weeks, and which not knowing might make senior engineers hate working with you.<p>So to mimic the class:<p>The Mythical Man Month<p>Design Patterns - Even if some of the particulars are not as relevant, it still provides a useful framework for thought.<p>Lessons Learned in Software Testing: A Context-Driven Approach<p>I'd also add Harry Potter & The Methods of Rationality. A lot of engineers can think empirically, but its not their first reaction. Going through this book helped make it second nature for me. Can't remember if a certain data structure is immutable? Now I'll write a couple of lines of code to see rather than go looking for documentation. A lot of big problems start as false assumptions. Having the instinct to think to test them and knowing how to will prevent a lot of wasted effort, regardless of your role.<p>How to Solve It by Polya also gets an honorable mention for similar reasons.