CTO - PM's lead mechanic on the team
The machine is either well oiled or it is the time to polish that dusty resume of yours
In a way your head ‘techie’ is a strong arm supporting you on your way as a product person or… he undermines everything you do in every way imaginable.
I see CTOs as chief mechanics on a race track. They are hiring folks, making sure every part has its place and there are no mishaps uncounted for.
There will be troubles - tech fails thanks to drivers, bad monitoring, lousy engineering or the ever-changing environments of operation.
We can’t be perfect but a decent CTO will feel the change just in time to adapt to it.
His/her deeds are invisible - if the machine is well oiled, cooled down and cleaned - you won’t even notice it working. Ungrateful in some way but very true.
A couple of years spent working for startups has taught me a lesson or two about CTOs (or tech leads if the company is slightly larger and the decision horizon has to be scaled down for certain teams/directions).
Your CTO must be thinking about money in longer chunks of time. He knows where the money is coming from, who pays for what and where your key trade-offs are.
If he ain’t getting the picture or tries to dump the solutions onto devs or POs (for God’s sake) - there is something really broken here. I’d think twice about working with someone like that.
There has to be a strategy down to the single line of code to make sure the bus test can be passed with a tiny margin. No silos, no ‘cool technologies no one wants’ or else. The mechanic picks his people based on jobs to be done, jobs these folks are being paid for.
Clearly these folks have to know enough about your product plans, the roadmap & pains you are dealing with.
Your CTO is supposed to have big cojones. This person is supposed to be assertive, mentally stable and quite decent at long-term thinking.
Submissive folks having no say in decisions being made are fake CTOs you can’t rely on.
I have seen many of those being flexible to such an extent that I had to fight higher ranks to keep my coders on the team. CTOs rarely say yes to stupid ideas.
The CTO is supposed to be a mum to the developers working at a company - a fair but strict figure responsible for commotions with business, frictions with product etc; I have seen companies where developers had to deal with it themselves. I don’t have to mention where it all ended, did I? If it mixes up with a pretty standard EU practice of paying loyal employees less than the new ones (as you have to beat other companies’ job offers online) - you end up seeing people leave. But your CTO can hold some of this heat if he/she is a war general, not a paper monkey.
It is CTOs job to make sure the technology choice is stable,consistent and proven. There has to be a stable stack of solutions that proved to work while being well-traversed and understood by the tech folks. This stability will guarantee our core products - the ones making money won’t die if X developers suddenly decide to leave. The cash cows have to be served by the most boring technologies everyone understands (read: boring technologies with tones of answers on StackExchange).
This shared boringness will guarantee shorter lead times, better replaceability and superb infragility.
Quite often I see Team Leads and CTOs implementing technical novelties to make work fun for the developers on the team. While I am respecting the need I don’t think one can be allowed to make short-term flamboyant decisions based on tutorials and hype out there.
Badly transferred knowledge, domain expertise and our beloved tech debt will make future cooperation within the team dull, fragmented and frustrating at best.
By failing to share & structurize our CTOs poison the well for future devs, product & marketing people.
Mutant products and features rarely have their fanbase. Especially if there is no one to support them.
Pay attention to CTOs before you join a company, they are the very depiction of the information system running in there.