When founders and CEOs are building a fast growth business the search for talent is endless and critical. As most companies are tech companies these days, even within more traditional sectors, stands to reason that the search for tech talent is particularly challenging.
One of the main problems is that technologists have to learn a completely different skill set when performing in a senior and executive role than the skills they’ve developed through their career.
These are some of the reasons why some very talented developers, don’t always make good CTOs and the skill set they need to acquire to bridge the gap …
1. The CTO role need not be precise
When programming, it either works or doesn’t. There may be different languages, frameworks, algorithms and methods but it is pretty much black and white as to whether the results work!
Programming is a science in that it is truth.
Being a CTO is not. Softer, management skills are not as easy to measure and define but to make a success of that move from technical to managerial you have to start judging whether something is good enough, and this may not become apparent for several weeks or even months.
2. No one is better than me at programming
Many developers we’ve worked with over the years are the “best at their programming specialty”. They know better than anyone else and often they’re the key player in the team.
That’s difficult to relinquish. The art of delegation doesn’t come quickly. Sometimes you have to restrain yourself from rolling up your sleeves and doing it yourself. But you have too. Letting go of the programming reins is very hard but very necessary if you’re going to become an effective tech leader.
3. Lack of exposure to other areas
Most technical people spend their career working with other technical people. One might suggest we work in a bubble. Arriving into senior management means removing yourself from that silo and being able to work across departments, with different stakeholders and communicating with people who are not technical. This requires a certain skill. The language and approach of being a CTO, is likely to be very different to that of dealing with your own team so you need to become a chameleon.
4. No understanding of finances
This is more than just a budget.
An effective CTO should understand cost of employees, the effects of delays, cashflow and investment rounds. They are not expected to understand the full details, but they should understand the language and where any red flags might be emerging.
Most of us as developers had little or no experience or exposure to this area of the business, let alone the mechanics and the nuances.
5. Too interested in the minutiae
A CTO needs to build an effective team they can trust and should not be distracted by the minutiae of tasks but they do need the processes and systems in place to ensure tasks are completed. As a developer you will often keep at it until it is solved. A CTO needs to put in place the people and processes to actually make it happen.
6. Lack of people and communication skills
The developer will be used to dealing with colleagues in a certain way.
CTO responsibilities mean you have to deal with many different people, roles and challenges. Increasingly you’re involved in the marketing and sales process, dealing direct with customers and feedback. This requires an ability to communicate and read a room. Communication is not just the process of language and articulation, it’s also understanding what that audience and that group of people need. Conducting a presentation rich in technical acronyms, is likely to go down like a chocolate fireguard in front of an audience not familiar with that language.
Without some people skills and the ability to communicate, a tech leader can easily alienate those inside and outside the business.
7. CTO in name only
We see this happen quite often where by luck, design or circumstance the star developer finds themselves in a quasi CTO role. We call it the ‘Accidental CTO’. Doesn’t mean they can’t do the role, but it does mean they’ve been parachuted in more quickly than expected. A classic example we see often is an early stage company coping with rapid change and losing key people. New CTO required? OK, let’s promote our star developer.
Can they adapt or is it short term thinking for an unhappy ship?
From our experience, most can adapt but you need to be careful managing the process and be wary if you’re that developer about what’s expected of you.
8. Lack of understanding of the resources required
A skilled CTO will hire the staff required and not the staff they like.
They will use the software and hardware that is best for the business and not their favourite and preferred.
They will regularly check whether they have the right mix of resources.
A naive CTO who decides otherwise will always be firefighting.
9. No experience of management structures and norms
Now this could be a good thing. In some companies you need to kick into touch their norms and reporting systems and endless meetings.
But for many who get promoted quickly it can be an intimidating environment even just attending their first board meetings.
Understanding how to interact with fellow executives, the different pressures they’re under, and the basics of listening and collaboration are not always skills that come naturally to many developers.
What is the power structure? Who are the hawks and who are the doves? How do you ensure you get as much as you want from these senior powerplays? What role and say does a chairman, NED or investor director have?
A basic understanding of these nuances is an absolute minimum for CTO training and for those aspiring to succeed at the top table.