神譯局是36氪旗下編譯團隊,關(guān)注科技、商業(yè)、職場(chǎng)、生活等領(lǐng)域,重點(diǎn)介紹國外的新技術(shù)、新觀(guān)點(diǎn)、新風(fēng)向。
編者按:提到未來(lái)會(huì )被取代的職業(yè),我們大多數能想到的都是司機、銀行柜員、售貨員等等,幾乎沒(méi)有人覺(jué)得軟件開(kāi)發(fā)職業(yè)會(huì )被取代。但實(shí)際上,這個(gè)職業(yè)在過(guò)去的幾十年里發(fā)生了巨大的變化,而且變化的速度逐年加快。那怕你停止學(xué)習兩年,你所知道的一切就會(huì )過(guò)時(shí)。過(guò)去的經(jīng)驗或許不再適用,人們需要跟上即將到來(lái)的軟件發(fā)展和革命,正確地預測下一波潮流是什么,并趕上潮流。準備好改變——或者被改變。本文譯自Medium,作者Elye,原文標題為Software Developers: Adapt or You’ll Be Replaced,希望對您有所啟發(fā)。
如果有人問(wèn),未來(lái)10年哪些工作將被淘汰,人們想到的會(huì )是那些可能被機器和軟件取代的工作,如司機、播音員、旅行社等。
對許多人來(lái)說(shuō),軟件開(kāi)發(fā)崗位不可能在這個(gè)清單上。軟件是未來(lái),因此軟件開(kāi)發(fā)崗位是最可靠的工作。但真的是這樣嗎?
雖然這樣說(shuō)是有道理的,但也不全對。原因如下:
硬件架構更加持久,
但軟件架構經(jīng)常變化。
變化是唯一永恒的東西,
所以,軟件獲勝。
匯編程序設計被認為是一種軟件,但后來(lái)C語(yǔ)言成為了規范?,F在,如果你說(shuō)你用C語(yǔ)言編程,有些人會(huì )認為你是硬件工程師而不是軟件工程師。
與許多其他職業(yè)不同的是,這個(gè)職業(yè)在過(guò)去的幾十年里發(fā)生了巨大的變化,而且變化的速度逐年加快。
那怕你停止學(xué)習兩年,你所知道的一切就會(huì )被認為是過(guò)時(shí)的。我有個(gè)朋友從軟件開(kāi)發(fā)人員轉到管理人員。他仍然不時(shí)地從事敲代碼工作,但隨著(zhù)時(shí)間的推移越來(lái)越少了。幾年后,開(kāi)發(fā)人員要求他不要再?lài)L試敲代碼了,因為大多數時(shí)候他會(huì )破壞架構。
今天的醫生所做的可能與十年前有所不同,但大多數仍然是類(lèi)似或相關(guān)的。但是,今天的軟件開(kāi)發(fā)人員所做的幾乎是完全不同的工作。
“我們正在經(jīng)歷一個(gè)過(guò)程,軟件將使軟件自動(dòng)化,自動(dòng)化將使自動(dòng)化自動(dòng)化?!R克·庫班(Mark Cuban)
雖然很多人擔心他們的工作會(huì )因為自動(dòng)化和人工智能而過(guò)時(shí),并認為軟件開(kāi)發(fā)是未來(lái)的趨勢,但沒(méi)有多少人意識到自動(dòng)化在軟件中更容易實(shí)現。這意味著(zhù),人們今天所做的軟件工作在未來(lái)可能不再相關(guān)。
自動(dòng)編程并不是一個(gè)新概念。這個(gè)想法始于20世紀40年代,當時(shí)工程師們想要實(shí)現穿孔卡片編程過(guò)程的自動(dòng)化。這個(gè)想法還不止于此。通過(guò)引入了更高級別的編程語(yǔ)言,我們可以編寫(xiě)更少的代碼,或者換句話(huà)說(shuō),自動(dòng)化較低級別的代碼。
測試和發(fā)布軟件的過(guò)程,過(guò)去是整個(gè)團隊的努力,今天卻可以被一個(gè)運行腳本所取代,該腳本可以觸發(fā)機器群自動(dòng)運行所有批處理工作。編程語(yǔ)言的發(fā)展,例如,面向對象編程和函數式編程的引入,是由“編寫(xiě)更少代碼”和“以更快速度實(shí)現更多變化”的愿望所驅動(dòng)的。
十年前,我在代碼校對中做的一件事就是確保代碼遵循正確的編碼格式。而今天,我甚至都不在乎這些。因為在提交代碼之前,格式會(huì )自動(dòng)修正。
雖然完全自動(dòng)化編程是一個(gè)超級困難的問(wèn)題,但軟件開(kāi)發(fā)人員每天都在不斷地更新自己:因為他們非??粗夭灰貜妥约?DRY, don’t repeat yourself)原則。
“我們始終相信,年輕人更善于發(fā)展未來(lái),因為他們就是我們的未來(lái)?!薄R云
在大多數職業(yè)中,你在一份工作中工作的時(shí)間越長(cháng),你就越有經(jīng)驗,因此你就越優(yōu)秀。我們會(huì )更喜歡有經(jīng)驗的醫生、律師和會(huì )計,而不是新手。
但對于軟件開(kāi)發(fā)來(lái)說(shuō),由于變化的速度很快,你在最初5年的開(kāi)發(fā)中所學(xué)習和經(jīng)歷的東西,在接下來(lái)的5年里,最多可以作為一個(gè)歷史教訓來(lái)使用,說(shuō)明那些技術(shù)是多么幼稚。
技術(shù)在發(fā)展,新的編程語(yǔ)言在被不斷引入,新的實(shí)踐優(yōu)于舊的實(shí)踐。年輕一代適應得更快,因為他們沒(méi)有任何舊習慣的包袱。有經(jīng)驗的開(kāi)發(fā)人員可以更快地識別風(fēng)險、調試bug等。但是有了工具,自動(dòng)化會(huì )使這些任務(wù)變得越來(lái)越容易。
我并不年輕,而且我在軟件開(kāi)發(fā)方面有超過(guò)20年的經(jīng)驗,但我發(fā)現自己大部分時(shí)間都在向年輕的程序員請教,向他們學(xué)習。
在年輕和開(kāi)發(fā)人員和有經(jīng)驗的開(kāi)發(fā)人員之間,競爭環(huán)境是平等的。重要的不再是你在這個(gè)領(lǐng)域有多久了,以及你有多有經(jīng)驗,甚至你的大學(xué)學(xué)位也可能不再重要了。
軟件開(kāi)發(fā)人員的工作定義和范圍,以及所需要技能集在未來(lái)幾年將會(huì )有很大的不同。過(guò)去的經(jīng)驗或許不再適用,人們需要跟上即將到來(lái)的軟件發(fā)展和革命,正確地預測下一波潮流是什么,并趕上潮流。
準備好改變——或者被改變。
譯者:Jane
本文來(lái)自翻譯, 如若轉載請注明出處。
聯(lián)系客服