架構師,我們程式員打怪升級的主要方向,它不像某些技能報個培訓班就可以獲得,勝任架構作業需要具備許多技能,如果想盡快轉型升級至架構師,那你必須在日常作業中有意識地儲備這些技能,網路上有不少架構師技能圖譜,但高質量的很少,大部分都是東拼西湊出來的,脈絡不夠清晰,層次不夠分明,雜亂無章,缺乏邏輯,就像拿著錯亂的武學秘籍練功,練不成真本領還是小事,就怕走火入魔、浪費時光,
?
俗話說:一口吃不成胖子,從程式員到架構師也無法一蹴而就,它是一個循序漸進、穩步提升的進階程序,每個階段有每個階段需要掌握的技能,多項技能之間還存在先后順序,既有硬技能還有軟技能,如果以硬技能為例,我們可以將其分解成下列幾個維度:
-
從職位晉升的角度看,程式員都要歷經初級開發工程師、中級開發工程師、高級開發工程師這三個階段才能進階至架構師,此后還有架構專家、高級架構專家等職位,再往上就是首席架構師、首席技術官,
-
從代碼規模的角度看,程式員都是從撰寫函式、類開始起步的,再逐步負責單個模塊、子系統、系統、平臺等,代碼規模從小到大,關聯關系從內到外,復雜度變得越來越高,往上有系統群、生態圈等,
-
從技術堆疊的角度看,程式員入行只要懂某門編程語言就可以了,進階時需要鉆研不同編程語言、開發框架、應用容器、語言運行時、資料庫、作業系統、網路協議等,這樣才有能力把握各種型別的系統,
-
從設計方法的角度看,程式員從面向物件設計開始起步,再通過常用設計模式來優化多個類之間的關系,進而鉆研領域驅動設計用于分析建模,再往上就是架構設計,包括應用架構、資料架構和系統架構等,
除上述幾個維度之外,我們還要跨過性能調優這道門檻,熟悉 HTTP 請求從客戶端到服務器、資料庫的全流程,掌味訓礎的壓力測驗、性能監控等方法,分析定位解決各種性能問題,積累訊息、事務、調度、快取、檢索等各類中間件的使用經驗,熟悉各種主流的應用安全機制,掌握分層、SOA、微服務、Serverless 等常見架構風格,熟悉分布式系統滿足性能、擴展性、可用性、可靠性等要求的解決方案等,
古語云:先為力勝,其后智勝,其后道勝,硬技能,是我們程式員的立身之本,在戰場上廝殺,如果沒有過硬的功夫,我們很容易小命不保,但光有硬技能只能算個武夫,想要成為帶兵打仗的將帥,還要配備軟技能,從程式員到架構師,知識體系越來越廣,系統規模越來越大,內外干系人越來越多,這都要求我們持續提升學習、溝通和管理等通用能力,以及通過寫作、演講、培訓、咨詢等途徑打造非職權影響力,
技能圖譜,也可以稱為技能樹,它描繪了勝任某個崗位作業所要掌握的技能,從程式員到架構師的進階程序,就像是用時間精力澆灌培植一棵樹,讓小樹苗逐漸長成參天大樹,先有主干,后有枝葉,待到枝繁葉茂就能開花結果了,也就是說等到架構師所需技能全都儲備好了,那我們就有信心勝任新崗位作業了,
近期老兵哥準備結合個人真實的成長經歷,梳理從程式員進階到架構師不同階段所需儲備的核心技能項,講解每項技能的應用場景、價值和關鍵模型,介紹獲取每項技能可以參考的資料書目等,最后描繪一棵脈絡清晰、層次分明的技能樹,加速打怪升級的行程,對該主題感興趣的小伙伴,可以關注老兵哥的博客,我會陸續更新相關內容,今天先分享到這里,如果你覺得有價值,麻煩動動手指 轉發 給其他需要的小伙伴,另外,老兵哥我后續還會分享職業規劃、應聘面試、技能提升、影響力打造等經驗,關注「 IT老兵哥 」,賦能程式人生!

轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/35262.html
標籤:架構設計
