Architect's opinion

Source: Internet
Author: User

Architect's opinion

The architect is the soul of a project team. He decides the technical selection, overall architecture, and module division of the entire system, and may also assume the role of communication with the leadership. In a sense, the architect determines the success or failure of the project to a large extent. The so-called train runs fast and relies entirely on the vehicle headband.

Many outstanding architects have been transformed from a good developer, but excellent developers have never been able to become qualified architects. Compared with architects, developers have to undertake a relatively narrow range of tasks. Their biggest goal is to write well-developed code, perform adequate tests, and write high-quality documents; architects are facing a wider range of problems. In addition to excellent technologies, they also need good expression skills and macro control of the entire system.

Some people once said that the programming talents in their twenties are easy to find, but it is hard to find Excellent Architects in their 30's. Why is it difficult for architects? In addition to keen insight, I think a good architect must possess the following qualities:

A. excellent technical skills. Some people say that architects do not need to write code, but they only need to design the overall architecture. But I think this is very one-sided. Imagine if a person does not write code for a long time, can he still have continuous technical sensitivity? Of course, writing code here is not the behavior of General developers, but to keep yourself feeling about the code. Some people say that architects are not necessarily technical masters. I agree with this, but they must be excellent developers.

B. Good communication skills. This is especially important because architects need to constantly exchange views with the project team's developers and leadership to convey their own design intent and ideas to each other, without good expression and communication skills, problems may easily occur. This is particularly evident in companies that do not communicate in their native language.

C. Good software engineering quality. Although the architect is not a project manager, I think he needs to have a clear and clear understanding of the software development process. The development process here is a general concept, maybe it is a RUP, maybe it is XP, it doesn't matter what it is, but this engineering quality is one of the essential qualities of every outstanding architect.

D. Broad knowledge areas. Architects must be open-minded and never be limited to a small scope of affairs. Otherwise, the consequences of "looking at nothing" may easily occur. This requires continuous learning by architects. The learning here includes both technical and business as well as communication.

E. domain knowledge. The architect must have a deep understanding of the business field he is engaged in. He does not need to become a business expert, but he must have a deep understanding of the business knowledge. It is hard to imagine that architects often engaged in financial projects can easily design the project architecture in the telecom field. Knowledge needs to be accumulated, and so does the business.

F. Ability to handle non-functional requirements of the system. Architects need to have a unique understanding of and solutions to non-functional requirements such as system performance, fault tolerance, and concurrency. At the end of a project, these problems often become the bottleneck of the entire project. At this time, the architect must take advantage of these problems.

The path to architects is rugged and full of thorns and challenges, but it is the dream of countless developers. Architects are a combination of multiple skills and qualities. Every developer who wants to achieve this needs to constantly improve himself in his daily work, here, I sincerely hope that the architect's dream will shine into the reality of everyone.

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.