Android開發要達到阿里P7水平,難度超乎我們的想象,97%的開發者都會面臨這些困境!

寫在前面;

Android開發前幾年火爆一時,市場飽和後Android程序員每一名程序員都想進階,甚至成爲架構師,但這期間,需要付出的辛苦和努力遠超過我們的想象。

就我這幾年對所接觸的Android工程師調研:97% 的Android開發 技術人都會面臨這些困境(可能也是你的困惑)

主要困境;

外包公司/小型團隊技術閉塞:如果你長期在小型軟件公司或外包公司工作,是很難有機會經歷完整且大型項目的開發,整個技術視野會比較窄,導致薪資長期處於停滯不前;

重複同樣的編碼工作:長期重複同樣的編碼工作,項目對你的技術要求就是那些,不會讓你按照自己的期望去發展,導致很長時間自己的能力都無法突破,企業更是難以接受新技術;

自控力差,沒時間學習:白天工作,晚上加班,只能依靠碎片化的時間學習,如果自控力比較差,基本就三天打魚兩天曬網,無法系統性學習,無法沉澱成技術實力;

目前的簡歷,難進大廠:現有的技術能力、項目經驗,無法通過大廠簡歷初篩,更別說拿到大廠的高薪 Offer。

這些問題,將會成爲你職業發展的絆腳石,不想辦法解決這些,焦慮可能會像一塊巨石,壓在你身上。很多求職者的能力體系企業用人需求有很大出入。

相信大多數從事Android開發的小夥伴一開始肯定不是抱着改變世界的宏偉目標,說白了就是賺錢的多,以後技術牛逼了,年薪百萬,走上人生巔峯,迎娶白富美~

但工作過一年後你會發現,自己的工作重點就是將找各種各樣的組件、框架,拖拖拽拽,改改樣式。在極端情況下出現了問題後(比如部分機型上崩潰,加載圖片慢),也不知道該如何解決!

造成這種局面的原因:自己的意識不夠,格局受限,在向上提升方面也沒有完整的規劃

一,職業發展規劃;

從自身規劃的角度講,技術上的進階分如下幾個階段:

1.做好業務需求的功能。這個是初級程序員就應該有的能力。

2.解決極端情況下的技術問題,比如性能優化,OOM等。稍有點規模的公司,肯定都會遇到這種問題,比如上文中說的App在部分機型上崩潰、頁面加載不出來等。只是大部分程序員會覺得難以復現,或者是因爲小概率事件而忽略了。在忽略這些問題的過程中,也放棄了進一步提升的可能性。還有一部分程序員是看到了這些問題,但一直不知道怎麼解決,因爲這些問題的產生基本都是要往底層框架去找原因,而平時只關注上層的業務邏輯代碼,因而沒有深入研究底層的原理,導致心有餘而力不足。

3.在開發框架和效率上做文章。舉個例子,很多程序員說自己的精力都在和產品的撕逼中浪費了,但有沒有想過,能夠通過技術手段將自己從繁雜的無技術含量的工作中解救出來?比如是否能夠做到只編寫一次代碼,或者改個配置參數就能夠做到在不同平臺上運行。更高的要求是,能否將這些方案做成通用框架或產品。

其實沒轉行的Android程序員,大多都是希望能在這方面繼續學習提升的。而上面列舉的幾個階段,首先要從思考方式上去逼迫自己不斷地逼迫自己,不要偷懶。其次,要想按照上述階段發展,還需要落在實處,在具體的技術體系中不斷的學習。

舉個例子:

對於OOM,需要知道有哪些優化工具可以使用(Lint、MAT等),如何檢測OOM,以及垃圾回收機制等深層次的原理。對於性能優化來說,如何減少apk體積、資源動態加載等都是必會的。以下是性能優化相關思維導圖。

二,體系化深入學習

在體系化的學習過程中,博客、書籍、視頻課程都是較好的學習手段。

鑑於Android也是基於java語言的,因此很多與java相關的基礎也是必須掌握的,比如《深入理解Java虛擬機》、《Effective Java》等相關書籍也是必讀的。

Android相關的書籍包括《Android權威編程指南》、《Android開發藝術探索》等,進一步的還可以去閱讀Android相關源碼,配合《Android源碼設計模式解析與實戰》等書籍,對閱讀源碼大有裨益。

如果你覺得自己看書太慢而且難以全部理解,博客不夠系統,可以找一套進階視頻學習。沒有的話我可以免費分享一套給你

關於作者

作者目前在深圳,13年java轉Android開發,在小廠待過,也去過華爲,OPPO等,去年四月份進了阿里一直到現在。等大廠待過也面試過很多人。深知大多數初中級Android工程師,想要提升技能,往往是自己摸索成長,不成體系的學習效果低效漫長且無助。

我們今年整理了一份阿里P7級別的Android架構師全套學習資料,特別適合有3-5年以上經驗的小夥伴深入學習提升。

主要包括騰訊,以及字節跳動,華爲,小米,等一線互聯網公司主流架構技術。如果你有需要,儘管拿走好了。

以下爲我的整理,粉絲免費分享;

三.【阿里P7級系統高級學習】

全系列部分展示;7大專題

1.高級UI

UI這塊知識是現今使用者最多的。當年火爆一時的Android入門培訓,學會這小塊知識就能隨便找到不錯的工作了。

不過很顯然現在遠遠不夠了,所以很多人會覺得大環境不好了安卓開發要涼了。

這些人如果能自身反省;企業要你們這些CV工程師的意義在哪呢?

你要自己親自去項目實戰,讀源碼,研究原理的呀。

2.性能優化

如果我是老闆,我招你來是寫代碼的,不是寫bug的。如果你的代碼太爛,各種bug。我把你開了後重新招個人進來接手維護,甚至推到重新做,後面那個接盤的是不是要罵街?

如果你會性能調優,能解決項目中各種性能問題。那麼拿20K真的不過分。你得具備深厚的代碼功底,深入學習源碼原理以及使用工具進行測試和檢查調優。

3.NDK開發

音視頻,人工智能,這些是未來沒辦法阻擋的發展大趨勢。我在獵聘網上看那些招聘崗位,要求精通NDK的薪資都在30-60K。追求高薪崗位的小夥伴,NDK開發一定要掌握並且去深挖

4.Flutter

火了一年多了,你工作不一定要用到。但是你出去面試(初級很少要求會),肯定會問到的。

關於Flutter是不是未來,我沒法確定告訴你,我能確定的就是你要去面試高薪崗位,你得掌握這種主流的新技術(大廠最看重的除了基礎,技術水平外,就是你的學習能力。)

5.移動架構實戰項目

架構師不是天生的,是在項目中磨練起來的,所以,我們學了技術就需要結合項目進行實戰訓練,那麼在Android裏面最常用的架構無外乎 MVC,MVP,MVVM,但是這些思想如果和模塊化,層次化,組件化混和在一起,那就不是一件那麼簡單的事了。

架構師尤其是移動開發,數量太少了。可能很多Android開發的小夥伴都沒見過移動架構師。架構師薪資是什麼樣的水平呢?

阿里P6處於高級工程師,年薪四五十萬左右

阿里P7處於資深高級,年薪百萬左右

阿里P8屬於架構師了,年薪可達170萬以上

阿里的標準和薪資都是很高的,其它公司會有差距,但不會太大。

你有沒有敢去想過,自己以後能達到架構師水平,突破百萬年薪,實現財富自由呢?如果你覺得這對於你來說不可能,甚至很可笑,那麼你就真的遙不可及了。

最後,以上內容均免費分享給大家,需要完整版的朋友,點這裏可以看到全部內容。或者關注主頁掃描加 微信 獲取。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章