程序員這個職業(yè)會是另一個即將破裂的泡沫?

大數(shù)據(jù)

作者:Tyler Elliot Bettilyon

摘要:IT和一些低級別的編程工作最終會消失嗎?這個工作是一個巨大的即將破裂泡沫嗎?本文作者對此做了詳細的分析。以下是譯文。

一位朋友最近向我提了個問題,這個問題我曾經(jīng)在不同的論壇上聽到過,雖然問題的形式不太一樣:

“你認為IT和一些低級別的編程工作最終會消失嗎?這個工作看起來有點像一個巨大的即將破裂泡沫。我認為,科技和低水平計算機科學(xué)相關(guān)工作能夠“受人尊敬”以及保持高薪的唯一原因是這個行業(yè)中充斥著晦澀難懂的專業(yè)術(shù)語和公眾對計算機的無知,而這兩種情況在未來的10年里都將消失?!?/p>

這個問題既跟技術(shù)工作的未來相關(guān),也是對軟件工程領(lǐng)域誤解的一個常見例子。雖然這個行業(yè)里確實有很多“晦澀難懂的專業(yè)術(shù)語”,但其中也存在著相當(dāng)多的難題正等待著具備相應(yīng)技能的人去解決。一些軟件相關(guān)的工作正在慢慢地消失,但真正具備一定經(jīng)驗和知識的程序員們將繼續(xù)會受人尊敬,也能拿到較高的報酬。最近的AI研究員薪水大爆炸和相應(yīng)人才的缺乏正是印證了這一點。

在不斷變化的技術(shù)環(huán)境中保持相關(guān)性可能是一個挑戰(zhàn)??纯串?dāng)前那些用來取代程序員的技術(shù),我們就能夠預(yù)測有哪些工作在將來可能會消失。此外,要預(yù)測薪酬和技能需求的變化,應(yīng)該把未來會有越來越多的人學(xué)習(xí)編程這個情況考慮進去。正如Hannah所指出的那樣,“公眾對計算機的無知”使得會編程的人的工資很高,而公眾對計算機的了解會越來越深入。

持續(xù)向著商品化發(fā)展

對自動化取代人類的恐懼既不新鮮也沒有根據(jù)。在任何一個領(lǐng)域,特別是在技術(shù)領(lǐng)域,市場的力量都會推動企業(yè)走向自動化和商品化。 “Gartner炒作周期報告”就是對這種現(xiàn)象進行情景化的一種方式。

大數(shù)據(jù)
2017Gartner炒作周期

隨著時間的推移,一些特定的想法和技術(shù)最終必將走向自動化這個“生產(chǎn)力高地”??v觀歷史,我們可以得出結(jié)論,自動化有能力摧毀特定的就業(yè)市場。在不同的行業(yè),從作物收割到汽車裝配技,先進的技術(shù)將不斷增強甚至取代人力,進而降低成本。一位教授曾經(jīng)在編譯原理課上這樣說:“以紡織業(yè)和鋼鐵行業(yè)為例:你是要創(chuàng)造機器,還是要操作這些機器?

在這個比喻中,“機器”是指計算機編程語言。這位教授真的在問:你想用JavaScript創(chuàng)建網(wǎng)站,還是要構(gòu)建支持JavaScript的V8引擎嗎?

今天,網(wǎng)站的創(chuàng)建可以用WordPress或其他平臺來自動進行。而另一方面,V8正在成為越來越多解決開源研究問題的競爭對手。編程語言會突然流行起來,也會慢慢衰敗下去(現(xiàn)在還有多少Fortran相關(guān)的職位呢?),但總是會有人去創(chuàng)造下一個編程語言。 幸運的是,編程語言是用編程語言自己來編寫的。作為一名軟件業(yè)中的“機器操作員”,你將走上一條“機器創(chuàng)造者”的道路,而過去的鋼鐵工人并非如此。

層出不窮的編程語言、解釋程序和編譯器告訴我們,每一個破壞工作的機器也帶來了改進、維護這些機器的工作機會。盡管越來越多的工作崗位已經(jīng)不復(fù)存在,但人類歷史上還沒有出現(xiàn)過一個集體訴說“我們沒有任何工作可做”的時刻。

大數(shù)據(jù)

擺放保齡球球瓶的人

商品化正面向我們所有人走來,而不僅僅針對軟件工程師??v觀歷史,人類的勞動一直被非人類所取代,或者是所需的人數(shù)減少,以及所需掌握的技能要求降低。 自動駕駛的汽車和卡車?這個當(dāng)前最時髦的東西正說明了這一點。 如果創(chuàng)造和自動化這種循環(huán)反復(fù)是生活中存在的事實,那么接下來要回答的問題自然是:哪些工作和行業(yè)會面臨風(fēng)險,而哪些不會?

誰把誰自動化了?

AWS、Heroku和其他類似的托管平臺已經(jīng)永遠改變了系統(tǒng)管理員和DevOps工程師這樣的角色?;ヂ?lián)網(wǎng)企業(yè)過去完全需要有自己的服務(wù)器管理員,包括:精通Linux的人,會配置Apache或NGINX服務(wù)的人,一個不僅會在物理上連接服務(wù)器、路由器和所有其他物理組件,還能夠配置路由表以及所有讓服務(wù)器在互聯(lián)網(wǎng)上可訪問的軟件的人。盡管由人來操作更加專業(yè)一點,但AWS正在淘汰其中的一些技能,特別是那些無需多少經(jīng)驗水平以及物理側(cè)方面的工作。雖然亞馬遜(包括Netflix和Google)在網(wǎng)絡(luò)基礎(chǔ)設(shè)施方面擁有豐富的專業(yè)知識,但在中小型企業(yè)中這方面的需求要少得多。

SalesForce、Tableau和SpotFire等“商業(yè)智能”工具也逐漸開始侵占原本由軟件工程師占據(jù)的空間。這些系統(tǒng)減少了對企業(yè)內(nèi)部數(shù)據(jù)庫管理員的需求,但同時也增加了把SQL作為通用技能的需求。它們減少了對企業(yè)內(nèi)部報表制作技術(shù)的需求,但是增加了對“集成工程師”的需求,因為他們能讓數(shù)據(jù)自動地從企業(yè)流向第三方軟件平臺。之前由Excel和Spreadsheets主導(dǎo)的領(lǐng)域越來越多地被像Python或R這樣的腳本語言所主導(dǎo),并朝著用SQL進行數(shù)據(jù)管理的方向發(fā)展。有些工作已經(jīng)消失,但是對編程人員的需求總體上還在增加。

數(shù)據(jù)科學(xué)這個實際的案例在一定程度上跟軟件商品化非常類似。 Scikit.learn,Tensorflow和PyTorch都是通用軟件庫,開發(fā)者使用這些庫可以很容易地構(gòu)建機器學(xué)習(xí)應(yīng)用程序,而無需從頭構(gòu)建算法。實際上,人們可以使用很多不同的機器學(xué)習(xí)算法來運行數(shù)據(jù)集,而這些算法可以有許多不同的參數(shù)集,并且使用者無需深入理解算法是如何運行的(雖然這么做并不明智,但這是有可能的)。我可以打賭,商業(yè)智能公司將在未來的幾年內(nèi)將這些算法集成到自己的工具中。

數(shù)據(jù)科學(xué)在很多方面就像是5-8年前的網(wǎng)頁開發(fā)。這是一個蓬勃發(fā)展的領(lǐng)域,只要懂得一點知識你就能入門。隨著網(wǎng)站開發(fā)培訓(xùn)班的關(guān)閉,數(shù)據(jù)科學(xué)培訓(xùn)班如雨后春筍般地冒了出來。Kaplan曾經(jīng)購買了原來的網(wǎng)絡(luò)開發(fā)培訓(xùn)班(Dev Bootcamp)并啟動了數(shù)據(jù)科學(xué)培訓(xùn)班(Metis),現(xiàn)在決定關(guān)閉DevBootcamp,但繼續(xù)維持Metis的運營。

內(nèi)容管理系統(tǒng)是讓企業(yè)自動遠離對軟件工程師需求的流行工具之一。 SquareSpace和WordPress是當(dāng)今最受歡迎的CMS系統(tǒng)。這些平臺的存在顯著降低了那些只具備一點點前端Web開發(fā)技能的開發(fā)者的價值。事實上,現(xiàn)在制作網(wǎng)站和上網(wǎng)的障礙已經(jīng)大大降低,沒有任何編程經(jīng)驗的人每天都在發(fā)布網(wǎng)站。他們不是在為互聯(lián)網(wǎng)提供數(shù)十億人訪問的互動網(wǎng)站,而是為自己的企業(yè)搭建網(wǎng)站,為客戶提供他們所需要的信息。一個包含如何找到企業(yè)以及如何與企業(yè)聯(lián)系的可愛登陸頁面,對于當(dāng)?shù)氐牟宛^、酒吧或零售店來說已經(jīng)完全足夠了。

如果企業(yè)的主要業(yè)務(wù)并不是“互聯(lián)網(wǎng)業(yè)務(wù)”,那么,在互聯(lián)網(wǎng)上搭建一個網(wǎng)站并不簡單。因此,曾經(jīng)一度非常繁榮的網(wǎng)站承建商這個行業(yè),雖然它們能幫你在互聯(lián)網(wǎng)上快速建立起一個簡單的網(wǎng)站,但也開始變得越來越不賺錢。

最后,在這種情況下,無視計算機的物理特性就是一種自大。用Mike Acton的話來說:“軟件并不是平臺,硬件才是平臺”。軟件相關(guān)人員至少要學(xué)習(xí)一點計算機架構(gòu)和電氣工程知識才是明智的。消費級量子計算機的出現(xiàn)將會改變軟件工程的一切。

量子計算機還很遙遠,但人們對GPU以及并行化趨勢的興趣正日益增長。 CPU速度的提高已經(jīng)停滯了好幾年,但機器學(xué)習(xí)和“大數(shù)據(jù)”的飛速發(fā)展不可抑制。隨著處理大型數(shù)據(jù)集的需求越來越多,OpenMP、OpenCL、Go、CUDA和其他一些并行處理語言和框架將成為主流。為了在短期內(nèi)提高競爭力,全方位的并行化是將成為主流,這不僅僅體現(xiàn)在操作系統(tǒng)上,還體現(xiàn)在基礎(chǔ)設(shè)施和視頻游戲等領(lǐng)域中。

每個人都在學(xué)習(xí)編程

網(wǎng)站無處不在。?2017年的Stack Overflow調(diào)查報告指出,約有15%的專業(yè)軟件工程師都在“互聯(lián)網(wǎng)/網(wǎng)絡(luò)服務(wù)”公司工作。據(jù)勞工統(tǒng)計局預(yù)測,網(wǎng)絡(luò)開發(fā)崗位人數(shù)的增長速度將繼續(xù)高于平均水平(2014年至2024年平均水平為24%)。由于該行業(yè)的的知名度較高,人們紛紛關(guān)注起“技能差距的彌補”上。編程培訓(xùn)班現(xiàn)在幾乎只教網(wǎng)站開發(fā),而網(wǎng)站開發(fā)在線課程也已經(jīng)搶占了Udemy、Udacity、Coursera和其他一些在線課程的市場。

網(wǎng)站開發(fā)技術(shù)的自動化程度越來越高、大量入門級網(wǎng)站開發(fā)程序員的涌入,使得有人預(yù)測網(wǎng)站開發(fā)對于軟件開發(fā)人員來說將成為一個“藍領(lǐng)”市場。有人進一步指出,推動該市場的藍領(lǐng)化是大型科技公司的一個戰(zhàn)略。而其他一些人則說,我們正在為另一個即將破裂的泡沫而努力。

對特定技術(shù)的需求發(fā)生變化并不是新聞。 語言和框架的發(fā)展總會遇到上升期和下降期。目前的網(wǎng)站開發(fā)(“JS為王”)會重走2000年初的網(wǎng)站開發(fā)之路(還記得Flash嗎?)。 在決定給自己貼上“React開發(fā)者”這個標(biāo)簽之前,請記住,曾經(jīng)有人認為自己是“Flash開發(fā)者”。把自己的事業(yè)限制在一個特定的語言、框架或技術(shù)上就像是一場賭博。當(dāng)然,要預(yù)測哪些技術(shù)能保持相關(guān)性是相當(dāng)困難的,但是如果你想迎難而上,那么我建議你以“Lindy效應(yīng)”為依據(jù),并選擇像C語言這樣已經(jīng)經(jīng)受住了時間考驗的東西。

未來一代年輕人的技術(shù)素養(yǎng)肯定更高,這是X一代甚至千禧一代的人們所不具備的。同時,CMS工具也會變成更好,以方便年輕人更好的利用這些工具。這樣,更多的年輕人會進入這個行業(yè),從而導(dǎo)致低水平IT和網(wǎng)絡(luò)開發(fā)技能的價值大大地降低。另外,高中也會開始提供計算機科學(xué)和編程方面的課程,一些受過良好教育的高中生可能會進入勞動大軍,在畢業(yè)后立即成為一名編程實習(xí)生。

另外的一大批編程新軍是MBA和數(shù)據(jù)分析師。曾經(jīng)的職位描述中要求會用Excel,而現(xiàn)在開始改為會用SQL,或者是熟練使用SQL。諸如Tableau、SpotFire、SalesForce和其他一些基于Web的度量系統(tǒng)將取代電子表格成為報告生成的主要工具。如果這種情況持續(xù)下去,那么就會有更多的數(shù)據(jù)分析師去學(xué)習(xí)SQL,因為這比將數(shù)據(jù)導(dǎo)出到電子表格中處理更簡單。

那些想要轉(zhuǎn)入IT行業(yè)或者想在崗位上更進一步的人來說,在網(wǎng)上學(xué)習(xí)數(shù)據(jù)庫和統(tǒng)計類編程語言是一個不錯的選擇。在有了這些新技能之后,他們就可以把機器學(xué)習(xí)和統(tǒng)計庫方面的庫結(jié)合來,把自己定位為數(shù)據(jù)科學(xué)家。

最后,獲得計算機科學(xué)和軟件工程學(xué)位的人數(shù)正逐年攀升。例如,普渡大學(xué)宣稱,他們計算機科學(xué)課程的申請數(shù)量在五年內(nèi)翻了一翻??的螤柎髮W(xué)也報道了計算機科學(xué)畢業(yè)生數(shù)量大爆炸的新聞。鑒于軟件的增長和普及,這一趨勢并不令人驚訝。對于年輕人來說,他們很難想象計算機在我們未來生活中充當(dāng)?shù)慕巧珜⒃絹碓叫。詾槭裁床谎芯恳恍┠軌虮W∥覀冿埻氲臇|西呢。

稀缺和期望

在這個行業(yè)中,現(xiàn)在有一個很普遍的觀點,認為在大學(xué)四年的計算機科學(xué)課程中學(xué)到的知識大多是沒什么大用處的。我在培訓(xùn)班、在線開發(fā)商店,以及一些大人物例如Eric Elliott的作品中都看到過類似的觀點。當(dāng)然,反對意見也很多,有人甚至說:“所有的程序員都應(yīng)該有碩士學(xué)位””。

我的想法跟Eric Elliott一樣,我認為對于編程來說,還是有更多其他的路可以選的,而4年的大學(xué)生活可能也不是某些人最佳的選擇。同時,我也同意威廉·貝恩的觀點,即跨學(xué)科領(lǐng)域應(yīng)用的基礎(chǔ)技能對于職業(yè)生涯的長期發(fā)展來說是至關(guān)重要的,而且在大學(xué)課程之外還很難找到相關(guān)的知識。我以前曾經(jīng)寫過有關(guān)一個有抱負的工程師在漫長的職業(yè)生涯中應(yīng)該學(xué)習(xí)哪些基礎(chǔ)技能。

不同規(guī)模不同形式的編程學(xué)校到處都是,并且他們的廣告詞讓人無法拒絕。在那里,你無需涉及底層細節(jié)、算法和數(shù)據(jù)結(jié)構(gòu),即可學(xué)會編程。然而,雖然斯坦福大學(xué)的畢業(yè)生確實會與來自Hack Reactor的畢業(yè)生爭奪一些工作,但這僅限于在一兩個子行業(yè)里。編程學(xué)校和培訓(xùn)班的學(xué)生目前還沒有進入嵌入式系統(tǒng)、密碼與安全、機器人,網(wǎng)絡(luò)基礎(chǔ)設(shè)施或人工智能等行業(yè)的研究和開發(fā)工作中去。然而,在像網(wǎng)頁開發(fā)這樣的領(lǐng)域中,這方面的發(fā)展十分迅速。

一些與編程相關(guān)的技能已經(jīng)開始從“稀缺技能”轉(zhuǎn)向“期望標(biāo)準(zhǔn)”。推動科技發(fā)展的大公司,例如亞馬遜、Google、Facebook、Nvidia、Space-X等等,通常不會招聘對JavaScript只是基本了解的人。 AWS每天為數(shù)十億用戶提供服務(wù),為了支撐這種負載,AWS基礎(chǔ)架構(gòu)工程師需要深入了解網(wǎng)絡(luò)協(xié)議和計算機體系結(jié)構(gòu),并擁有多年的相關(guān)經(jīng)驗。與其他學(xué)科一樣,IT業(yè)中也有業(yè)余愛好者和工匠。

這些著名的公司正致力于解決研究性的問題,以及構(gòu)建某種真正能夠突破邊界的系統(tǒng)。然而,即使在基本的編程技巧越來越普及的情況下,他們?nèi)匀缓茈y招到合適的人來填補空缺。能夠編寫算法來預(yù)測基因序列變化的人將會受到這些公司的追捧,在未來的價值將非常高。能夠給衛(wèi)星、航天器和機械自動化編程的人將繼續(xù)受到企業(yè)的高度重視。這些領(lǐng)域并不適合成為像前端網(wǎng)絡(luò)開發(fā)那樣的“三個月速成班計劃”。

計算機科學(xué)脫胎于“計算機”這個詞,一些人預(yù)計,到2025年人們對它會有天生的理解。很可惜,計算機的普及并沒有造就出真正理解數(shù)學(xué)、計算機科學(xué)、網(wǎng)絡(luò)基礎(chǔ)設(shè)施、電氣工程等學(xué)科的新一代。計算機素養(yǎng)與計算機的研究是不一樣的。盡管數(shù)學(xué)已經(jīng)存在,但統(tǒng)計學(xué)素養(yǎng)較高的人仍然比較少,計算機科學(xué)也一樣。?Euclid發(fā)明了多種算法,其中有一個算法在每次發(fā)送HTTPS請求的時候都會用到。但事實上,每次我們使用HTTPS登錄網(wǎng)站的時候,并不會自動了解這些協(xié)議的工作原理。

雙峰薪水分布圖

成熟專業(yè)領(lǐng)域的薪水分布圖往往有兩個波峰:相對較少的人賺取了相當(dāng)多的錢,他們中大多數(shù)人的薪水都很高,但在收入的前1%中卻看不到他們的身影。美國國家法律安置協(xié)會(National Association for Law Placement)收集的數(shù)據(jù)證明了這種情況。大部分法學(xué)畢業(yè)生的工資在4500美元到65000美元之間,雖然工資很高,但很難跟“頂尖專業(yè)人士”聯(lián)系在一起。

大數(shù)據(jù)

擁有法學(xué)學(xué)位的人的收入分布圖,來自于美國國家法律安置協(xié)會?我們往往會認為,所有的法律專業(yè)畢業(yè)生都有可能成為一家律師事務(wù)所的合伙人,而事實上他們有很多的職業(yè)方向:律師助理、文員、公共辯護、法官、企業(yè)法律服務(wù)、合同寫作等等。計算機科學(xué)專業(yè)的畢業(yè)生也有很多的道路可以選擇,從網(wǎng)頁開發(fā)到嵌入式系統(tǒng)。由于基本的編程技能仍然是“期望”,而不是“具備”,因此,我猜測編程這個職業(yè)的收入分布圖也會出現(xiàn)類似的情況。

雖然總會有一批IT界人士花費大量的資金來推動技術(shù)的發(fā)展,同時也會有越來越多的IT中產(chǎn)階級人士為新的以計算機為中心的經(jīng)濟提供支持。網(wǎng)頁開發(fā)人員的平均收入肯定會隨著時間的推移而下降。也就是說,“程序員”的職位總數(shù)只會繼續(xù)增長。對于那些正在重新定義可能性的程序員來說,他們將繼續(xù)獲得頂級工資。

無論你在這個行業(yè)中身處哪個角色,從事技術(shù)職業(yè)就意味著你要活到老學(xué)到老。如果你想讓自己的收入出現(xiàn)在第二個波峰上,那么你可能需要研究如何創(chuàng)造機器,而不是簡單地操作它們。

極客網(wǎng)企業(yè)會員

免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負任何法律責(zé)任。任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。

2017-12-08
程序員這個職業(yè)會是另一個即將破裂的泡沫?
作者:Tyler Elliot Bettilyon 摘要:IT和一些低級別的編程工作最終會消失嗎?這個工作是一個巨大的即將破裂泡沫嗎?本文作者對此做了詳細的分

長按掃碼 閱讀全文