誰說Android開發非科班不能進大廠?從半路出家到阿里P7


誰說Android開發非科班不能進大廠?從半路出家到阿里P7


13年,我從一個二本學院的化學專業畢業。許多同學畢業後都是在製藥工廠上班,朝九晚六,拿著微薄的工資。那個時候的自己很迷茫,總覺得未來不該如此淡然無味。一波波得招聘信息裡面,最熱門也最誘人的是互聯網/IT領域。當機立斷,我決定轉戰互聯網行業。(那幾年互聯網最火熱的時期,像我一樣半路出家選擇當程序員的真的很多)


誰說Android開發非科班不能進大廠?從半路出家到阿里P7

半路出家學開發

不過,那時的我僅僅會一些java語言,投了幾十份簡歷都石沉大海——就我這專業,就我這經驗,想要很好的offer應該有點天方夜譚吧,現實也的確給了我響亮的一巴掌。

不服輸,我堵上了所有的勇氣立志從頭開始全面學習IT互聯網相關的知識。

生活總是會眷顧有準備的人,後來我拿到了一個offer,雖然公司很小,但總算也是對自己努力的彙報。雖然起步只是一個小公司。但是我的目標是大廠,這不是容易達到的事情,我喜歡這種有目標有挑戰的刺激感。只要一直學,總能達到大公司門檻的。

網上學習 Android的資料一大堆,但如果學到的知識不成體系,遇到問題時只是淺嘗輒止,不再深入研究,那麼很難做到真正的技術提升。我根據學習計劃,開始重點攻破一些重點技術點,然後再把知識點關聯起來,形成一個系統化的知識體系。

對基礎原理不斷挖掘

進入公司,我的職位是Linux應用開發工程師,做App網絡傳輸模塊,本質上就是把本地的數據通過socket傳輸到服務端。用到的技術是java語言,網絡編程,多線程編程。

那時是最痛苦的幾個月,因為非計算機出生,很多東西都不會,經常程序段錯誤,都不能定位到問題代碼。

當時處於試用期間,秉承著不成功則成仁的心態開始惡補相關的基礎知識以及代碼規範。那時網絡上沒有現成的視頻資料,艱難地把計算機專業的書籍自學了一遍。


誰說Android開發非科班不能進大廠?從半路出家到阿里P7


熬過了試用期,產品也上線了,第一次體會到成就感爆棚的感覺。

現在回頭看,經驗就5個字:原理很重要。很多看起來沒用的原理,其實是重要基礎如果瞭解這些原理,就可以快速使用各種開源庫。可以更快地熟悉各種中間件sdk的使用方法。剛入行技術不求多,熟練掌握一項技術,能把原理講清楚,拿得出手才有基本競爭力。

基礎僅僅是開始,技術要有應用場景,轉化為產品才能最大化地產出價值。

後來,我自學了Android開發,

比如UI開發,網絡開發。當時也是夜郎自大得以為UI開發就是Android的全部。投遞了很多大廠的Android崗位,卻沒有收到面試邀請。回過頭來再做分析崗位需求時,才發現自己技術棧背景確實不匹配,就算進了面試,好多問題也都答不上。比如:

1. 動態化混合渲染技術架構是怎麼樣?怎麼提高開發效能?

2. 產品的DAU有多少,如何保證穩定性高且可用的?

3. 如何跟蹤用戶行為,利用大數據完善產品功能,降低運營成本?

這些問題讓我意識到,語言、UI和原理只是程序員的基本技能而已。

想要進一步發展,不光只考慮個人技術,必須在整個產品生命週期、開發、運維、能效上有合理的架構,進而滿足行業的發展需求。你不光需要考慮業務需求如何實現,更多的重心需要關注開發提效,大團隊並行開發協作,大流量穩定性保障。


誰說Android開發非科班不能進大廠?從半路出家到阿里P7


學習flutter技術後,顛覆了我對移動APP開發的認識。

如果寫native頁面,可能一天一個頁面,Android iOS就需要2個人日,flutter是跨平臺,一份代碼可以在Android iOS兩個平臺使用。那開發一個頁面就只需要原來一半的資源。通過新技術合理架構提升研發效能,動態化技術提升發佈成本

無論程序多麼完美,Bug永遠存在。

對於線上故障,如果不能提前預防以及快速解決,損失可能不堪設想。所以代碼框架調優,屏幕適配,代碼質量調優是優秀架構師的必備技能。


誰說Android開發非科班不能進大廠?從半路出家到阿里P7


自學的過程是痛苦的,移動端的技術日新月異,很多前沿的技術還沒有體系化的書籍,只能在論壇,博客等看零碎的文章,學習效率比較慢。要想高效的學習一線技術,網絡課程是一種新的選擇。有老司機指導方向,避免走彎路,事半功倍

適應發展,做技術的領頭羊

有良好的技術基礎,學會了行業流行的框架,可能只是獲得了進入大廠的敲門磚。多少人努力進入大廠,最終默默無聞地進去,悄無聲息地出來。沒錯,平臺很重要,但更重要的是你能在這個平臺上發展到什麼程度。

這個日異月新的時代,不光需要Follow一線技術,更重要的是要引領時代,才能在技術快速發展的階段不被淘汰,或者才能在下一次技術革命中抓住機會。

如果僅僅只掌握Android本身的技術是不夠的,比如說在iot時代有這樣一個需求: 做一個APP完成智能硬件的一鍵WiFi配網。這個就需要對TCP/IP協議棧,WiFi加密,網絡抓包等有深入的理解。

所以最重要的是突破當前崗位需求的設限,對各種技術融會貫通,創造新的技術框架比如各種前沿技術,音視頻開發,NDK,小程序開發等技術體系


誰說Android開發非科班不能進大廠?從半路出家到阿里P7


誰說Android開發非科班不能進大廠?從半路出家到阿里P7


我在搭建這些技術框架的時候,也整理了系統的高級進階教程,會比自己碎片化學習效果強太多,石墨文檔可見;《Android架構視頻+學習筆記》

後臺私信關鍵詞【視頻教程】,會自動發送這份石墨文檔。

學而不思則罔。我們在學習和輸入知識的生活,一定要多思考,多總結。這樣才能真正的進步!


分享到:


相關文章: