就傳統觀點來講,也許學歷的高低在一定程度上影響了程序員的初期就業,但是不論如何,對於用人單位來說,對經驗的看重更勝於學歷,在業內真正重視的是實際的經驗與能力,而學歷僅是入門的一張“名片”。否則證書就只是一紙空文。其實真正決定薪資待遇的根本因素應該是用人單位的實力和程序員自身的素質。
做Java架構師(P7)崗位有一年時間了,期間也從事了很多招聘定級工作,來說說我見解吧。
既然提到年薪40w,那我們看看什麼公司,什麼級別可以給到,再看看要求。
阿里是Java大廠,所以可以參考阿里的標準,阿里一般是16薪水,所以就是稅前2.5w,在阿里應該是P6就可以達到,而對P6的要求是什麼呢,我們內部有個簡單的概述,那就是可以獨立完成部門內部的項目,而面試過程中,也會有相應的考察。
如何定義一個人可否完成部門內部項目
代碼能力
代碼能力是基本功,Java語言本身,包括語言的各個方面包括對併發的理解,對內存使用對理解,對Java運維的理解等等。語言本身外,社區裡常用的框架是否可以十分清晰的瞭解,包括spring,包括他實現的ioc,aop,orm,web機制是否有清楚的認識,有豐富的經驗等等。
對常用中間件的理解
畢竟在一個大系統中,各種中間件是是否常見的,緩存中間件,消息中間件,例如 redis、memcache、rmq這些。要理解常用中間件使用場景,使用姿勢(例如redis的常用命令),甚至包括他的一些運維。一旦出了問題,除了專門的運維人員,也需要你參與問題的排查,因為有時候這些中間件出現問題,是不當的使用姿勢引起的。
架構、業務落地能力
前面提到了語言本身,各種中間件。如果你有很好的業務抽象能力和架構思維,就可以把一款部門內部產品很好的設計並實施了。這點蠻難的。想必都有過接手現有項目的經歷吧,有時候真恨不得把之前的設計者拿出來批鬥。作為一個設計者,你能否做到當下一個接手它的人會說一句,這個系統設計的真好,穩定又可拓展,理解起來也很容易。
這需要很多能力,除了對現有系統的理解,還包括對未來可能發生變化的理解
溝通協作
畢竟一個部門內部產品,是不可能由一個人完成的,所以需要溝通協作,把設計好的方案,要和2-3個小夥伴一起實施,包括同樣身份的後端人員,前端人員,產品等角色。這個級別的人可能會參與帶2-3個人,例如應屆畢業等,所以你自己對知識的把握,分享精神,leadership都是很好的加分項。
總的來說呢,到這個階段,代碼真的只是你技能桶中的一個最長的,或者最長的之一。而其他軟技能,會顯得越來越重要。
在這裡送大家一套思維導圖:
架構師築基
開源框架
微服務
高性能架構
團隊開發
最後當然是B2C,沒有實戰,還算什麼架構師
對於這些知識點 我也錄製了視頻
相關資料獲取方式
關注+轉發後,私信關鍵詞 【架構】即可獲取!
重要的事情說三遍,轉發、轉發、轉發後再發私信,才可以拿到!
閱讀更多 Java邵先生 的文章