架構師 要成為百科全書式的智者

2021-06-26 13:03:40 字數 1672 閱讀 2998

架構師是什麼?它不是行政職務,也不簡單的一種職稱。對於一線程式設計師來說,擁有方方面面各種知識的架構師,是一位百科全書式的智者。

通常來說我們將架構師分為系統架構師、軟體架構師等等。雖然有分工不同,各自所處的層次也有不同,但是究其核心能力,跨領域知識的學習能力,是架構師的強項所在。

架構師最怕程式設計師知道的十件事

首先,作為一名卓越的程式設計師,架構師肯定不欠缺開發方面的知識。從架構到方**,從資料處理到安全監控。可以說it開發層面上,架構師可以做到爐火純青的地步。但是這僅僅是一名卓越程式設計師的能力級別,離架構師那還有很大的一段距離。

架構師身為一名技術領袖,需要通過發散知識的光芒來統御開發團隊的。如果只是對本行業知識做到爛熟於心,那還僅僅是一名熟練工的水平。要想晉公升更高的層次,還需要跳出「只緣身在此山中」的困惑。例如在目前國內架構師,至少有網路領域為依託,物流金融**等熟知越多越好,這個是應用級別。比如南天的金融平台研發部門,但是這個成不了底層平台架構師。再往上走,很多公司的研發人員不是精通計算機,可能是物理極為精通,比如中軟研發聲納軟體部門很多人對資料訊號極有研究。

很多程式設計師對架構師似乎存在偏見

這裡就會出現乙個常見的問題「架構師是不是乙個只會夸夸其談,只會忽悠下面人而對軟體開發了解不多的人?」更尖酸的問題還在於架構師連一段**都不會寫。相信這是一定的誤解,就好像銀行的高層管理人員,要更多的從巨集觀的角度考慮問題,儘管他們點鈔的能力肯定不及下面的櫃檯人員。事必躬親的諸葛亮,最後的結局還是國破家亡,過多的干預細節忽視整體,絕對是要打敗仗的。架構師學習更多跨領域知識,也是為了在接受乙個專案時,能更快更準確的找到解決問題的「命門」。

有的程式設計師也會說,如果多學習跨領域、跨學科的東西,會不會成為什麼都懂,但什麼都不精的人?其實在這裡的跨領域,並不是要求大家都成為每個領域的專家。最重要的是有一門敲門磚,學習的引子。如果開發一套金融系統,對於財務結算以及處理方法都不了解,那別說是勝任架構師的任務,連普通程式設計師的工作也不可能做好。假設大家工作一段時間後,對某領域很了解,但由於工作變動的緣故,到其他公司後,開發的領域完全不會。這裡就要用到跨領域知識學習的能力了,需要大家樣樣都要知曉。

談到跨領域學習,知識面廣似乎是最好實現的目標,只要博覽群書,加上高中之前各學科紮實的基礎,相信大多數程式設計師本身就具備一定的跨領域學習的能力。但想成為真正的百科全書式的智者,恐怕不光是簡單覺得眼熟就行。在條件允許的情況下,程式設計師其實可以去參加一些其他領域的專業考試。比如參加會計資格證的考試,抑或其他專業中較初級的考試。這樣的經歷,主要還是在於「以學促考」,通過一定的壓力讓自己能鑽進去學習。

還有一種跨領域學習的目標,就是多語種的學習。學習除英文之外的語言,既能開拓國際視野,也能在平時的工作中有所建樹。

架構師害怕程式設計師知道的技能,其實就是他們自己「獨門絕技」。雖然他們自己不說,但是我們自己還是能總結出來,在一定深度之內成為乙個「雜家」並沒有什麼不好。其關鍵在於所學的跨領域知識,能否成功的運用到工作中去。51cto在獨家採訪王翔高階架構師時,他曾提到,乙個致力於成為架構師的程式設計師。需要盡可能的參加大的專案開發,儘管積累1000個小專案的經驗也是很好的程式設計師,但好的架構師必須參與更大的專案,哪怕數量不多。從中我們能解讀到乙個資訊,大的專案意味著學科跨度的增大,所需要學習的跨領域知識必然也足夠大,也就更有利於程式設計師向架構師晉級。

本文為《架構師害怕程式設計師知道的十項技能》中的跨領域學習能力篇。

小白聊架構師 怎麼成為架構師

還有人說 我早就掌握了物件導向設計,也看了 企業應用架構模式 架構之美 大型 技術架構 等等架構的書,為啥還當不了架構師?是啊,這高階,大氣,上檔次的架構師是怎麼煉成的?這裡講乙個小王的故事吧。又到了畢業季,一批應屆生進了乙個軟體公司,小王也在其中。新人進入公司,基本上都是從最底層做起,做那些最髒最...

架構師速成8 2 架構師要懂產品

產品和架構兩個截然不同的職業。好像風馬牛不相及,事實上不是這種。產品的思想須要經過技術的手來成為現實,在成為現實之前,須要技術理解 評估 碰撞 優化 把控 驗證等等。當然架構師就承擔了這一系列技術的責任,並且在乙個產品的實現過程中,技術架構並非非常重要的,前期能夠沒有架構,簡單高速驗證,僅僅有在使用...

架構師速成8 2 架構師要懂產品

產品和架構兩個截然不同的職業,好像風馬牛不相及,其實不是這樣的。產品的思想需要經過技術的手來成為現實,在成為現實之前,需要技術理解 評估 碰撞 優化 把控 驗證等等。當然架構師就承擔了這一系列技術的責任,而且在乙個產品的實現過程中,技術架構並不是很重要的,前期可以沒有架構,簡單快速驗證,只有在使用者...