Home > Common Problem > What is a programmer?

What is a programmer?

青灯夜游
Release: 2020-05-01 18:22:44
Original
7917 people have browsed it

Programmer (English Programmer) is a professional engaged in program development and program maintenance. Programmers are generally divided into program designers and program coders, but the boundaries between the two are not very clear, especially in China.

What is a programmer?

Software practitioners are divided into six categories: junior programmers, intermediate programmers, senior programmers (now software designers), system analysts, system architects, and test engineers. Category.

To be a truly qualified programmer, you should have the qualities.

1: Team spirit and collaboration ability

Team spirit and collaboration ability are the most basic qualities that a programmer should possess. Software engineering has been mentioned for nearly thirty years. Today's software development is no longer programming, but engineering. Lone Ranger can write some programs and make money, but to join the R&D team and engage in commercialization and product development tasks, you must have this quality. It is no exaggeration to say that this quality is the foundation of a programmer or even a team.

2: Documentation habits

Documentation is the vitality of a software system. No matter how good a company's products are and how high their technical content is, if there is no lack of documentation, the knowledge will not be inherited, and the company will still be a software workshop processing supplied materials. As a code programmer, you must spend 30% of your working time writing technical documentation. Programmers without documentation are bound to be eliminated.

3: Standardized code writing habits

Well-known software companies have clear regulations on variable naming, comment format, and even the length of indentation of nested lines and the number of blank lines between functions. , Good writing habits not only help code transplantation and error correction, but also help collaboration between different technical personnel. Some so-called experts even claim that the code written by the expert cannot be understood by ordinary people. I can only say that he is not a qualified programmer.

4: Requirements understanding ability

Programmers must be able to correctly understand the requirements described in the task order. It should be clear here that programmers should not only pay attention to the functional requirements of the software, but also pay attention to the performance requirements of the software. They must be able to correctly evaluate the impact and potential threats of their modules on the entire project. If there are two to three years If a skilled programmer with project experience does not understand this, it can only mean that he may have worked seriously, but not with heart.

5: Modular thinking ability

As an excellent programmer, his thinking cannot be limited to the current work tasks. He must think about whether the modules he writes can be separated from the current system. It exists and can be used directly in other systems or other modules through simple encapsulation. This can make the code reusable, reduce duplication of labor, and make the system structure more reasonable. The improvement of modular thinking ability is an important indicator of the improvement of a programmer's technical level.

6: Testing Habits

Testing is an important part of software engineering quality assurance, but testing is not just the job of test engineers, but a basic responsibility of every programmer. Programmers must understand that testing is not only normal program debugging, but also requires purposeful and targeted exception call testing. This must be combined with the ability to understand requirements.

7: The ability to learn and summarize

Programmers are a profession that can easily be eliminated, so they must be good at learning and summarizing. Many programmers like to blindly pursue some coding skills. No matter how many languages ​​​​such a technician has learned or how skilled he is at writing code, we can only say that he is a skilled code worker, and he will never make qualitative improvements. . A programmer who is good at learning will often summarize his technical level and have a good positioning on his technical level, so that he can improve himself purposefully. Only in this way can we gradually improve and upgrade from programmers to software designers and system analysts.

As a senior programmer or even a designer, in addition to all the above qualities, you also need to have the following qualities:

1. Requirements analysis ability

2. Overall framework capability

3. Process processing capability

4. Module decomposition capability

5. Overall project evaluation capability

6. Team organization and management ability

1, Passion

I have met many "professional programmers" who engage in IT because they think it is a profession and they only work during working hours Programming, they won't learn new things unless they are sent for training, these are not good programmers. I think a good programmer is always passionate about programming, and a good developer will do some programming work even if it's not paid. Passion is an important indicator of a good programmer.

2, learn by yourself

The programming field is always developing and changing. Within a year, some new technologies will become old technologies. This does not mean that good programmers should follow up on all new technologies, but some are not interested in learning any new technologies. interest. They usually learn programming in school, and then learn whatever their unit arranges for them after work. If in recruiting you hear "Just give me a week of training and I'll be qualified for this job" then don't hire him. In fact, really good programmers always talk about new technologies that you don't know about, and explain to people why you must use this technology, even if no audience understands, even he himself doesn't understand.

3, smart

Smartness includes many factors, emotions and social communication are just one of them. Good programmers are by no means dull, they are the smartest people, and many of them are sociable, talkative, and have a wide range of interests.

4, Hidden experience

-Good programmers usually have their own private research, hobbies, and projects, which they do not write on their resumes (usually they feel it is not worth it) writing), but showing it may be exactly where his potential, depth and stamina lie.

5, Technical Diversity

Because good programmers like to learn and dabble in new technologies, generally speaking, those over 22 years old are familiar with many new technologies and have a good understanding of the pros and cons of various technologies. Have "strong" personal opinions/views and like to try new technologies.

6, Qualification Certificate

Qualification certificate is not a way to identify a real programmer. MCSE and SCJP can’t explain anything. They are just for others to know and obtain. At most, it means that this person has a certain experience in a certain field. Have certain knowledge of each technology.

Note: The above standards are not absolute, because some good programmers do not meet the above, while some bad programmers do. But I believe these apply to most real programmers.

In summary, excellent programmers usually have the following characteristics:

  • Passionate about technology

  • Programming as a hobby

  • If you allow me, I will talk to you endlessly about technology

  • Have personal development experience (Same meaning as 4)

  • Insisting that a certain technique is the best

  • If he is allowed to use a technique that he thinks is not good, he will be very angry Awkward

  • Smart, talkative, wide-ranging interests

For more related knowledge, please pay attention to PHP Chinese website! !

The above is the detailed content of What is a programmer?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template