怎麼看待 Android 市場的‘供大於求’?
前言
前幾年移動網際網路創業的風口,如今漸漸消失,****移動網際網路被巨頭公司瓜分,一些創業公司倒閉了,Android 開發需求慢慢趨近於飽和。而當初移動網際網路處於風口時,自學、轉行以及培訓機構出來了大量 Android 開發從業者,導致目前看起來**市場供大於求。
那麼 Android 開發工程師們應該如何面對當下的局面呢?
其實當下的供需關係不平衡不代表沒有需求,市場上過多的是隻會寫 xml 和 Activity、只會用程式碼堆需求的初級 Android 程式設計師,而高階 Android 開發工程師仍然緊缺,並且薪資很可觀。
那麼接下來,問題就變成了“如何提升自己在 Android 市場上的競爭力”。
1. 提升通用技術能力
The more things change, the more important it is to know the underlying principles.
半衰期長的技術要打好基礎,也就是更加通用的技術。
一來通用技術如資料結構和演算法、計算機網路、作業系統、計算機系統結構等,對技術的深層理解有很大的幫助,二來這類技術在不同的語言和技術方向上切換時是共通的。
2. 提升軟實力
軟實力實際上也是一項通用的技能,甚至比第一條更加通用。
良好的溝通可以縮短開會的時長、節省相互之間的溝通成本,也使得團隊合作更加愉快。不錯的文件表達能力可以省去不少的重複溝通。
懂得規劃自己的時間,上班時能更有條不紊地完成任務,下班也能高效地規劃業餘時間的學習。
懂得反思:為什麼這個任務預計五小時能完成,卻變成了三天;為什麼這個需求要這樣做,這麼做是最合理的嗎,還有更好的方式嗎?
對問題、業務和自身的更多思考有助於更好地發揮和展現你的技術實力。
3. 選擇一個細分領域不斷深入
個人認為一個較好的學習方式是先廣度優先遍歷,即粗略瞭解自己領域的各方面知識,然後深度優先遍歷,即選擇一個自己感興趣或者覺得值得深入的方向深挖下去,等到這個方向學習研究得差不多了,再去深入下一個方向的技術知識。例如:
外掛化技術、響應式程式設計、元件化框架、系統架構等進階技術,承託著業務之下的基礎框架,能夠使得開發者在面對需求和功能變化的時候有更快的反應和更優雅的行動。
業務邏輯日漸成熟的形勢下,使用者體驗越來越重要,突然的軟體崩潰或是載入圖示持續5秒,對於高質量應用都是阻礙。渲染速度、網路請求體驗、I/O優化、熱修復技術、耗電優化 ,都是效能優化需要重視的點。
Android 現在細分的領域非常多,逆向安全、音視訊、物聯網、SDK開發 等等,可以在這些領域中選擇一個並不斷深入。
若是從時代背景的角度考慮,當下處於資訊時代,使用者接收和喜愛資訊傳播的形式一路從文字、圖片、音訊、視訊,到了如今的直播。音視訊會是一個不錯的選擇。其中會涉及到音視訊編解碼和音視訊同步處理、特效處理、合成等等技術,對於 Android 底層原始碼的理解也十分有幫助。
找準自己適合和感興趣的方向,然後埋頭往期衝就行了。 現在就去把你儲存的那些Android的書本或者是視訊翻出來學習吧!
如果你沒有合適的進階學習資料。我可以給你分享一套阿里P7級別的Android高階進階視訊;

阿里P7系列視訊教程.png
加群免費領取安卓進階學習視訊,原始碼,面試資料,群內有大牛一起交流討論技術;【964557053】。 (包括java基礎與原理,自定義控制元件、NDK、架構設計、混合式開發(Flutter,Weex)、效能優化、完整商業專案開發等)