How to be a "professional" programmer?

Source: Internet
Author: User
On developer. *, I saw an article titled What Is A Professional Programmer? This article discusses some qualities that professional programmers should possess. The first part of the article describes the author's experience. I skipped this part. I did not translate words, cut some content, and added some of my own understandings. Aside from technology, as a "professional" programmer, there are many aspects beyond coding that need to be honed.

Meaning of the word "professional"
What does it mean to become a "professional" programmer? What does it mean to do anything professionally? The term "professional" can be defined as follows: earning money through technology. But the true "professional" has many meanings. From my point of view, we should also have the following points: trustworthy, team spirit, leadership, communication, continuously improved technical skills, and focus on minimizing risks.

Trustworthy
Trust is manifested in multiple aspects. Can you complete a task without any supervision or inspection? Can you trust it when someone asks for your help. Can you ensure that customers' data is not leaked. When using other libraries or tools, do you comply with the agreement.

Team spirit
Whether you can work with team members in good faith, whether you work for the benefit of the team, whether you can trust other members of the team, and whether everyone's goals are consistent.

Leadership
Leadership can win you respect. Understand the skills of each person in the team and be sure that the tasks you assign are not beyond the reach of his or her abilities.
Leadership not only includes the part that you are most interested in when you are working on a project, but also the ability to perform tasks that you do not like independently without the help of others. You should be able to show your leadership and take responsibility when necessary. Any professional programmer knows exactly what to do later, not just the task at hand.

Communication
Respect your customers and co-authors and listen to them as much as possible. This is the key to communication, and it is impossible to start without communication projects.
Communication is the most effective and critical way to help customers explain their needs and obtain feedback. Professional communication is effective at the point, no matter how you use it, by phone, email, face-to-face conversation or writing documents.
You may initially think that documents are only used by programmers, but you may find that documents in a serious project are related to many people, other programmers need high-level APIs or documents embedded in the Code. Managers need to plan, schedule, and report bugs. lawyers need to know what the software has done and when it will be done, users need documents to know how to use the software.

Continuously improving technical capabilities
Focus on current industry trends, the latest methodology, libraries and tools that may be available in your project. Standards, file formats and protocols, what are your potential customers concerned about. Keep yourself interested in your own field and broaden your knowledge as much as possible. You must know that good programmers are always learning.

Minimize risks
Record the changes made by the software. It is best to have a software to save and manage all bugs.
Code changes may cause errors. We need to have version management tools and version management processes.
"Professional" programmers are very concerned about whether there are enough tests. programmers should be able to find more problems from the information provided by testers, because programmers know their code best. At the same time, make sure that all changes have been checked and confirmed during the regression test.
Keeping the code simple and good style is also a way to manage risks. If your code is easy to understand, others may find the errors. At the same time, it is easier for new users to understand, learning.
Customers often change their ideas and needs because they realize that the previous needs are not what they really want. You must modularize and reuse your code so that you can easily cope with these changes.

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.