自從Android開發“涼涼”以來,“兩級分化”越來越巨大。
初級的由于競爭中太多,甚至有工作一年兩年后,不給加薪反降薪的騷操作! 關鍵是還不一定敢拍屁股走人(下一家不好找)
而企業對于Android高級架構師的供不應求,開100W的高薪崗位也不一定能很快招到滿意的Android架構師。
Android年薪百萬是什么概念?
至少相對于阿里的P7技術專家了!
我們先來看一下招聘網上對于Android高級架構師的招聘要求;
職位描述:
- Android平臺功能模塊的設計與開發
- 移動端開發框架的研究與設計
- 移動端技術規范的制定與推廣
- 移動端技術培訓
要求
- 重點高校本科及以上學歷,計算機及相關專業畢業
- 精通java語言,熟悉面向對象設計原則。
- 有至少5年的Android開發經驗,有app上線的優先考慮
- 具有較強的編程和解決問題的能力,具有較好的數據結構及算法基礎功底
- 對移動互聯網產品有濃厚的興趣
其實簡單點,就是能夠獨立開發APP =有APP上線
APP有設計感 = 懂設計模式設計原則
項目經驗豐富 = 較強的編程和解決問題的能力
內存和性能優化 = 具有較好的數據結構及算法基礎功底
GitHub 開源項目 = 對移動互聯網產品有濃厚的興趣
在我看來
1.Android高級工程師 + 全局眼光 = 架構師
所以架構師必備的一項技能就是要放眼全局,做的設計要能夠思慮長遠,如何做到?
多看Androd源碼,從系統運行的角度思考你寫的東西,在Android世界是怎么存在的。
2.認知上要達到WHAT HOW WHY三階段的WHY的程度
打比方說,我們使用了第三方的庫,最開始WHAT階段是知道它怎么用,可以解決什么問題
然后HOW階段,我們理解了這個庫是怎么運行的,內部的架構是怎么樣的,高級工程師多停留在這個階段。
最后的WHY階段,為什么這么設計?有沒有更好的設計?
當你到了WHY階段了,你就積累了大量的設計源泉。
3.行動上要多用架構解決實際問題
在Android高級工程師積累的基礎上,解決問題的時候多以架構設計來解決,就需要
精通設計模式,不拘泥于設計模式,設計模式是在遵循Java設計原則的前提下,在大量的應用實踐中總結出來的,猶如武功招式,
這個階段要無招勝有招,多重招式疊加制敵。
還包含用架構思路來解耦,組件化,動態加載
想達到阿里P7以上先要搭建知識框架
我們在學技術的時候,如果沒有注重搭建知識框架的話,學到后期的話你就會遇到一個問題,就是會感覺到自己之前學習的知識很亂,不成系統,再加上行業技術更新很快,越往后自己學習的知識會越來越多,而之前的學習又是零散的自己沒有整理的,你就會感覺自己所掌握的這些知識是散亂的。
就好像很多點,線可能已經連接成了,但是就是組不成一個面。當我們做一個大一點的項目,需要熟練用到很多相關技術面,甚至會用到組件化技術。如果你長期只使用一些常用的技術點,那么你可能還有很長一段時間要待在小公司搬運代碼了。
怎么樣搭建知識框架呢?
這里分享的搭建知識框架兩種方式,都是很多技術大佬總結出來的非常好的方式,看你們個人喜好!
第一種:看視頻教程來搭建知識框架
這是個通用的方式,可能更加適合那些技術處于初級到中級階段的朋友,當然,這里我說一點,我發現在很多看視頻學習的朋友經常會犯這樣的一個錯誤,就是對視頻教程的欲望很強導致的松鼠病,什么意思呢?就是很多朋友到處找視頻教程,然后各種囤積,頂多是這個看看,那個看看,感覺這個也好那個也好,于是這個也想看,那個也想看,導致的最終結果就是,視頻教程倒是收集了不少,可是沒有一個真正的看完過,你說,你是不是就是這樣的?(此段話太過屬實?。?/p>
其實這就是學習技術的一大禁忌,它會嚴重的欺騙你,讓你覺得自己學的很多,實則不僅學的很少,而且還拖慢了你的提升的進度!我告訴你啊,關于視頻教程,找一套差不多的就行,就這市面上流傳的一些培訓班的視頻教程,其實都大差不差,只要不是年久失修的那種都行,要知道這就是培訓班的啊,所以用來搭建知識框架很合適,找一套就行了,多了沒任何好處,現在聽我的,看看你收藏的資料里面是不是有好幾套同類型的視頻教程,聽我的,留一套,其他的都刪除吧!
記住,只留一套用來搭建知識框架,只留一套,一套,就一套(如果你沒有的話,我可以分享你一套阿里P7級Android高級教程)
【阿里P7級】Android高級架構教程
阿里巴巴的 P7 是非常高的級別,薪資至少在 30K 起(加上年終獎和股票,上百萬的P7也很常見),但對P7的要求也是極高,這套視頻教程的整體設計便是參照阿里P7的技術能力框架制作。(有 1-5 年的實際工作經驗便可以跟著學習。)
【阿里P7級】Android架構高級教程
免費分享;
后臺私信我關鍵詞【視頻教程】免費獲取
然后你就靠這套視頻教程來搭建知識框架,那么有了這么一套視頻教程之后,又該如何去做呢?
這個你要知道,一般這些視頻教程都是按照知識點的從前到后,從淺到深的按階段講解的,所以你完全可以按照這個視頻教程里講解的順序去搭建這個知識框架,在搭建知識框架這塊,我看到很多人使用思維導圖來搭建,我也試過這種方式,把各個知識點都整理到思維導圖上。
最好找到配套的學習教程,效率會特別高。
至此,看視頻教程搭建知識框架的方式就是這樣的了!
搜索相關知識或路徑,自我組織知識框架
這個方式其實要求就比較高了,這要求你要有一定的搜索能力和組織能力,這個方式的核心就是自己去搜索所需要學習的知識點,然后整理組合,然后組織成一個知識框架。
這樣說你可能不理解,我舉一個例子吧,比如說我們學習Android,如果是按照看視頻的方式搭建知識框架,那我們只需要找一套視頻教程,然后從前往后看,根據所講建立相應的文件夾就可以形成我們的知識框架。
但是第二種方式不是這樣的,因為沒有了視頻教程作為參考,我們就需要自己去搜索,比如去搜索“學習Android應該掌握哪些知識點?”,“Android需要學習什么”,“Android的學習路徑是什么”,然后你就會得到很多的答案,就會有很多人告訴你先學什么,再學什么等,然后多找幾個答案,你就會得出一個學習路線,然后按照這個路線建立相應的文件夾,之后再按照文件夾的順序去逐個學習,可以找單獨的視頻教程看,也可以上網搜系列博客來學習,這個就自由的多了。
至此,這就是第二種搭建知識框架的方式了!
然后我必須強調幾點:
- 這個搭建知識框架可不是說你整理好要學習的知識順序,然后建立相應的文件夾就行了,這所包含的知識你是要真的去學的!
- 學習的時候你一定要記筆記,一定要記筆記,這個很重要
- 最終你的知識框架應該是一個完善的層級文件夾,每個文件夾下有相應知識的學習筆記
這樣你的知識框架才算真正的搭建完成!至此,你向Android架構師邁出了最關鍵的一步。
推薦閱讀:單反快門速度怎么調