This is an incredible book, and I would highly recommend it for anyone who is at all interested in technical leadership at any level.
It focuses very specifically on the challenges of combining technical focus with leadership and/ or management, and steps through roles from hands-on development, through mentoring, tech lead and various levels of engineering manager all the way up to CTO. Along the way, it gives a realistic and well-thought-out sense of what these roles are (and are not), how they differ from lower roles and from subtly different roles at a similar level, and how to succeed at them.
The most interesting thing I took from it though was that the understanding you can gain about the hierarchy of technical leadership roles is useful at all levels, including what we would call “individual contributor” roles (i.e. doing technical work with no direct reports). Engineers at a relatively early stage in their careers can benefit from the first few chapters, which cover what to expect from your own manager, how to start mentoring and how to consider whether long-term you are more interested in management or technical tracks. Equally, having done some low-level management over the last couple of years and now seeking to return to more of a senior technical/ architecture role, I still found the later chapters (about senior tech management roles) fascinating, because I know that even if I never take on those exact roles, understanding the responsibilities and thought processes of those who have them will make me much more effective in working with them and advancing my own ideas.
As an engineer who has stayed in engineering for the last 20 years this book was a read through the many episodes of my career and those of my colleagues.
It is a map of non engineering career moves in an engineering career.
It moves through many stages, however uncomfortable, an engineer may find themselves in. How to seek out more responsibility, how to just quietly test the water, or jump head first into a more senior role.
Too many engineers seem to move in senior positions now that simply haven’t put the time in to understand the nuances of business, of people, and of social interaction on all levels. Just because you’re an amazing python programmer shouldn’t be a promotion to looking after the team.
All management should make their engineers read this who aspire to lead, no matter if in projects or with people.
This content was originally published here.