Essential qualities of a good programmer

Source: Internet
Author: User

Programmers (English programmer) are professionals engaged in program development and maintenance. In general, we divide programmers into program designers and program coders, but the boundaries are not very clear, especially in China. Be a really qualified programmer, should have the quality. 1: Team spirit and collaboration Ability team spirit and collaboration ability is the most basic quality that a programmer should have. Software engineering has been mentioned for nearly 30 years, and today's software development is not programming, but engineering. Maverick can write some programs can also make money, but into the research and development team, engaged in commercialization and product development tasks, it must have this quality. It is no exaggeration to say that this quality is a programmer and even a team to settle down. 2: Document Habit document is the vitality of a software system. A company's products are good, technical content is high, if there is no lack of documentation, knowledge is not inherited, the company is a processing software workshop. As a code programmer, 30% of working time must be written for technical documentation. Programmers without documentation are bound to be eliminated. 3: Standardized code writing habits well-known software company code variable naming, annotation format, even the length of nested line indentation and empty lines between the function of the number are clearly defined, good writing habits, not only help code porting and error correction, but also help the collaboration between different technical staff. Some so-called master even clamor to write the code of the General people can not understand, I can only say that he is not a qualified programmer. 4: Requirements Understanding ability the programmer should be able to understand the requirements described in the task order correctly. To be clear here, the programmer should not only pay attention to the functional requirements of the software, but also pay attention to the performance requirements of the software, to be able to correctly assess the impact of their own modules on the entire project and potential threats, if the skilled programmer with three years project experience does not understand this, can only show that he may have been serious work, But no hard work. 5: Modular thinking ability as a good programmer, his ideas can not be confined to the current task, to see if their own modules can be written out of the current system exists, through a simple package in other systems or other modules directly used. This allows the code to be reused, to reduce duplication of effort, and to rationalize the system structure. The improvement of modular thinking ability is an important indicator of the improvement of a programmer's skill level. 6: Test habits testing is an important part of software engineering quality assurance, but testing is not only the work of Test engineers, but a basic responsibility of each programmer. Programmers need to know that testing is not only a normal program debugging, but a purposeful and targeted exception call test, which should be combined with the ability to understand requirements. 7: The ability to learn and summarize the programmer is very easy to be eliminated from the occupation, so be good at learning to summarize. Many programmers like to blindly pursue a number of coding skills, such a technician no matter how many languages, the code is more proficient in writing,We can only say that he is a skilled code worker, he will never have a qualitative improvement. A good learner of the programmer will often summarize their skills, to their own technical aspects to have a good positioning, so as to have a destination to improve their own. This can be improved gradually, from programmer to software designer, System analyst. As a senior programmer, in addition to the above all the quality, but also need to have the following qualities: 1, demand analysis capacity 2, the overall framework capacity 3, Process capacity 4, module decomposition capacity 5, the overall project evaluation capacity 6, team organization and management capacity 1, passion. I've met a lot of "professional programmers" who are involved in it because they think it's a profession, they're programmed only during work hours, and they don't learn new things unless they send them training, which is not a good programmer. I think a good programmer is always passionate about programming, and good developers do some programming work even if it's not paid. Passion is an important indicator of a good programmer. 2, the field of self-learning and studious programming has always been changing, not a year some of the new technology has become the old technology, this is not a good programmer to all new technologies to follow up, but some are not interested in learning any new technology. They usually study programming at school and then work on what to learn. If you hear "let me train for one weeks" in the recruitment process, don't hire him. In fact, a really good programmer always talks about new technologies you don't know, explaining to people why you have to use this technology, even if no listener understands it, even if he doesn't. 3, smart and smart include many factors, emotional and social communication is only one of them. Good programmers are not dumb, they are the smartest people, many of them are sociable, talkative, and interested in a wide range of interests. 4, hidden Experience-good programmer pass. Often have their own personal research, hobbies, projects, and these are not written on the resume (usually feel not worth writing), but the performance may be precisely his potential, depth and stamina. 5, technology diversity because good programmers like to learn and dabble in new technologies, more than 22-year-olds are generally familiar with many new technologies, and have "strong" personal opinions/opinions about the length of a variety of technologies, and are fond of experimenting with fresh technology. 6, the qualification certificate is not the method to identify the real programmer, MCSE, SCJP, explain what, they just let others know and get, at most, on behalf of this person in a certain technology has some knowledge.

Good programmers must-have qualities

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.