移動(dòng)開發(fā)者的冬天真的來(lái)了

幾年前,客戶端開發(fā)熱門的一塌糊涂,以至于在國(guó)內(nèi)涌出一大片培訓(xùn)班。以iOS為例,花個(gè)1、2萬(wàn)去培訓(xùn)班學(xué)大個(gè)半年,出來(lái)后在面試時(shí)就可以聲稱自己已有2-3年開發(fā)經(jīng)驗(yàn)并且能蒙混過(guò)關(guān),月薪拿個(gè)1W5毫無(wú)壓力。這導(dǎo)致近幾年國(guó)內(nèi)客戶端開發(fā)者數(shù)量非常多,且能力參差不齊。

而現(xiàn)在放在市場(chǎng)上看,先不說(shuō)以培訓(xùn)班出身的水平即UI拖拽師已經(jīng)很難找到工作,而一些稍有資歷的客戶端開發(fā)者也已經(jīng)感覺(jué)到市場(chǎng)已經(jīng)明顯飽和。這里的原因有很多,列幾個(gè)我認(rèn)為比較關(guān)鍵的:

  1. 開發(fā)的門檻越來(lái)越低,得益于日漸完善的開發(fā)套件以及學(xué)習(xí)資料
  2. 供大于求,App創(chuàng)業(yè)潮的冷卻導(dǎo)致崗位減少
  3. 大前端的概念推出,以Weex和React Native為主導(dǎo)的多端復(fù)用以及Hybrid架構(gòu)的流行

開發(fā)的門檻越來(lái)越低

在iOS最火熱的年代的開始,大約是在13到14年之間吧。那時(shí)候,客戶端其實(shí)大部分處于一個(gè)白板期,開發(fā)資料的欠缺,大家還是再以PC Web的模式去玩客戶端。在那個(gè)時(shí)候,作為純UI開發(fā)是很容易找工作的,甚至不需要了解底層、操作系統(tǒng)、網(wǎng)絡(luò)等等,只要你能快速畫上UI,滿足業(yè)務(wù)需求迭代,就能很輕易收割到Offer。再后來(lái),我們慢慢發(fā)現(xiàn)曾經(jīng)只有“大神”才會(huì)的hook、編譯原理、逆向等等都成了標(biāo)配,這就是技術(shù)領(lǐng)域成熟所帶來(lái)的結(jié)果。在Facebook的主導(dǎo)下,客戶端玩起了Three20,Hybrid模式架構(gòu)由此產(chǎn)生。同時(shí)慢慢衍生出WaxPatch、JSPatch等等高難度的框架。在H5流行的年代,由PhoneGap、AppCan等等一些跨平臺(tái)或者說(shuō)比較綜合的解決方案冒出,但是使用的范圍不大,最終被現(xiàn)在的Weex/RN所取代。

在這樣的背景下,國(guó)內(nèi)App巨頭開始形成規(guī)模,手淘、微信、支付寶、百度等等會(huì)因?yàn)闃I(yè)務(wù)的場(chǎng)景不同出現(xiàn)客戶端的中間件,可以說(shuō)15年是客戶端最光鮮的一年,因?yàn)槟且荒昕蛻舳说募夹g(shù)成長(zhǎng)是最快的。

客戶端的開發(fā)成熟了,學(xué)習(xí)資料也多了,公司對(duì)人才的要求也高了。

供大于求

在過(guò)去幾年的時(shí)間里,互聯(lián)網(wǎng)界掀起過(guò)App創(chuàng)業(yè)流,幾乎到了任何一個(gè)創(chuàng)業(yè)團(tuán)隊(duì)都會(huì)有自己的一個(gè)App的階段。那時(shí)候股市也好,新三板上隨處可見(jiàn)PPT概念公司。因?yàn)橛绣X,給客戶端開發(fā)者開的工資也非常高,大家都涌向客戶端開發(fā)。而現(xiàn)在是一個(gè)通貨膨脹的年代,客戶端需求大大減少。除非你真的有一技之長(zhǎng),否則將會(huì)淹沒(méi)在廣大的客戶端開發(fā)者人群中。

大前端的出現(xiàn)

前端的框架變化實(shí)在是太快了,當(dāng)你還活在JQuery的年代,了解著bootstrap時(shí)候,有人已經(jīng)在玩AngularJS了,而更有人已經(jīng)開始玩React了,再甚至已經(jīng)出現(xiàn)Vue來(lái)結(jié)合AngularJS和React了。Weex和React Native的出現(xiàn),已經(jīng)足以動(dòng)搖客戶端開發(fā)的地位了。在這個(gè)年代,你說(shuō)不懂點(diǎn)前端,怎么好意思說(shuō)自己是客戶端開發(fā)呢。那要了解的東西太多了,webpack你得懂吧?babel也要知道吧?MVVM databinding ES6 ES7 promise等等,講真,腦子不太夠用,而且我相信絕大多數(shù)客戶端開發(fā)者對(duì)前端領(lǐng)域很陌生。

Weex和React Native在大公司的流行,必然有它的道理。熱部署、跨平臺(tái)都是優(yōu)勢(shì),但最重要的是它們倆減少了客戶端的重復(fù)工作,結(jié)果就是能讓公司少招點(diǎn)客戶端開發(fā)。

機(jī)器學(xué)習(xí) & AR

也許你會(huì)說(shuō)今年WWDC給客戶端打了強(qiáng)力一針,機(jī)器學(xué)習(xí)+AR。不得不潑冷水,機(jī)器學(xué)習(xí)跟做普通的App有啥關(guān)系嗎?AR也是同理,有多少App需要用的到?再說(shuō)機(jī)器學(xué)習(xí)的學(xué)習(xí)成本有多大,AR關(guān)于圖形學(xué)的知識(shí)要學(xué)多久,這些都是問(wèn)題。

未來(lái)

未來(lái)一定屬于T型人才的,何為T型人才?
即在某一領(lǐng)域有很強(qiáng)的能力,并且有技術(shù)廣度。
怎么理解這句話,其實(shí)就是偏向于客戶端的全棧。不,應(yīng)該說(shuō)偏向于大前端的全棧,光會(huì)客戶端是沒(méi)用的。
而我的選擇是,保持客戶端深度的同時(shí),摸索前端,著重在后端領(lǐng)域深入下去。任何一個(gè)時(shí)代都不會(huì)缺后端的,并且基礎(chǔ)技術(shù)方案的迭代是很緩慢的。最起碼,學(xué)完SSH或者SSM三大框架后,了解一些設(shè)計(jì)(比如不是所有項(xiàng)目都要要ioc,hadoop就是例外),蹭蹭熱點(diǎn)(虛擬機(jī) & docker)。如果客戶端真的沒(méi)落了,也能轉(zhuǎn)向后端。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容