Facebook看起來不太復(fù)雜,為什么需要那么多頂尖工程師來開發(fā)和維護(hù)?
突然就想起了網(wǎng)上一個段子,就是一個煤老板暴發(fā)戶看到互聯(lián)網(wǎng)時代來了,就要昂首進(jìn)入互聯(lián)網(wǎng)企業(yè),于是招了一批員工就說,拿著美團(tuán)外賣、滴滴、微信、Facebook看了一圈,這些APP功能都很簡單嘛,你們給我也搞一個。
內(nèi)行看門道,外行看熱鬧,你不懂這個行業(yè)當(dāng)然不知道這里面的技術(shù)難度到底有多大,當(dāng)你的App或者網(wǎng)站擁有超過10億用戶的時候,你就知道隨著用戶量的增加,技術(shù)難度幾乎是呈指數(shù)級曲線增長。就是大家瞧不起的外賣的APP,每一個功能細(xì)節(jié)背后,都有著非常復(fù)雜的業(yè)務(wù)邏輯,絕對不是表面上看到的那么簡單。
系統(tǒng)的難度不在表面,我用三峽工程來舉例子
超級平臺的難度,從來都不在表面上有多少個按鈕,有幾個層級,有多少個頁面,這些都是浮在表面上的,更大的技術(shù)難度都在你看不見的地方,而這些技術(shù)難題都是你看不見的,不懂技術(shù)你當(dāng)然會想當(dāng)然的覺得很簡單。
我們來舉個簡單的例子。假如你們村需要灌溉田地、需要養(yǎng)魚養(yǎng)蝦,這時候你們需要修一個水渠,從長江里面或者一些山間小溪里面的水引到相應(yīng)的地方,這種小型工程里面你們村里自己隨便找?guī)讉€人的就可以了,隨便弄一個溝渠也不用特別復(fù)雜。這個水渠到了某個位置,需要建立一個小的水庫、蓄水池來蓄水,這時候你們可以自己挖一個池塘,只要留好進(jìn)水口、出水口,然后普通泥土地里挖坑,然后用工具把泥土打硬就好,基本上就能保證能有很好的蓄水功能,當(dāng)然你要質(zhì)量好一點,也可以用磚、水泥結(jié)構(gòu)。
村里為了致富,決定將你旁邊的小溪用來攔起來,然后做一個大型的水庫,這樣到了旱季的時候你們就不缺水了,這個水存起來可以用來養(yǎng)魚養(yǎng)蝦,也可以用來做自己平常飲用的水,也可以用來日常洗衣、喂養(yǎng)牲口之類的等等,這時候你們發(fā)現(xiàn)你們村里的工人就搞不定了,得找專業(yè)的建筑隊或者建筑公司,你會發(fā)現(xiàn)建筑隊里面有建筑設(shè)計師,也有專業(yè)的施工員、安全員等等,然后水壩的結(jié)構(gòu)變得復(fù)雜了,水壩是一些鋼筋混凝土結(jié)構(gòu),不是隨便弄弄就好了。
前面這些有小工程,也有大工程,不過都算不得超級工程。你看到了三峽,同樣是水利工程,類別相同但是規(guī)模不可同日而語,三峽的總設(shè)計師鄭守仁是中國工程院院士,工程的論證組技術(shù)總負(fù)責(zé)人是中科院院士潘家錚。三峽壩高185米,光是大壩這蓄水深度,大壩的結(jié)構(gòu)都是個大問題,這種級別的工程需要的頂級的建筑設(shè)計團(tuán)隊,頂級的大壩結(jié)構(gòu)工程師,頂級的水利水電工程師,頂級的工程力學(xué)團(tuán)隊等等。
事實上計算機(jī)工程也類似,一個操作系統(tǒng),可以很簡單、也可以很復(fù)雜,簡單的操作系統(tǒng)比如一個電風(fēng)扇、空調(diào)、洗衣機(jī)、冰箱的控制系統(tǒng),復(fù)雜的系統(tǒng)比如銀行取款機(jī)、醫(yī)院的醫(yī)療設(shè)備,再復(fù)雜一點的比如智能手機(jī)、計算機(jī)操作系統(tǒng),就變得越來越復(fù)雜,因為需要支撐的功能越多,功能就會越復(fù)雜。
互聯(lián)網(wǎng)系統(tǒng)更是,一個大型App本身就是一個“操作系統(tǒng)”,只不過這個操作系統(tǒng)看似在本地系統(tǒng)上運行,但是真正的大規(guī)模的數(shù)據(jù)運算,都是在你看不見的服務(wù)端進(jìn)行的。你看到的只是你給某個好友發(fā)了消息,但是背后同時可能有上億人,甚至幾億人同時在發(fā)消息,你看到的是你點了個外賣、你打了一個車,卻沒看到這背后從接單到派單的邏輯,每個功能后面還可能有很多運營指標(biāo),需要設(shè)置好各種折扣,派車邏輯本身又要細(xì)分很多子邏輯,比如司機(jī)的距離依據(jù)、司機(jī)的評分依據(jù)、乘客的標(biāo)簽、以及訂單的取消和重派,每一個功能背后其實都相當(dāng)復(fù)雜,是一個超級工程,單單幾億、幾十億用戶的并發(fā)對于軟硬件的沖擊,都是相當(dāng)復(fù)雜的。
正所謂隔行如隔山,外行當(dāng)然不知道一個超大型網(wǎng)站、App背后到底有多么高的技術(shù)難度,不過你要明白,這些企業(yè)給了很多來自國內(nèi)外名校的高材生高薪,必然是有道理的,不然為啥拿百萬年薪的是那些人,阿里巴巴、騰訊這樣的互聯(lián)網(wǎng)超級巨頭這么賺錢。