Chief Technology Officer (CTO) - is an important person in your startup, especially if you have zero tech-related knowledge. The fact that there’s a word “technology” in the title may be a bit misleading. A good CTO has to have more than only tech skills. There are at least 4 fields in which your CTO should have expertise.
In today’s article, we’re going to talk about the most important ones based on our experience. Also, you’ll find samples of questions you can ask your CTO to verify if he’s the one you need. Let’s begin!
A lot of people think that there’s a binary distinction between CTO and CEO. CEO takes care of business aspects while CTO supervises a development team as well as makes key technological decisions. In real life, it’s not that easy. When it comes to a good CTO, he has to help CEO with solving business problems by choosing the right technology for the startup.
Business Model Canvas shouldn’t be just some weird combination of words. CTO has to have at least some basic knowledge to be able to understand the business direction your startup is following. He should understand why it’s important to deliver the project to a market in 4 months, instead of spending 1 year polishing the code.
In the very beginning, if you have no employees in your newly-founded company, you might miss the fact that you’ll need to manage a bigger project with more people involved in the future. It doesn’t matter if you’ll have your in-house PM and developers or you’ll outsource development to a software house, your CTO needs to understand how the most popular project management methodologies work. “SCRUM”, “Kanban”, “Waterfall”, “Agile” - these shouldn't be some magic spells from Harry Potter universe. A good CTO has to be aware of what such terminology as “backlog”, “issues”, “user stories” etc. mean.
If you’re planning to work with a software house - I recommend you to read an article written by our CTO Wojciech Krysiak - Why Do You Need a Tech Person When Working With an Outsourcing Company?
A lot of people think that when it comes to soft skills - it is a prerogative of the CEO. They miss one simple detail, though. It’s much easier for a CTO to understand the technical language than it is for a CEO (of course if a CEO is not technical, otherwise the problem fades away). A good CTO has to have well-developed soft management skills. He will be dealing with motivation, feedback and communication with a tech team. Responsibility to establish great communication in the company lies on a CTO’s shoulders.
And last, but not least - technology. The area in which a good CTO has to be particularly good at. And by that, I don’t mean that he has to be fluent in every aspect of the technology that is being used in a startup or language that is being used to write an app. No.
A good CTO has to help his team solve their problems and in order to do so he must understand “how things work”. If, for example, we’re developing a web platform - you should know if he had any experience with web development. If yes: How many users the platform was made for? What was the scale of the project etc.? Same rules apply to mobile, desktop and any other kind of software development.
Technology-wise, there are 3 main areas of expertise highlighted by our CTO, Wojciech Krysiak, that a good CTO has to be competent in.
When it comes to responsibility for the quality of the code, CTO is the one who’s going to take a hit. For that reason, your CTO has to know how to use version controlling and such tools as Git or Mercurial. Going through the code and understanding what’s going on there is a must-have skill for a good CTO.
- What is inversion of control?
The second very important part of any IT project is the architecture. There are many different architecture patterns that may be used in a project i.e. MVP, MVC, MVVM, DDD and your CTO has to be able to tell the difference and understand why the particular pattern is used in a particular case.
Design patterns (creational, structural, behavioral), algorithms and data structures, APIs - these are also areas in which your CTO should have at least basic knowledge.
- What REST API is used for?
- What are the cons of MVVM architecture?
Since the technology is moving to the cloud, your CTO has to understand how cloud-based systems work, so in case you need to move your project from one system to another, he will be capable of planning, supervising and maybe even executing the entire process.
- What is nginx?
- What is AWS and what kind of services did you use?
When it comes to picking the right CTO, you must make sure that he/she has the knowledge and skills in the areas listed above. If you’re not sure how to check some of the aspects, you can contact us and we’ll give you one of our lead developers for a 30-minute interview with your candidate. Just drop a line to our CEO Krzysztof Marszałek at firstname.lastname@example.org and we’ll make sure you have a highly professional CTO on board.