Programmer’s job route planning is more than just programming?

Insert picture description here

I often hear people say that 30 years old is a bottleneck for programmers. In fact, there is some truth to this statement. Because if a programmer has graduated from a college or undergraduate degree and has been programming without changing other types of jobs by the age of 30, he has written code for almost 7 or 8 years. Programmers around the age of 30 are more experienced and more mature in technology, but the salary is also higher, which may be 12 times, or even 3 to 4 times that of programmers with 12 years of programming experience ; and now the technology is updated and changed so quickly, 1 2 Programmers with years of programming experience may be better able to apply new technologies; some companies also prefer technicians who have room for development and can take on more tasks, while programmers with sufficient energy and daring to work harder may be younger. It is more favored by enterprises. The above reasons will make some programmers who are still programming in their 30s feel pressured and encounter small bottlenecks in their career development. If programmers do not want to program all the time or their main job is not programming, what is the direction of development? Today we are going to talk about several career development routes for programmers, hoping to be a reference for programmers.

Insert picture description here

1. Technical route: programmer-intermediate engineer-senior engineer-technical manager.

This is a development route that is more suitable for programmers who want to develop in the direction of technology. As programmers mature in development experience and technology, they can first develop in the direction of intermediate engineers and senior engineers. Programmers often care about how to write code according to requirements, minimize bugs, implement program functions, and pass module tests; middle and senior engineers are not only concerned with writing a section of high-quality code with few bugs, but also from Starting from the entire project, consider how to adopt better algorithms, test methods, etc., to ensure that a software system that basically meets customer needs, has a good user experience, and runs stably is finally launched.

Then you can develop in the direction of a technical manager. In the process of being an engineer, I have accumulated experience in the development of some large and medium-sized software projects. I am also familiar with various technical standards and specifications. I have learned to write and review various technical solutions and documents. I also have the ability to write core software codes and handle most of the software. The problem of failure and the ability to lead the technical team have basically met the job requirements of a technical manager.

Technical managers can then develop positions such as technical directors and CTOs in the past. The requirements for these positions will be higher, so I won't say more here. Most programmers who can only type simple code will develop slowly at the stage of programmer or junior engineer for a long time. In the process of programming, programmers still have to pay attention to the learning and accumulation of other aspects of technology, such as algorithm thinking, testing methods, technical documentation, technical team management, etc., in order to develop better and better on the technical route.
Insert picture description here

2. Management route: programmer-intermediate engineer-system architect-project manager.

The system architect is a position that requires both technical ability, design ability and communication ability, and plays a very important role in the project development process. Not only must design and plan the software system architecture and application scenarios, and solve the bottlenecks and problems encountered in the development process; but also maintain good communication with customers, product managers, technicians, project managers, etc., to promote the development quality and development of the software system The progress is carried out as planned; also assist the project manager to manage the technical development team, and do a good job of archiving technical documents, documentation, etc.

The project manager is the organizer and leader of the entire software project. Internally manage the technical team, formulate development plans, test plans, training plans, quantitative tasks, etc.; solve problems in the development process to ensure that the software advances in accordance with the schedule; do a good job of archiving technical documents and explanatory documents. Communicate with customers externally to understand, improve, and modify requirements; communicate with the company and report project progress, work conditions and resource requirements in a timely manner; market research must be done, and technical plans must be adjusted in time.

Some programmers have strong communication, design and team management skills, and they can consider developing a management route. Programmers who do not have these abilities need to continue to learn and accumulate in their daily work and life if they want to develop in the direction of technical management.

Insert picture description here

3. Product route: programmer-product assistant-product designer-product manager.

I don't know if you have ever heard of friends who are engaged in programming "complaining" about the product being developed? Some programmers will have their own ideas about the product during the development process. When they feel that the product being developed has unreasonable functions or logical design, they may want to express it, but most of the time people in the company It is rare to listen to the opinions of programmers on products, because this is considered to be the job of product designers or product managers, so some programmers occasionally share some ideas with friends. Among these programmers, some really have good ideas about product design and product management. These programmers actually have the foundation for product development: they have good imagination and judgment on product functions and logic. But to become a product designer or product manager, there is still a long way to go.

Programmers develop in the direction of products and have their own advantages and disadvantages. The advantage is that the programmer knows the process of program development and is familiar with the way of function implementation. Better results can be achieved when communicating with developers about the product, and the product development cycle, implementation methods, and fault judgments can be well controlled, so that the technical problems of the product can be communicated and resolved as soon as possible. The disadvantage is that programmers have to learn and accumulate almost from scratch in various aspects such as customer demand analysis, market research, product design, product management, operation analysis, and user training, which takes a certain amount of time. If programmers want to develop in the direction of products, most of them need to start from the product assistant. Not only must they maintain their own advantages, but they must also learn and accumulate step by step, and gradually eliminate their own disadvantages, and go to product designers, product managers, and even It is the direction of the CIO (Chief Information Officer).
Insert picture description here

From the above career development routes, it can be seen that the development direction of programmers is quite broad, and they can develop in the direction of technology, management, and products. It can also be seen from this that it is not enough to do a good job of programming. We must also pay attention to the learning and accumulation of related abilities, so that we can develop into more core positions. The career development route above is just a general direction. Not every programmer needs to experience every role in the route. Every programmer can also develop a development route that is more suitable for him according to his own situation and work hard for it. .

Guess you like

Origin blog.csdn.net/m0_51538362/article/details/114945767