
This guide offers advice to technology professionals and developers on subjects of career and productivity, personal finance and investing, and fitness and relationships. It will help you become a better programmer, a more valuable employee, and a happier, healthier person.
1. Code: The Hidden Language of Computers (Pure Basic: Starting with Binary)
2. Working Effectively with Legacy Code (Dealing with an ugly codebase)
3. Refactoring Improve the design of the existing codebase (Making changes safely without breaking the code)
4. Test-Driven Development (TDD) (Once you’ve learned all the above, you always start writing tests first)
5. Head First Design Principles (Terminology and concepts for maintainable and extendable design)
6. Algorithms to Live By (Algorithms are fundamental ideas before we write any code)
7. Git Pro (Software cannot run without a Version Control System (VCS). We use it every minute of our working day)
8. Your Code as a Crime Scene (Finding problems in the code using code history)
9. Data-Intensive Applications (Databases are everywhere)
10. Software Engineering at Google (Addressing the biggest scaling problems)
Honorable Mentions:
1. Clean Code (Writing code that is easy to understand by other developers)
2. The Soft Skills (Coding alone is not enough to be a great software engineer)
3. Peopleware (Managing software teams).
* Extreme Programming Explained by Kent Beck
* Clean Code and The Clean Coder by Robert C. Martin
* Soft Skills by John Sonmez (1st edition)
* Pragmatic Programmer by Andrew Hunt and David Thomas
* Working Effectively with Legacy Code by Michael Feathers
* The Mythical Man-Month by Frederick Brooks
(Selfish plug) Additionally, I wrote my own book concerning the entire industry, from just starting out to becoming a self employed consultant when you get sick of fulltime work - all soft skills from my decade or so of the industry, as well - https://www.amazon.com/dp/B0B43V1JJW
Others on my list that I think are good books:
* Empowered
* Soft Skills
* Pragmatic Programmer
* Clean Architecture
* Staff Engineer by Will Larson
Basically, find a niche industry (refrigerators, greenhouses, toy cars, whatever), find an audience, think about what they could use, and acquire the skills to give it to them. I used to be an actuary before I did software, I plan on going back to my old companies and contracting myself because I know they have data analytics needs I can meet.
If you want an excellent book on this topic, read "Soft Skills" by John Sonmez. Excellent book for shaping your career.
[1]: https://www.tridentbookscafe.com/book/9781617292392
[2]: https://www.amazon.com/dp/1617292397/ref=cm_sw_r_cp_api_i_gG...