CTO Job Description

The CTO role in a young startup is sometimes ambiguous and vague.
This page defines it once and for all!



This doc define the role of the CTO in company _____________________________.
It has no real legal bind and acts solely as a testimony of mutual understanding between the founders.

What is a CTO

According to Wikipedia:

A Chief Technology Officer (CTO), "examines the short and long term needs of an organization, and utilizes capital to make investments designed to help the organization reach its objectives... 
[the CTO] is the highest technology executive position within a company and leads the technology or engineering department."

While defining pretty well what a "CTO" means, Wikipedia fails to actually describe its role and boundaries within a startup. They do not answer the basic question: what does the CTO actually do?

This is off course not Wikipedia's fault, as they are compelled to provide the most broad definition of the CTO, relevant to technological and non technological companies alike. But unlike Wikipedia, here we'll focus on the role of the CTO in a technological startup. This will let us be far more specific and drill down to details.

Note that this doc is a digest of interviews with lots of founders of different companies and fields. While it represent the industry common practices, it doesn't necessarily the best practice for everyone.

So without further ado, here's the definitive, detailed role of the CTO in a startup company!

1. Architect

The CTO is the main architect of the software. This includes:

  • Choosing the technologies, language and infrastructure to build the product with.
  • Choosing the development tools, like IDE, source control, logging, tests, etc.
  • Designing the software architecture, modules, and components.
  • Building the dev roadmap, with coordination with the other founders regarding priority of features.
  • Deciding on coding standards and development protocols.
  • Writing and managing any software related documentation (for example company internal wiki page etc.).
  • Designing the Database. This includes choosing DB solution, designing its tables and data relations, design it to scale, etc.
  • Constantly exploring new tools and technologies to improve development efficiency and product quality.
  • When someone introduce a new tool or technology that integrates with the software or affect the dev cycle, the CTO must examine and approve or reject it.
  • When another founder or employee design a software component or a module, the CTO must review it and suggest changes if needed.
  • The CTO should have the final word on all design decisions, as he is the founder with the deepest understanding of the general architecture.

Exceptions:

Without diminishing the list above, its important to remember that some architectural decisions may have financial or scheduling implications. The CTO should not make decisions that exceed the budget or deadline.

2. Developer

Since it takes some time for a startup to start hiring devs, the CTO must also act as the main (and often only) developer on the team. At least until hires are made. This includes:

  • Developing the product itself, the MVP and other side experiments that the founders decide to test.
  • Testing the product and writing automatic tests when possible.
  • Overseeing any external development force (outsourcing, other founder temporarily coding, etc.).
  • If the startup provides a service or an API, the CTO should constantly monitor and assure its health and quality.
  • Breaking down development tasks and evaluating dev times and release dates. The CTO should also be responsible to learn and improve from scheduling mistakes.
  • Managing releases, tags, and versions history.
  • Developing or providing scripts and tools for the other founders.

As the startup grows bigger and the dev teams expand, the CTO work less as a developer and sometimes stop coding altogether.
The involvement of the CTO in directly writing code should be up to him, provided he has enough time and resources to be coding (or there's a special justification for it).

3. Team Manager / VP Engineering

When the startup only starts to grow and hire, its the CTO's job to manage the dev team and act as the team leader as well as the VP engineering (until those roles are fulfilled). This includes:

  • Breaking down tasks for the dev team.
  • Training new employees and designing training program if possible.
  • Doing code & design reviews.
  • Making sure the dev team produce quality and tested code.
  • Making sure the dev team comply with the coding standards and protocols defined by the CTO.
  • Monitoring the devs progress and making sure they keep up with the roadmap.
  • Doing occasional talks with the team to make sure they are happy and in-sync with the company direction.
  • Building the culture of the dev teams.
  • Overseeing the entire dev cycle, from initial designs to delivery.
  • Helping devs with coding problems and challenges they can't handle. The CTO must be an exceptional developer and a problem solver that the team can relay on.
  • Recruiting and evaluating new hires. New programmers should not be hired without the CTO approval.
  • Being the direct supervisor of the technical staff.

Passing the Team Manager Role

When the dev team grows big enough, usually the role of the team leader is passed down to one of the senior engineers of the team (and sometimes someone from outside is hired for the job).
On the event of hiring / promoting a Team Manager:

  • The team manager would report directly to the CTO.
  • On technical disagreements, the CTO will always have the final word.
  • The level of direct involvement of the CTO in the dev team would be subjected to the CTO choice.
  • The distribution of responsibilities and authority between the CTO and the team manager would be decided by the CTO.
  • The choice of the team manager must be approved and accepted by the CTO.

Passing the VP Engineering Role

When the company grows even bigger its common to hire a VP Engineering to supervise the dev teams (however, its also common for the CTO to remain a part-time VP engineering).
On the event of hiring / promoting a VP Engineering:

  • The VP Engineering would report directly to the CTO.
  • On technical disagreements, the CTO will always have the final word.
  • The level of direct involvement of the CTO in the dev team would be subjected to the CTO choice.
  • The distribution of responsibilities and authority between the CTO and the VP Engineering would be decided by the CTO.
  • The choice of the VP Engineering must be approved and accepted by the CTO.

4. IT

Just like with devs, most startups start without a proper IT team. Its up for the CTO to take up that role until IT is hired. This includes:

  • Setting up and maintaining the company servers, databases, and all external services and tools.
  • Making sure the servers and data are secured and protected against common attacks.
  • Managing things like domains, SSL certificates, CDN, and other server-related and web components.
  • Managing the company's site, landing pages, and other misc services.
  • Helping the non techy founders with their general IT problems.

When the startup grows bigger usually some IT personnel is hired, and report to the CTO.

5. Founder & Executive

With all the roles and responsibilities above its important to remember that the CTO is also a founder and an executive-level personnel, and as such he is entitled to be involved in the strategy planning and big decisions of the company.

Its easy for a CTO to gradually "sink down" into just the architect & dev roles, especially since there's so much work there, but its important that the CTO remains an integral force in the company's direction and be in complete sync with the other founders, aware and part of all major decisions.

While this section may sound redundant, we actually heard a lot of complains about founders that feel their CTO is not involved enough in the company management, or CTOs that sometimes feel "left out" from important decisions. Therefore this section was included.

That's It! Some Final Words...

Its important to remember that every startup has its own dynamics and different founders might want different things.
While this doc define the most common roles of the CTO in a startup, it should be taken as a general guideline and not as a hard set of rules.

With that said, sometimes its important to coordinate expectations upfront regarding the roles and responsibilities of each of the founders. See 'Using This Doc' section for more details.




Using This Doc

If you join a startup as the CTO and you're the only techie guy around, there shouldn't be too many problems regarding expectations and role.
However, if you enter a startup with other techie founders and you choose / get to be the CTO, its important to coordinate and be clear about your role and responsibilities upfront, to avoid uncomfortable collisions in the future.

To do so, you can use this page. Simply click on the button below to get a contract-like version of it, print it, and have the other founders read and sign on it.

It has no real legal obligation but if in the future there are questions about your part and you feel like someone might be stepping into your territory, you can politely show them this mutual understanding you all agreed on and hopefully it will help resolve the misunderstanding in a peaceful way.

To get a "contract-like" version of this doc, click on the button below:

About

This page is the result of an extensive research which included interviewing scores of founders from different roles and companies.
All the statements that appear in this doc are things we heard from multiple sources of different companies. Controversial points that some founders disagreed on or things we heard from only one or very few sources were not included.

We mostly talked with CEOs and CTOs, but few other roles also participated (like CMOs, CIOs etc.).

Every interview began with the following questions:

  • How do you see the role of the CTO in your company?
  • What does your CTO actually do every day?
  • What are the other things the CTO do which are not daily basis?
  • Does your CTO manage anyone? If you don't have any employees yet, will he manage anyone in the future?
  • What are the "privileges" of being a CTO?
  • What are the duties of being a CTO?
  • Where do you see your CTO in the future?
  • What do you think the CTO loves about his job?
  • What do you think the CTO hates about his job?
  • How does the daily interaction between the CTO and the other founders looks like?
and those who were more talkative were also asked about statements from other founders and whether or not they agreed with them.

Got any questions? Feel free to contact us at whatiscto@gmail.com.


Signatures

We the founders agree that we've read and accept the role of the CTO as described in this doc.
Name & Role: __________________________ Signature: __________________________ Date: ________________
Name & Role: __________________________ Signature: __________________________ Date: ________________
Name & Role: __________________________ Signature: __________________________ Date: ________________
Name & Role: __________________________ Signature: __________________________ Date: ________________

Note: if the doc ended up taking more than one page its best that everyone sign the bottom of every other page as well.