
In a perfect world, those who produce the best code are the most successful. But success also depends on how you work with people to get your job done. This book covers the basic patterns and anti-patterns for working with other people, teams, and users while trying to develop software.... Writing software is a team sport, and human factors involved have as much influence on the outcome as technical factors....--From back cover.
I will recommend the following books. But more than books, you will probably require real talk with other people who are experienced in their sectors related to your tech stacks.
1. "The Phoenix Project" by Gene Kim, Kevin Behr, and George Spafford - This book provides a fictional narrative about transforming an IT department, offering valuable insights into DevOps practices and the challenges of scaling technology within an organization.
2. "Team Geek" by Ben Collins-Sussman and Jennifer Greene - As a CTO, managing and leading your engineering team is crucial. This book focuses on building effective engineering teams, fostering collaboration, and maintaining a healthy work culture.
3. "High Output Management" by Andrew S. Grove - A classic in management literature, this book offers timeless wisdom on organizational management and leadership, with a focus on achieving high performance and scalability.
4. "The Lean Startup" by Eric Ries - As a ScaleUp CTO, you'll likely need to embrace innovation and growth. This book introduces the principles of lean startup methodology, helping you navigate the challenges of scaling your company.
5. "Continuous Delivery" by Jez Humble and David Farley - Scaling your technology infrastructure while maintaining a robust and efficient development pipeline is crucial. This book delves into the principles and practices of continuous delivery and automation.
6. "Inspired: How to Create Products Customers Love" by Marty Cagan - If your role involves product development, this book is a must-read. It provides insights into building products that resonate with customers and can scale effectively.
7. "Zero to One" by Peter Thiel - This book offers unconventional wisdom on startups and innovation, challenging traditional thinking. It's particularly relevant if you're leading a company in a competitive market.
8. "The Innovator's Dilemma" by Clayton Christensen - A classic in the field of innovation and disruption, this book can help you understand why successful companies often fail to adapt and how to navigate disruptive technologies.
9. "Good to Great" by Jim Collins - Scaling a company to greatness is a common goal. This book explores the factors that distinguish great companies from good ones and offers insights into leadership and strategy.
10. "Crucial Conversations" by Al Switzler, Joseph Grenny, and Ron McMillan - Effective communication is key for leadership success. This book teaches you how to have difficult conversations and resolve conflicts constructively, which is essential in a leadership role.
These books cover a wide range of topics, from technology management and leadership to innovation and personal development. Depending on your specific challenges and interests, you can select the ones that resonate with you the most to help you excel in your role as a ScaleUp CTO.
That, and "Team Geek", in term of relationship with codes and teammates.
It's written in that infuriating cutesy techy-language that seems to infuse a lot of the "hipper" books of this genre but there really is some good advice in there.
FYI these are the guys that did Subversion, which was a pretty successful project for a while, back in the day. This same writing style pervades the SVN docs as well. Yeuch.
In the same vein, I also enjoyed "rework" by Jason Fried [1] though that's more about modern work, than purely management. Also kind of "hip" in style, but not so insufferable ;-)
The "handy rule" from the book Team Geek -- the newer edition is called Debugging Teams[1]. It's from chapter "Offensive versus Defensive work":
[...] After this bad experience, Ben began to categorize all work as either “offensive” or “defensive.” Offensive work is typically effort toward new user-visible features—shiny things that are easy to show outsiders and get them excited about, or things that noticeably advance the sexiness of a product (e.g., improved UI, speed, or interoperability). Defensive work is effort aimed at the long-term health of a product (e.g., code refactoring, feature rewrites, schema changes, data migra- tion, or improved emergency monitoring). Defensive activities make the product more maintainable, stable, and reliable. And yet, despite the fact that they’re absolutely critical, you get no political credit for doing them. If you spend all your time on them, people perceive your product as holding still. And to make wordplay on an old maxim: “Perception is nine-tenths of the law.”
We now have a handy rule we live by: a team should never spend more than one-third to one-half of its time and energy on defensive work, no matter how much technical debt there is. Any more time spent is a recipe for political suicide.
- "Being Geek: The Software Developer's Career Handbook" https://www.amazon.com/Being-Geek-Software-Developers-Handbo...
- "Team Geek: A Software Developer's Guide to Working Well with Others" http://shop.oreilly.com/product/0636920018025.do -- Software engineering teamwork a-b-c. I'd love to work on teams where everyone has read this one.
[edit: 2nd edition of "Team Geek" is titled "Debugging Teams"; having read both, no difference which you get]
- The Phoenix Project by Gene Kim, Kevin Behr and George Spafford (IT Revolution Press, 2013)
- Manage It! by Johanna Rothman (Pragmatic Bookshelf, 2007)
- Team Geek by Brian W. Fitzpatrick and Ben Collins-Sussman (O' Reilly, 2012)
- Managing Humans by Michael Lopp (Apress, 2012)
