by kanodiaashu on 12/29/23, 9:18 AM with 142 comments
by elmarschraml on 12/29/23, 10:06 AM
Does "CTO" mean you are the tech lead of a small (single team) engineering organization? Then everything written for staff engineers applies. E.g I've heard good things about "Staff engineer's path" by Tanya Reilly.
Does "CTO" mean you are leading an org that is too large to be hands-on with tech, and need to build an effective structure and culture? Then I second the recommendation for "an elegant puzzle" by Will Larson.
Or does "CTO" mean that you switched from being an engineer to managing a team of engineers? Then everything for new managers applies, for starters I'd recommend "Becoming an effective software engineering manager" by James Stanier, or "Engineering management for the rest of us" by Sarah Drasner.
For some good general material, I'd also recommend the resources that Gergely Orosz makes available for subscribers to his "pragmatic engineer" newsletter. Those are templates for the kind of documents and processes you will most likely need - if you're new to the role, you will not go too wrong by using them, and if you want to create your own they are excellent starting points.
by pixelmonkey on 12/29/23, 11:45 AM
The team wrote web / SaaS / analytics software in Python and JavaScript, deployed on Linux + AWS, using lightweight planning tools like GitHub and Notion. It was also a fully distributed team long before the pandemic. Over time, the company (Parse.ly) gained hundreds of enterprise customers and established itself via profitable growth in a straightforward SaaS business model. In 2021, less than a year after this blog post was published, the company was acquired by one of the largest open web internet companies (Automattic, creators of WordPress.com).
"Managing software teams: the definitive reading list"
https://amontalenti.com/2020/11/28/definitive-reading-list
The blog post is organized into a few sections, each featuring a few relevant books:
- Management as a high-leverage activity
- Product marketing and product management
- Debugging dysfunctional product cultures
- The psychology of deep work
- Fully distributed teams
- Programmer mindset and philosophy
It's easy to skip around to find a good starting point or make your own (smaller) reading list. Hope that helps. Good luck!
by simonebrunozzi on 12/29/23, 11:32 AM
You should instead TALK to long-time or former CTOs and ask them for advice. You won't find that advice in any book. It's invaluable.
by rdli on 12/29/23, 2:59 PM
I’ve been an exec, founder, CEO, and board member at various stages of successful (IPO) /unsuccessful companies (acqui-hire) companies. And the common thread at every stage is that the most successful companies had management teams that worked well together to optimize for the business.
So instead of spending your energy on reading / learning more about tech, I’d recommend you spend your energy learning more about business (I’d probably start by asking the CEO & the rest of the mgmt team for advice on what to learn.)
by mobiuscog on 12/29/23, 10:37 AM
So many managers and higher fail terribly at being effective because they believe all they need to do is encourage/enforce the practices in the books on the engineering teams, and that is the path to failure and the death of morale.
Take the books as guidance, but listen and engage with your reports (and their reports) to find the problems that need to be solved. Don't dictate or drive people, let them use their expertise in the direction you lead.
by CityOfThrowaway on 12/29/23, 9:49 AM
https://www.amazon.com/Tom-Demarco/dp/0932633439/?nodl=1&dpl...
by rramadass on 12/29/23, 2:35 PM
1) Behavioural Psychology - https://en.wikipedia.org/wiki/Behaviorism
2) Organizational Behaviour - https://en.wikipedia.org/wiki/Organizational_behavior
3) Evidence-based Management - https://en.wikipedia.org/wiki/Evidence-based_management
by CountVonGuetzli on 12/29/23, 5:01 PM
An Elegant Puzzle: Systems of Eng Management (https://lethain.com/elegant-puzzle)
and
The Art of Leadership, small things done well (https://www.amazon.com/Art-Leadership-Small-Things-Done/dp/1...)
There are a lot more that were helpful to me, but those two encompass most of the important concepts and skills already in a usefully synthesized way, at least for me.
by mikey_p on 12/29/23, 8:24 PM
I can't stress just how good this podcast is, all of the guests are excellent. Here's a brief highlight of my favorites:
- Michael Nygard, SVP of Enterprise Architecture, Sabre - brilliant breakdowns of how to approach software problems conceptually
- Dr Steven Spear - tons of excellent stuff from years of studying Japanese management techniques
- Elisabeth Hendrickson - has been studying testing and QA for decades, tons of great insights
- Scott Havens - incredible breakdown of the inventory management system of jet.com, acquired by Wal-mart and now powering walmart.com
by svilen_dobrev on 12/29/23, 4:07 PM
Eye-opener (worst take away / for me - you can't be friends with devs-under-you anymore. Or with anyone techie it seems. Probably depends on company-founders' culture - if small and new - or politics - if older and/or bigger)
some more of hers here: https://skamille.medium.com/an-incomplete-list-of-skills-sen...
Also.. you can't be everything. Choose your poison (or if it has been pre-chosen, find out what it is sooner than later), hire other people for other stuff:
https://www.allthingsdistributed.com/2007/07/the_different_c...
more on the topic:
https://news.ycombinator.com/item?id=20642423
And... think/assess very-very well - all-the-time - How much trust you have got.. and for what. YMMV. Sometimes "CTO" is only a parrotizing label for investors to flock on. Sometimes it's for real.
have fun
by budgi4 on 12/29/23, 11:10 AM
by WillAdams on 12/29/23, 1:29 PM
Contrast it with: https://www.folklore.org/MacBasic.html
and the early history of VisualBASIC (and wonder how things might have played out had the Mac had a nice development environment out the gate)
and for management interactions see: https://www.joelonsoftware.com/2006/06/16/my-first-billg-rev...
by EwanToo on 12/29/23, 10:25 AM
The Personal MBA: A World-Class Business Education in a Single Volume https://amzn.eu/d/dTAp1GF
by OliverJones on 12/29/23, 12:24 PM
Read about what not to do: _The Ultimate Question_ by Fred Reichheld. This book is about the notorious Net Promoter Score. (Would you recommend HN to a friend? Would you? Would you?) Reading it will give you insight into how bonehead MBAs with Cs in their marketing classes can convince leadership they've come up with a good way to measure customer satisfaction. (Net Promoter Score works fine for competitive businesses selling commodity products -- rental cars to individuals for example -- but not for many places where it is now used.)
by rnjailamba on 12/29/23, 12:49 PM
- An Introduction to General Systems Thinking
- Becoming a Technical Leader: An Organic Problem-Solving Approach
So that you have a good answer to "when will it be ready"
- Software Estimation: Demystifying the Black Art
- Agile Estimating and Planning
People management
- The Manager's Path: A Guide for Tech Leaders Navigating Growth and Change
- High Output Management
Besides Mythical Man Month already mentioned in other comments.
by diegof79 on 12/29/23, 2:21 PM
As someone who went from engineering to product design, I observe that CTOs without a product vision are challenging to work with. For example, at a previous company, a CTO tried to implement the hard rule that every UI component should be in the shared UI library. But, even when I was leading the design system, that rule didn’t match how a product design process works. It caused delivery slowdowns and a degradation of the UX. I can bring up other examples, and the typical pattern is a leader looking at only one aspect or two without balance. Try to go beyond engineering and learn more about business and product design, which will help you prioritize engineering decisions. Some product-related books: Inspired by Cagan and Well-Designed by Kolko. Beyond engineering and product, as a C-level executive or director, people and hiring will be your primary concern. There are many management books, and I don’t have any particular to recommend (all of them will provide tools, but none is perfect: The Advantage and The Five Dysfunctions of a Team by Lencioni, The Phoenix Project by Gene Kim). I also enjoy taking ideas from biographical stories like Creativity Inc. by Ed Camull or Creative Selection by Ken Kocienda. Finally, a book I found funny and cynical but depicts big corps very well is “Management Stripped Bare” by Jo Owen.
by tgtweak on 12/29/23, 3:48 PM
One I find no trouble recommending regardless of these however is High Output Management by Andy Grove (of Intel). Not a new book, but chalk full of what I consider absolute truths when it comes to optimizing middle management (which is predominantly your role as a CTO, once the org reaches 50+ people and your direct reports all have direct reports). The fact it is still very relevant to organizational challenges today when it was written 40 years ago is a testament to this. It is a shame there are so few books that focus on this very-ignored (and honestly largest) segment of management and arguably where you get the most traction as a company.
I've yet to meet two CTOs that share the same skillset or strengths, or who work in the same org structure.
I would recommend doing some executive courses and trainings (with our other execs) to learn some common language and techniques/methodologies around team management and execution - this has been the thing which helped me most in embracing a CTO role (even one with other CTOs from separate business units reporting into). It is ironic but the best blend for a high level CTO is actually people and organizational skills moreso than pure technical aptitude. You need to be able to fact check your people and ask the right technical questions and understand the fundamentals of technical debt and TCO analysis, but honestly you'll be using your people/organizational skills and trying to hire people that know the technology better than you for the most part.
by ipnon on 12/29/23, 3:26 PM
[0] https://press.stripe.com/an-elegant-puzzle [1] https://lethain.com/eng-execs-primer/
by eddyzh on 12/29/23, 9:57 AM
by zoenolan on 12/29/23, 2:12 PM
by mysterydip on 12/29/23, 1:42 PM
Coincidentally, a quote from Ycombinator CEO Garry Tan on their site: You’ve got to find your own window of opportunity. Game Thinking is your instruction manual.
by oneplane on 12/29/23, 11:06 AM
There is of course a GitHub list for this: https://github.com/kuchin/awesome-cto and perhaps the best way to find out what you need is to check things off of that list that don't actually have anything to do with what you're actually working on. Role names generally have very little meaning on their own, it's all about context.
by TheGuineaGhost on 1/5/24, 6:00 PM
by foxbarrington on 12/29/23, 3:46 PM
As an example, here's the chapter on estimates: https://superstruct.tech/blog/estimates
by thiago_fm on 12/29/23, 10:08 AM
Get a mentor, read books about dealing with people in the most optimal way for you and the business (closing deals, negotiation, psychology etc).
Also learn how to develop people. There are a few books on this, but nothing beats experience and being reflective about it. Every situation is specific and it's up to you to strategize how to develop people in your team, finding out what are the right buttons to push.
by elbi on 12/29/23, 1:14 PM
by kozak on 12/29/23, 9:51 AM
by ratg13 on 12/29/23, 10:19 AM
Your best bet is to see if your company is willing to pay for you to take some Dale Carnegie classes (Specifically the ones on Effective Communication). It will help you more than anything technical.
by tivert on 12/29/23, 8:11 PM
https://www.amazon.com/Peopleware-Productive-Projects-Teams-...
It's a classic, and also a pretty easy read. If you're in technology and haven't read it yet, you should.
by stargrazer on 12/29/23, 12:29 PM
https://github.com/kuchin/awesome-cto - A curated and opinionated list of resources for Chief Technology Officers and VP R&D, with the emphasis on startups and hyper-growth companies.
Someone else beat me to the link.
by gwnywg on 1/2/24, 8:42 AM
From my exp CTO in small startup is marketing tool and it does not mean real "the CTO". In small org CTO is simply "do it all in no time" type of job, that includes hands on coding, infrastructure, but also hiring, overseeing and managing people. You also need to understand code lifetime and methodology of your choice, how to use it to provide good enough time estimates. And all of this will lead you to be probably replaced once organization grows.
by onion2k on 12/29/23, 10:57 AM
by jantypas2 on 12/29/23, 4:21 PM
by bigtechdigest on 12/30/23, 8:26 AM
by Oras on 12/29/23, 11:47 AM
If you don’t get to this point, the startup will die. So spending time optimizing the performance or arguing which code formatting standards to follow is just a waste of time and resources.
by AC_8675309 on 12/29/23, 7:12 PM
Sorry, not a helpful answer...
by emmanueloga_ on 12/29/23, 9:57 AM
by 0x54MUR41 on 12/30/23, 6:41 AM
edit: the book was already mentioned by mattferderer [1].
by VPenkov on 12/29/23, 4:36 PM
https://github.com/kuchin/awesome-cto
Some hit-and-miss there but I discovered a lot of great advice.
by degradas on 12/29/23, 10:30 AM
by leandot on 12/29/23, 1:10 PM
Books and blogs have a limited anecdotal value (sometimes it is high but the effort is also high). I’ve learned more from individual HN comments and actual work experience and mistakes than any book.
by cientifico on 12/29/23, 9:50 AM
by mooreds on 12/29/23, 3:59 PM
CTOlunches.com, which is an in-person group that meets for lunches around the world. It also has an active mailing list, with hundreds of engineering leaders there.
The rands leadership slack (Google for it) is an invite only slack with thousands of engineering leaders across the world. Great for asynchronous conversations across a wide variety of topics; they even have an anonymous q and a channel.
by huqedato on 12/29/23, 11:10 AM
by huqedato on 12/29/23, 12:24 PM
by nemanja_codes on 1/1/24, 3:29 PM
https://github.com/kuchin/awesome-cto
Maybe I have few more useful links here:
by wslh on 12/29/23, 9:59 AM
What kind of startup you want to build and in what field? Knowing more details about the challenges you will face help to narrow the focus to specific knowledge and skills.
by koliber on 12/29/23, 3:11 PM
by lifeisstillgood on 12/29/23, 1:11 PM
by jakderrida on 12/29/23, 2:42 PM
by TDiblik on 12/29/23, 12:53 PM
romance: i would suggest "Looking for Alaska" by John Green or "Pierre et Luce" by Romain Rolland
fantasy: The Way Of Kings by Brandon Sanderson or "Blackout" by Marc Elseberg
life advice ig?: "The Algebra of Happiness" by Scott Galloway
... never been a CTO xd
by apples_oranges on 12/29/23, 10:32 AM
by feoren on 12/29/23, 7:47 PM
by jdalsgaard on 12/29/23, 1:05 PM
by mrtimo on 12/29/23, 3:07 PM
The students like a book called "Adventures of an IT leader". It's a fun read that students with work experience can relate to. And students without work experience can learn a lot from.
by jeanloolz on 12/29/23, 10:39 AM
by max_ on 12/29/23, 7:58 PM
by pablobaz on 12/29/23, 11:38 AM
This is a great book for larger team sizes.
by gorbachev on 12/29/23, 10:56 AM
by FourthProtocol on 12/29/23, 1:59 PM
Often overlooked is dealing with power and politics (https://www.wittenburg.co.uk/Work/Politics.aspx)
Keeping up to date on tech also important, especially at the tech lead/architecture level (https://www.wittenburg.co.uk/Work/Mentoring.aspx).
by sergioisidoro on 12/29/23, 9:55 AM
by krishadi on 12/29/23, 10:46 AM
by brightball on 12/29/23, 5:14 PM
If you’re building, I’ll echo other commenters…stop reading and go code.
For just about any advice I’d say go read Rework, in between coding sessions.
by emmelaich on 12/29/23, 11:22 AM
by esseti on 12/29/23, 11:24 AM
The mom test - how to discover product
The EOS (Traction and Co) - how to manage the company and give direction to the vision of the company
by coolThingsFirst on 12/29/23, 11:57 PM
by throwaway81523 on 12/31/23, 2:15 AM
by alberth on 12/29/23, 5:19 PM
CTO skills needed for a 10-person company is radically different than a 10,000-person company.
by Omroth on 12/29/23, 9:53 AM
by mattferderer on 12/29/23, 8:45 PM
by lnsru on 12/29/23, 11:08 AM
by RecycledEle on 12/29/23, 8:13 PM
Learn to do every technical job in your company.
by jrflowers on 12/29/23, 10:32 AM
by erikstarck on 12/29/23, 10:31 AM
by pknerd on 12/29/23, 11:00 AM
- Dev/ML/X Ops
- System Architecture
- DB design? etc?
by demon-code-999 on 12/29/23, 5:36 PM
by graycat on 12/29/23, 9:13 PM
I have the software written, and it appears to run as intended. Now, doing computer systems management, silly stuff; main problem, getting past bad documentation, e.g., was just up all night working with video adapters, device drivers, display resolution, font scaling, HDMI, display port, flickering cursors, etc. Since the documentation was so bad, I did take some notes on the more important things I learned, e.g., by the TIFO (try it and find out) Method. The results are not perfect but are good enough for now. I can delay more until the business is growing nicely (if it ever does). That is, for now concentrate on giving people "something they want" and put video issues way down on the TODO list.
But a concern: If such silly technical stuff does go well, then I could be going live on the Internet fairly soon. Then some of the issues might be:
(1) publicity and getting the first users
(2) getting advertisers
(3) billing and accounting
So, from this thread and a few hours at Google this week, I just concluded: For nearly all that stuff, nearly every business has to do it. So, there are well polished options for how to do it, and I can put it low on the TODO list for now.
For what to do if the business starts to grow, I saw some of that at FedEx and elsewhere. Right, as in this thread, focus on providing "what people want", the work, and the revenue. E.g., if I get a lot of users, then that should help getting some advertisers. Then will need billing and accounting, and, uh, there is no shortage of people who can provide such services for me -- getting the revenue is the hard part; given the revenue, it stands to be easy to work with an accounting service! Or, for a lot "I don't know how to do it, but there are plenty of people who do."
In particular, for management and in particular engineering management, I've seen, been in, and done some of it and conclude now that my business will be nicely successful before I will have to look into the theories of it. In particular, I saw several cases of guys really eager to work hard, occasionally all night, get good stuff done, with no credit from any management.
For the core technical stuff, my efforts have some of that, and it should be a business advantage, uses some of my experience and Ph.D. in applied math, I would say beats AI, and easy for me -- early on in the effort I wrote up the math in Knuth's math word processing TeX. Then used the write up when I wrote the code (Windows, IIS, .NET, ASP.NET, ADO.NET, platform invoke, etc.). So, the core technical stuff is done, not even on the TODO list! On with the rest with the balances as often in this thread.
by smk_ on 12/29/23, 12:46 PM