移動應用開發從逐漸開始火爆到如今也有小十年了,大部分的學校還是沒有開放專門的課程。
目前市場上的大部分 Android 開發工程師大多數是自學或者是培訓出身,用一段時間上手 Android 開發技能(暢銷書作家 Josh Kaufman 提出,掌握正確的方法後,可以在短期內上手任何技能 ),而後進入一家公司或者接手一個項目培養實操能力、積累實戰經驗。
再之後呢,Android 開發初期之後怎麼提升?怎麼才能叫精通?方向在哪?
通常情況下,Android 工程師 1-3 年時間應該能從初級上升到中高級工程師,這個階段主要就是技術的提升和經驗的積累。
之後 1-3 年持續做到高級工程師,這個位置要求能獨立完成整個模塊,對項目架構有比較深入的了解,能夠設計複雜模塊的程序方案。
同時需要一定的管理能力,能夠帶新同事快速入手項目,所以這時候一般同時也擔任了主程或者 Team Leader,部分參與項目的管理工作。
高級工程師之後可以有兩種側重方向或者說兩種發展路線。
第一種是管理路線,首先要對移動端和前端有一個系統的認知,並非說要完全掌握移動端和前端 coding 的能力,更多可以側重於紮實的技術基礎,再加上對技術的理解和融會貫通,就算不能快速地寫出移動端和前端的代碼,也應該對實現流程有一個清晰的認識,並且能夠快速定位問題。
同時要熟悉服務端開發流程,負責移動端項目管理,最終成為移動端研發經理,如果你不打算學習後端知識基本止步於此了。不滿足於此的可以繼續去學習後端開發,拓寬之後的職業發展可能性。
第二種是純技術路線,往往是一個專業細分領域比如音視頻、三維圖形、逆向安全、性能優化等,根據不同的細分領域,市場上有需求的行業和公司數量也會不一樣,但若是該公司的核心需求,一般也會是公司的核心技術崗位,成為該領域市場上少有的精通人才的話,不可替代性也會很高。如果想一直 coding 下去,那麼打好基礎、找准方向是沒有錯的。
明確了方向之後,具體怎麼做呢?可以分成幾個方面。
首先,技術基礎是必不可少的。剛開始進入公司寫業務功能的時候,可能會覺得數據結構、演算法、操作系統、編譯原理之類的基礎對自己日常的工作內容沒有什麼影響,知道怎麼用就好了。
實際隨著工作內容的深入,以及對不同技術的涉獵,會發現技術看似一直在發展、創新、變化,而底層的邏輯和原理是不太會變化的,越是不斷變化的東西,理解它底層的原理就越是重要,這時候再去看待和學習它的變化就會輕鬆許多。
其次,要深入學習自己的「一技之長」,對 Android 開發工程師來說就是 Android 的相關知識:UI、底層原理、NDK、架構、調試實戰經驗等等。
業務或者技術方案,站在不同的時期和視角上看,難免會有不同的意見,但是技術是不會模稜兩可的,會就是會,不會就是不會。
如果考慮管理路線的話,有幾年工作經驗的 Android coder,此時應該更加主動參與項目、承擔工作、積極溝通需求和實現,對業務培養起自己的理解。架構孵化於業務,並且服務於業務,技術和業務齊頭並進才能更好地發展(對於公司和個人都是如此)。
同時,多觀察你的 Leader,看他是怎麼協調整個項目向前推進,怎麼不讓項目進度失控,怎麼和產品討論需求,什麼時候該重構等,這些都是細節也都是寶貴的經驗。
無論選擇哪個方向,都要保持對新技術趨勢的敏銳度。純技術路線對新技術的關注自是不必說,管理崗需要在做技術方案時考慮新技術,同時提升自己的移動端/前端全棧能力。
深度對接騰訊T4,阿里p8高級架構師級別的技術體系,並且綜合了目前的各大互聯網公司如華為,抖音,OPPO,小米等主流技術(即使你不想選擇阿里騰訊,其它的大廠照樣適合)
技術人成長不能再單打獨鬥,要學會與人交流,學會將別人的知識為自己所用。學習不是一件容易的事情,需要長期的堅持,這裡分享一些熱門技術和框架的視頻。有了視頻,也許可以在前期降低一點門檻,希望會對你有用。
點擊卡片即可免費領取:
TAG:Android | Android開發 | 技術 |