一個合格的Java程序員如何成長為優(yōu)秀的架構師

一個合格的Java程序員如何成長為優(yōu)秀的架構師

天津卓眾教育      2022-04-17 11:07:01     15

一個合格的Java程序員如何成長為優(yōu)秀的架構師,  我認為,架構師的內(nèi)功主要包含三部分:判斷力、執(zhí)行力、創(chuàng)新力,簡單解釋如下:  判斷力:能夠準確判斷系統(tǒng)的復雜度在哪里

課程價格 請咨詢

上課時段: 授課校區(qū):

詳細介紹



  我認為,架構師的內(nèi)功主要包含三部分:判斷力、執(zhí)行力、創(chuàng)新力,簡單解釋如下:


  判斷力:能夠準確判斷系統(tǒng)的復雜度在哪里,就像武俠高手一樣,能準確地看出對手的破綻和弱點。


  執(zhí)行力:能夠使用合適的方案解決復雜度問題,就像武俠高手一樣,能選擇合適的招式或者方法打敗對手。


  創(chuàng)新力:能夠創(chuàng)造新的解決方案解決復雜度問題,就像武俠世界里,小一些的創(chuàng)新是創(chuàng)新招式,而武學宗師能夠創(chuàng)立新的武學或者心法,例如張三豐創(chuàng)立太極拳一樣。


  因此,要成為一個優(yōu)秀的架構師,就需要不斷地提升自己這幾方面的內(nèi)功,而這三方面的能力主要來源于經(jīng)驗、視野、思考。


  經(jīng)驗:設計過的系統(tǒng)越多、系統(tǒng)越復雜,架構師的內(nèi)功也就越強,不管是成功的架構,還是失敗的架構,不管是踩坑的經(jīng)驗,還是填坑的經(jīng)驗,都將成為架構師內(nèi)功的一部分。


  視野:掌握的知識和技能越多、越深,架構師的內(nèi)功也就越強,他山之石可以攻玉,站在巨人的肩膀上會看的更高更遠。


  思考:經(jīng)驗和視野都是外部輸入,類似于我們吃的食物,但光吃還不行,還要消化,將其變?yōu)槲覀冏约旱臓I養(yǎng),這就是思考的作用。思考能夠?qū)⒔?jīng)驗和視野中的模式、判斷、選擇、技巧等提煉出來為我所用,思考也能促使我們產(chǎn)生新的創(chuàng)意和靈感。


  結合上面的分析,從程序員到架構師的成長之路,總的指導原則是:積累經(jīng)驗,拓寬視野,深度思考。按照這個總的原則為指導,接下來我們看看從程序員到架構師的成長過程中,具體如何實踐。


  合格的工程師需要1~3年時間,其典型特征是“在別人的指導下完成開發(fā)”。工程師階段是最原始的“基礎技能積累階段”,主要積累基礎知識,包括編程語言、編程工具、各類系統(tǒng)的基本使用。


  高級工程師需要2~5年時間,其典型特征是“獨立完成開發(fā)”,包括需求分析、方案設計、編碼實現(xiàn),其中需求分析和方案設計已經(jīng)包含了“判斷”和“選擇”,只是范圍相對來說小一些,更多是在已有架構下進行設計。


  從普通工程師成長為高級工程師,主要需要“積累方案設計經(jīng)驗”,簡單來說就是業(yè)務當前用到的相關技術的設計經(jīng)驗。包括:表設計經(jīng)驗、緩存設計經(jīng)驗、業(yè)務流程設計經(jīng)驗、接口設計經(jīng)驗等。當接到一個業(yè)務需求的時候,高級工程師能夠組合這些設計經(jīng)驗,最終完成業(yè)務需求。


  技術專家需要4~8年時間,其典型的特征是“某個領域的專家”,通俗地講,只要是這個領域的問題,技術專家都可以解決。


  從高級工程師成長為技術專家,主要需要“拓展技術寬度”,因為一個“領域”必然會涉及眾多的技術面。要成為一個Java開發(fā)專家,需要掌握Java多線程、JDBC、Java虛擬機、面向?qū)ο?、設計模式、Netty、Elasticsearch、Memcache、Redis、MySQL等眾多技術。


  初級架構師需要5~10年時間,其典型特征就是能夠“獨立完成一個系統(tǒng)的架構設計”,可以是從0到1設計一個新系統(tǒng),也可以是將架構從1.0重構到2.0。初級架構師負責的系統(tǒng)復雜度相對來說不高,例如后臺管理系統(tǒng)、某個業(yè)務下的子系統(tǒng)、100萬PV量級的網(wǎng)站等。


  初級架構師和技術專家的典型區(qū)別是:架構師是基于完善的架構設計方法論的指導來進行架構設計,而技術專家更多的是基于經(jīng)驗進行架構設計。簡單來說,即使是同樣一個方案,初級架構師能夠清晰地闡述架構設計的理由和原因,而技術專家可能就是因為自己曾經(jīng)這樣做過,或者看到別人這樣做過而選擇設計方案。


  從技術專家成長為初級架構師,最主要的是形成自己的“架構設計方法論”


  中級架構師需要8年以上時間,其典型特征是“能夠完成復雜系統(tǒng)的架構設計”,包含高性能、高可用、可擴展、海量存儲等復雜系統(tǒng),例如設計一個和Kafka性能匹敵的消息隊列系統(tǒng)、將業(yè)務改造為異地多活、設計一個總共100人參與開發(fā)的業(yè)務系統(tǒng)等。中級架構師與初級架構師的典型區(qū)別在于系統(tǒng)復雜度的不同。


  從初級架構師成長為中級架構師,最關鍵的是“技術深度和技術理論的積累”


  高級架構師需要10年以上時間,其典型特征是“創(chuàng)造新的架構模式”


  高級架構師與中級架構師相比,典型區(qū)別在于“創(chuàng)造性”,高級架構師能夠創(chuàng)造新的架構模式,開創(chuàng)新的技術潮流。


  關于如何在專業(yè)領域內(nèi)提升,有條著名的“10000小時定律”,簡單來說要成為某個領域頂尖的專業(yè)人才,需要持續(xù)不斷10000小時的練習,我認為技術人員成長也基本遵循這個定律,最關鍵的還是技術人員對技術的熱情以及持續(xù)不斷地投入,包括學習、實踐、思考、總結等。


  接下來為大家提煉一條通用的成長路徑供你參考

  以上就是天津卓眾教育java培訓機構小編為大家介紹的“一個合格的Java程序員如何成長為優(yōu)秀的架構師?”的內(nèi)容,希望對大家有幫助,更多java最新資訊請繼續(xù)關注天津卓眾教育java培訓機構官網(wǎng),每天會有精彩內(nèi)容分享與你。

培訓啦提醒您:交易時請核實對方資質(zhì),對于過大宣傳或承諾需謹慎!任何要求預付定金、匯款等方式均存在風險,謹防上當。