1. A good architect is first a qualified engineer;
2. Have abstract thinking ability, can abstract business in abstraction;
3. Understand the cutting-edge knowledge of technology, and know its advantages and disadvantages;
4. Communication;
5. Trade-offs can be considered comprehensively when designing the system;
6. Excellent business and multi-domain knowledge, because sometimes the business is the same;