Books for software engineers and managers
How strongly do I recommend Wooden on Leadership?
8 / 10
Although it helps, you don’t need to understand or appreciate basketball to learn from John Wooden.
To my mind, reading Wooden on Leadership falls in line with the concept of studying excellence more than failure, as presented in First, Break all the Rules.
I’ve seen this play out on every single team I’ve been a part of, for better and worse. In sports and software engineering.
Your team will match your energy, your style, and your values. At least what they can discern of those things.
As Wooden points out, many leaders need a reminder to demonstrate their values. Talking about them isn’t enough. Act.
This book opens with an introduction to Wooden’s pyramid of success, identifying 15 building blocks of successful individuals and teams. In the pyramid you find blocks like Initiative, Poise, and Competitive Greatness.
Of the pyramid Wooden writes, “The ultimate role of the Pyramid was not to produce championships; championships were a by-product. Rather, it provided directions for reaching one’s own ultimate level of excellence as part of a team or as a leader of the team.”
Wooden makes two points here:
At TrainHeroic, our company motto is Be Your Best. Although it’s marketed toward our customers and users, Be Your Best is equally applicable internally. It’s what I want for each person on my team and within the whole company
The Peter principle says that people tend to rise to their level of incompetence. In software, that often means a great engineer is promoted to manager and fails miserably.
Of course they fail. Most managers don’t receive any training. Most managers don’t get coaching from their manager. Most managers don’t even realize people management is a skill you can learn with dedicated effort.
The strongest evidence for Wooden’s commitment to learning the skill of coaching lies in the extensive photos of handwritten notes from Wooden taken during his coaching career.
Notes on what works, what doesn’t, principles, strategies, tactics, it’s all there. Reflection is critical for engineering managers especially because so many fail to receive timely and critical feedback.
Wooden writes, “Those under your leadership must be taught that little things make the big things happen. In fact, they must first learn there are no big things, only a logical accumulation of little things done at a very high standard of performance.”
In the code test I send out to job applicants, I include a bulleted list of standards including:
About 25% of applicants fail to meet this standard, even though explicitly told their performance would be judged against it. More experienced candidates fail this standard almost as often as junior candidates.
This might sound harsh. Syntax is easy to learn, right? Or couldn’t we just use a linter? Of course we could. But that’s not the point.
I care about consistent formatting because I know my customers implicitly demand attention to detail. They demand buttery smooth UI interactions, fast API responses, and edge cases covered. My team also demands attention to detail from their coworkers and I won’t let them down by hiring someone who can’t meet the bare minimum consistent formatting requirements.