This post is a summary of Never Split the Difference by Chris Voss.
This post is a summary of Chapter 2, "How to work well in teams", from Software Engineering at Google.
Software development is a team endeavor. To succeed in a team, you must reorganize your behavior around the core principles of humility, respect, and trust. What makes or breaks your career is how well you collaborate with others.
I've had the privilege to participate in recruitment in two companies. I've seen a hundred CVs, read dozens of cover letters, and interviewed many applicants. Based on this experience, I can share a few learnings on how to write a good job application.
The Five Dysfunctions of a Team by Patrick Lencioni is a classic in teamwork literature. Recently I've been reading the author's follow-up book The Ideal Team Player. I've only started reading the fable, but I couldn't help taking a peek at the end of the book where I found an interesting self-evaluation test for anyone interested in improving their team work skills. I thought it's quite cool so I'll share it here!
Back when starting my first software development job I thought my success at work would be directly determined by my programming skills. Of course, that's not the case. One can be the most productive and clever programmer in the world, but that alone isn't sufficient for a satisfactory career in software development. You'll need to get along with people, know which problems not to fix, deal with pressure, etc.