Coding With Fun
Home Docker Django Node.js Articles Python pip guide FAQ Policy

Why don't CTO, technical directors, architects write code, and they're so good?


May 30, 2021 Article blog


Table of contents


Often asked the question: CTO, technical director, architect rarely write specific code, why is it still very, so high pay?

In fact, the problem itself is wrong. I t's like asking: Why don't directors and producers understand acting and can direct actors as if they're better than actors? In fact, it is not difficult to understand, the director, producer's core ability is not acting, how can it be compared with the actors?

Answering the previous questions, the logic is the same, and the ability to write code with ICOs, technical directors, architects, and programmers is a mistake in itself. Because their core competencies are different.

The core competencies of CTO, technical director, and architect are technical judgment. Simply put, it is to judge whether a project, a system architecture, a certain technology direction, whether it is in line with the current situation of the enterprise, whether it has value for the future of the enterprise.

The core competence of programmers is the ability to write code. Is to do specific code implementation.

So the CTO/Technical Director/Architect, unlike the programmer's core competencies, is completely different and cannot be directly compared.

Often we say that CTO, technical directors, architects are, referring to their technical judgment, not their ability to write code. Instead, they may not be as capable of writing code as a veteran programmer.

However, the technical judgments they make bring very high value to the company. /b10>For example, Alibaba Cloud founder Dr. Wang Jian, when everyone opposed it, he insisted that cloud computing is the future, helping Ali lay out cloud computing ahead of time, for Ali to grow into a trillion business empire, set up a sweat horse credit. This is the technical judgment, to bring great value to the enterprise.

One of the reasons why it's easy to confuse these roles and their responsibilities is that CTO, architect, technical manager titles are often awarded to technical leaders. T his phenomenon is particularly acute at home.

For example, the technical head of a start-up company is actually a technical manager. T he boss had to give him a CTO title in order to appear tall. This situation is very common, especially in the years when the whole people started their own businesses, all over the CTO.

In order to clarify the responsibilities of the technical person in charge, we take the growth of an e-commerce company as an example to explain what kind of technical person-in-charge the enterprise needs at different stages of start-up, development and maturity, and what they are doing.

The first stage, senior programmers

Enable complex functions to solve technical challenges

A start-up, usually with only a few programmers, not even a product manager or project manager, the boss himself is the product manager, the idea with the developer, quickly prototype.

If this phase is not satisfied with the ability to develop, then probably all that is needed is a senior developer who can solve the general technical problems, achieve complex functions, clear thinking, work Liso. Don't go to the big factory to dig a technical director, your temple is too small to support such a big god, he really came and can't play its due role.

Old readers know that old K had a entrepreneurial experience, then follow my old leader out to start a business, I am the nominal CTO, with 7 or 8 people team, I also brought two projects, each project I contributed more than 30% of the amount of code. In fact, I was a senior programmer at the time.

To conclude, the main responsibilities of a senior programmer are:

1, to achieve complex functions, write core code;

2, deal with online bugs, solve technical problems.

Phase 2, Technical Manager

Increased delivery efficiency and quality

When the company's business development, the need for a relatively perfect technical team, with full-time product managers, testers, etc. , the size of the team in about 15 people, focusing on a product line.

Complex features, technical challenges, advanced developers can handle, but technical managers are needed to address development team efficiency, skilled improvements, code quality, coding specifications, and more. Technical managers usually write a small amount of code and do more technical management, project team, etc.

This is what happened before many start-ups round A financing. The technical manager is overall responsible for the technical team, the product manager docking business needs, product planning, competitive analysis, rather than copying which app.

To conclude, the technical manager's responsibilities are:

1, development task assignment. Develop workload assessment, allocation, maximize resource utilization;

2, code quality improvement. Code Review, coding specifications, online bug analysis;

3, project management. Ensure that projects are delivered on time and establish management mechanisms;

4, team management. Team building, recruitment, personnel development.

Phase III, Technical Director

Technical planning, multi-product line, project group management

When the technical team grows to about 30 people, has multiple core product lines, has multiple technical managers, need a technical director.

Technical Director, as a field expert, stands at a higher level thinking about how technology can build barriers and build technological competitiveness. Gradually start to establish a public technology platform, coordination of multiple product lines in a unified technology platform for rapid iteration, so that the product line runs fast, run steadily.

Technical Director, in the field for many years precipitated, from well-known Internet companies, can take the technical team to a new level. Technical directors, more to do technical judgment, and some technical directors will still write some core code, do architectural design.

Responsibilities of the Technical Director:

1, build the company's technology platform department, unified technology stack;

2, the establishment of product research and development system, so that the technical team sustainable and rapid delivery;

3, management and coordination of a number of product lines, to create star products;

4, the establishment of technical barriers to form technical competitiveness;

Phase 4, Architect

Architecture design, architecture implementation, architecture review

If the company "runs" to round B, the technical team should be close to a hundred people, at this time the technical team compared with the start-up period, has been very good.

There is a technical director coordinating the product lines, and a development manager leading the technical team to iterate the product quickly. Code specifications, best practice summaries, and rollouts are also being developed.

At this point, the functions of architectural planning and architecture review need to be removed from the technical director and development manager, i.e. to separate professional posts and management posts, professionals to do professional work.

This is when the architect position needs to be established, focusing on technical architecture analysis, architecture design, architecture implementation, promoting refactoring, implementing architectural principles, so that technical directors and technical managers focus on project management, team management.

The architect's responsibilities are:

1, business architecture design and implementation. According to business planning and application scenarios, the design is in line with current business requirements, and has a certain forward-looking application architecture, classes, interfaces, business abstraction and business modeling.

2, architecture design and implementation. Identify non-functional requirements such as performance, scalability, security, high availability, and ease of deployment.

3, refactoring the plan and execution. Pay attention to the whole link monitoring data, online bugs, system alerts and other information, identify architectural defects, make refactoring recommendations and promote implementation.

Phase 5, CTO

Strategic planning of technology products to enhance technical competitiveness

When the technical team has several directors, architects, the number of hundreds of people, it is time to introduce a true sense of the CTO, unless the CTO is the co-founder, otherwise the CTO will have a "tiger down Pingyang" feeling, the company will feel that this person "full mouth running train, but can not fall."

Domestic large and medium-sized Internet companies, generally have product VP and technology VP, some technical VP is CTO. If the CTO controls the technology and the product, the product VP reports to the CTO, otherwise they are level.

In foreign countries, CTO mainly studies 3 to 5 years of technology development trends, for the company to do medium- and long-term technology planning, is an industry-influenced technology curry, the company's technical field spiritual leader. The CTO pays less attention to the specifics of the moment, and this type of work is primarily handled by the vice presidents of engineering.

Take CTO, a domestic Internet company, as an example, to summarize the main responsibilities of the CTO:

1, technology-enabled business. Sharp business insight, in-depth industrial research, participation in the company's strategic planning, technology to lead business growth, through technology and products to achieve strategic landing.

2, technology trends research. Think about the technology development trend in the next 3 to 5 years, and the opportunities and risks that the development of new technology brings to the enterprise, and lay it out in advance for the enterprise.

3, technical governance system. Continuous process improvement, efficient research and development processes, stable delivery quality, highly available systems.

4, organization and culture. Build learning-oriented organizations, self-improvement-oriented organizations, and establish a cultural atmosphere that conforms to the characteristics of enterprises.

epilogue

Finally, you don't want to be a CTO programmer, not a good rider. F rom programmers to CTO growth, it is necessary to continuously improve technical capabilities, product capabilities, project capabilities, management capabilities, business horizons, personal influence, industry contacts, and more. I n addition to their own struggle, opportunity and luck are equally important and unattended. But dreams still have to be there, in case they go to hell.


Recommended for fast-growing courses: