卓越的程序員
一個(gè)優(yōu)秀的軟件架構(gòu)師拿撩,首先一定是一個(gè)出色的程序員,不編程的架構(gòu)師的職業(yè)生涯是短暫的。
抽象思維
人們往往發(fā)現(xiàn)優(yōu)秀的數(shù)學(xué)家猪叙、物理學(xué)家以及軟件架構(gòu)師有著很多相似的素質(zhì)。
技術(shù)前瞻性
有人談到技術(shù)高手與架構(gòu)師的區(qū)別就在于仁卷,架構(gòu)師不光是著眼于現(xiàn)在穴翩,不僅僅局限于開發(fā)細(xì)節(jié),比如如何調(diào)用锦积,如何并發(fā)等等芒帕。而是跳出三界外,考慮一下面向未來問題和潛在風(fēng)險(xiǎn)的應(yīng)對(duì)之道丰介。
問題解決大師
看到問題的本質(zhì)背蟆,是架構(gòu)師所必須具備的素質(zhì)。抽象思維是往高層次的升華基矮,透過問題看本質(zhì)則是往深層次的挖掘淆储。
多領(lǐng)域知識(shí)
首先,作為一名卓越的程序員家浇,架構(gòu)師肯定不欠缺開發(fā)方面的知識(shí)本砰。從架構(gòu)到方法論,從數(shù)據(jù)處理到安全監(jiān)控钢悲〉愣睿可以說IT開發(fā)層面上舔株,架構(gòu)師可以做到爐火純青的地步。但是這僅僅是一名卓越程序員的能力級(jí)別还棱,離架構(gòu)師那還有很大的一段距離载慈。
架構(gòu)師身為一名技術(shù)領(lǐng)袖,需要通過發(fā)散知識(shí)的光芒來統(tǒng)御開發(fā)團(tuán)隊(duì)的珍手。如果只是對(duì)本行業(yè)知識(shí)做到爛熟于心办铡,那還僅僅是一名熟練工的水平。要想晉升更高的層次琳要,還需要跳出“只緣身在此山中”的困惑寡具。
內(nèi)力
架構(gòu)師的技術(shù)經(jīng)驗(yàn)應(yīng)該是開發(fā)團(tuán)隊(duì)中的最高點(diǎn),需要跨越不同的開發(fā)環(huán)境與運(yùn)行環(huán)境稚补。
溝通與交流
溝通能力被排在架構(gòu)師能力的第一位童叠,它既是架構(gòu)師入門能力,也是最難用量化標(biāo)準(zhǔn)來的能力课幕。
權(quán)衡取舍
沒有一個(gè)人可以建造一個(gè)沒有缺陷的架構(gòu)厦坛。這個(gè)項(xiàng)目可能缺乏時(shí)間,缺乏金錢乍惊,缺乏人手杜秸,或者缺乏合適的技術(shù)。在項(xiàng)目從開始到進(jìn)行中的每時(shí)每刻污桦,架構(gòu)師都需要對(duì)這些架構(gòu)的“缺陷”有明確的了解亩歹。
管控能力
一直以來,開發(fā)團(tuán)隊(duì)的管理似乎都是項(xiàng)目經(jīng)理的事情凡橱,從生命周期管理到人力資源的配置,從進(jìn)度管理到客戶關(guān)系管理亭姥。其實(shí)在開發(fā)團(tuán)隊(duì)中稼钩,還有另一位默默無聞的管理大師——架構(gòu)師。
藝術(shù)氣息
系統(tǒng)應(yīng)當(dāng)是優(yōu)美的达罗,而這優(yōu)美體現(xiàn)在系統(tǒng)的伸縮性坝撑、安全性、可維護(hù)性粮揉、可靠性和可移植性等健康因素巡李。如果沒有對(duì)藝術(shù)的追求,那么架構(gòu)師則往往會(huì)被商業(yè)需求迷住眼睛扶认,放任系統(tǒng)被濫用而落入不健康的悲哀侨拦。因此,好的架構(gòu)師需要有藝術(shù)氣質(zhì)辐宾,有對(duì)系統(tǒng)之美的追求狱从。