What are professional programmers?

Source: Internet
Author: User
Tags coding standards

Professional Software Engineers refer to standardized values and knowledge systems, standardized work habits and professional discipline, and professional work style and processes, of course, they also have corresponding skills and experience. In China, there are many programmers who think they are highly skilled. They should pay high salaries, be good, and be disciplined. They seldom ask themselves what value they bring to the team, what value they bring to the company, and what value they bring to the customer?

Programmers in China should not spend all their time thinking about what kind of news to catch up with, what kind of tide to get to this, and then to that. The left language and the right framework are tossing around, instead, we should work hard on professionalism.

Enterprises prefer professional engineers rather than unprofessional "cool people ". Professionalism ensures that a programmer's skills and work can bring benefits to the Organization. They will only pay for such benefits and will not take the initiative to pay tribute to the "Daniel" out of admiration. Moreover, they also believe that technical and empirical deficiencies can be easily compensated in practice as long as a person has sufficient degree of professionalism.

I remember a popular saying in the last two years: "boss, I have never done this. I am not professional ". Although it is a joke, it can be seen that all things have to be done professionally this year, or else they will be smiling.

But what are professional programmers? Foreigners pay more attention to the professionalism of engineers. For example, if the tasks are handed over to this engineer, the engineers can efficiently, with good quality and on time, and the software is very professional, it is a professional programmer who can cooperate and communicate well with the test team or other development teams to accomplish tasks, create value for the team and the company, and achieve the goal pursued by the company. In general, I think professional programmers must:

1. Professional enterprise spirit (efficient and responsible work, standardized values and knowledge system, standardized work habits and professional discipline, and professional work style and process)

2. Programming is very professional (skilled, experienced, and capable of analyzing and solving problems independently)

3. Be professional (good at communication, whether with customers, colleagues, project managers, new users, or veterans, willing to work with others, team spirit)

Correspondingly, non-professional programmers:

1. no enterprise spirit (my personal principles are serious, I feel that my technical skills are excellent, and I think that my contribution is extremely huge. I think that my company has a low salary and should not work hard. The tasks assigned by the Project Manager are deliberately dragged and disobedient, coming to work late)

2. programming is not professional (I have not written a few lines of code, and I have never done any major system, so I think that I am very skilled, but the code I write is really vulnerable; I think that I have rich experience when I have not worked for a few years, I have never encountered many customers or production problems, so I think I have the ability to analyze and solve problems)

3. work is not professional (it is difficult to communicate and cooperate, there is no team spirit and collective spirit, and it is not in the attitude of solving problems and learning and improving, it is based on the attitude of playing tricks, being superior to others, or even making difficulties with others, failing to communicate with the customer, communicating with the project manager Yin Fengyang, and being a good teacher or a veteran)

The article said that Chinese programmers are 7-8 times less efficient than foreigners because Chinese programmers are not professional, while foreign programmers are highly professional. I think this is only one reason, that is, the professional quality of programmers. This is only an individual reason. Compared with this, it is more serious in terms of team and management. In China, programmers often come up with a lot of technical experts, but the overall combat capability in a team is very poor. Why? This is a question that needs to be considered.

Almost every team has several professional programmers, namely the "main programmer", and many unprofessional or coming professional programmers. There are young White Paper fellows who have just graduated, there are also old scalpers with rich business experience but obscure, the so-called technical "cool" with thorns, and the real "cool" with little effort. How can project managers manage and motivate team members, the question that the project manager needs to think about is how to help team members grow to maximize their competitiveness.

From the perspective of programmers themselves, they should work in the professional direction. Whether your career direction is management, technology, or technology management, these are necessary. In the end, you are the only professional, and only the things you have made can you be convinced.

Appendix: Many people talk about the professional qualities of programmers published in the magazine:

1. Learning and analysis capabilities. Every team is growing. As a programmer, We need to "keep pace with the times ". Especially in the development of this industry with changing knowledge, at the same time, analysis capabilities are essential. In this case, it is hard to imagine the final result if the precise analysis based on the customer's needs is not fully understood .; (In the survey, 71.15% people thought that learning ability is an important part of the programmer's basic ability. In addition, 57.69% of respondents in this survey believe that when there are different technical opinions, it is necessary for programmers to take appropriate measures. I believe this case provides us with new ideas.

2. Maintain good communication with both internal and external parties, and always ensure success. You can promptly report and communicate with each other. Some minor bugs may be easy for programmers to modify, but some bugs that are difficult to modify cannot be solved by themselves should be consulted by colleagues or experts, some programmers may even organize group discussions. However, when dealing with this situation, they often think about it for a long time, but they cannot change it. Then they let it do other things. When the project manager asks a few days, I admit that I cannot change it. This phenomenon should be avoided to the greatest extent. After all, the distance between the first two vertices of the same line is not limited. (59.62% of respondents believe that "reporting project progress clearly and timely" is an important component of the programmer's internal practice)

3. product awareness. Good product awareness can greatly improve development efficiency. In a product revision, the interface has been modified again, because two programmers are responsible for programming and matching, and one of them is very product-aware. net draws out the original UI, organizes discussions within the company, and makes the final customer environment and interface excellent.

4. Team awareness. As a newbie, you need to consult and learn from the old man. As an old man, you need to share your experiences, gains, skills, and other information with the new man, that is, bring new people. Knowledge sharing is one of the most effective methods in knowledge learning, especially in the field of programmers;

5. There is no doubt that coding specifications and document planning must be followed. (80.77% of the programmers who participated in the survey thought that coding standards were the best choice for programmers to practice internally. 68.59% think that document standards are essential for cultivation .)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.