軟體開發工程師的年齡天花板是什麼?當你50歲的時候,「從業經驗超過25年」真的是最好的求職話術嗎?在reddit上,這樣一則問題引起了無數高齡工程師圍觀。

高齡員工對於公司而言意味著什麼?

顯而易見,年齡偏長的員工幾乎就與低性價比畫上了等號。在題目下,很多人給出了非常現實的回答和建議。「公司通常想要更年輕,並且人工成本更低的人,對於一項新技術而言,公司也傾向於為年輕人培訓,因為公司認為年輕人有更好的學習能力。」

「大於40歲的人通常有家庭需要兼顧,無法適應公司的加班工作。」「對於一個56歲的人而言,我會說是的:在處理了一天的程式碼之後,「終於結束了」對於我而言的潛台詞是「我快死了」。而對於團隊中最年輕的成員而言,他如果在工作結束是說自己「精疲力竭」,那絕對是個善意的謊言。」

「IT行業如今仍然是新鮮事物,我們如今看到許多40到50歲的中高層管理人員、CTO(首席技術官,Chief Technology Officer)、架構師,是因為目前處於發展時期的公司有這樣的需求,但是對於如今20多歲的程序員而言,當他們到了40歲的年齡,現實就遠沒有這麼樂觀了」

「任何可以自動化的工作,最終都會被自動化機器所取代,削減成本、降低人力開銷是所有公司能夠生存下去的主題。」

「任何工作遲早會成為死路,這就是人們退休的原因。我是一個55歲的程序員,當我40歲的時候,我似乎會永遠喜歡編寫程式,這只是一個高薪的愛好。問題是這項工作不僅需要大腦,還需要功能良好的手指、手腕、眼睛、脊髓、頸部等,所有這些都不會隨著年齡的增長而變得更好。」

對於IT行業而言,一方面技術日新月異,10年前的技術很可能在今天就變得毫無用武之地;另一方面與很多行業一樣,年齡偏大的員工意味性價比低下:工作年限以及家庭負擔使得他們需要更多的薪水,但是無論身體、精力還是工作時間都無法與年輕人相提並論。

現實真的這麼令人沮喪嗎?

幾位「軟體工程師老爺爺」給出了不一樣的回答。65歲「軟件老爺爺」:找工作很難,但我仍然充滿熱愛軟件工程師的經歷有多豐富?

一位65歲的工程師回覆:「我是一名65歲的軟體工程師,曾在Apple、Adobe、eBay、Microsoft、VMware、Cisco、FileMaker、XO Communications、2Wire、Egnyte、Nexsan 和其他兩家初創公司工作過。在我的職業生涯中,我被解雇了5次。但是,我總是能在3到4週後找到另一份工作—即使是在經濟衰退期間。我曾4次將我的工作外包給印度或中國—尤其是在過去8年中。

儘管如此,之後總會有另一個就業機會在等待。我愛我的工作,並且我還在堅持,而且,我沒有要停下來的想法。而且可以說,我很擅長這門工作,這倒不是因為我是個天才,而是因為我從事軟體開發工作已經很長時間了,時間的長度讓我從錯誤中吸取了教訓。

這份工作所帶給我的經歷頗多:大部分電腦程式語言都難不倒我,而且目前為止我對所有操作系統平台都運用熟練。除了美國,我還在蘋果的中國和愛爾蘭分公司工作過。除了英語,我還學會了說(很差的)西班牙語和意大利語,還可以用普通話說大約10個短語。

而且,我的子女中也有1人是工程師,他在Netflix工作。根據我的最後一份社會保障報告,我迄今為止的總收入為:3042,040 美元(約合8千萬台幣)。話雖如此,但年齡歧視和外包在矽谷非常普遍。

在45歲之前,我可以很輕易地找到1份工作。而現在,我已經64歲了,我需要大約10次面試才可能找到下1份工作。我有時也不得不在沒有福利的情況下擔任承包商。而且我學會了忍受來自傲慢但卻手握權力的年輕人的面試,他們大多自以為是實際上卻連我所知的1/10都沒有,也幾乎沒有出色的學歷。(我在德州農工大學獲得土木工程學士學位和電腦科學碩士學位—後者我的成績在班上名列前茅。)

所以,軟體開發是死路嗎?不!這是一份很棒的工作。隨著年齡的增長,找到下一份工作會變得更難嗎?哦,是的。但是,那又怎樣!如果你喜歡它,就像我所做的那樣,除了死亡或健康不佳可以阻止你。所需要的只是一個決心。「永不放棄!」

66歲的老父親被Google獵人頭挖角

我認識的一位軟體開發人員最近接到了Google獵人頭的電話。這位開發人員是Google的一位前員工,5年前他離開Google去從事其他項目,據說他離職的原因是因為不喜歡Google所在的城市。

他沒有電腦科學學位,也沒有上過OOP(物件導向程式設計,Object-oriented programming)的課程,但顯然對於Google而言,他仍然是個不可或缺的人才。

鑑於他之前離職的原因,Google的招聘人員提出了更好的建議:他可以與新加坡的Loon項目團隊聊聊。(編者註:Loon計劃由於成本過高在今年流產了。)

他在電話中與招聘人員反覆確認:「你知道我多大了對吧?」「是的,您今年66歲了。如果您願意,可以在1周內到我們總部來談談。」那個66歲的開發者就是我的父親,2008年他首次進入Google,當時已經58歲了。在Google他使用java這種他45歲時才被發明出來的語言編程,而且他在工作期間是1位獨立開發者,沒有任何工程師向他匯報。

軟體開發的一大優點在於對學習的熱情和執行能力,這在我父親的職業生涯和其他數千人的職業生涯中得到了證明。如果你有激情和技能,那麼40歲、50歲甚至60歲以後都不是死路一條。

資深從業人員怎麼說

儘管貼文下面眾說紛紜,但是也不乏理性、冷靜的資深從業人員給出了中肯的建議:一位在業內從業將近30年的老程序員,如今是職位搜索引擎Indeed的資深技術主管Christopher Burke這樣說到:「軟體開發行業並不能說在35到40歲之後就到了死路。不過,這裡也有一些事實:

1.年齡歧視肯定存在於軟體行業(以及性別歧視、種族主義、仇外心理等等)。當然它不是無處不在,但它在足夠多的地方影響著就業市場。

2.在35-40歲的時候,與25-30歲的具有同等適用技能的人相比,可能期望更高的薪酬和更好的工作條件。

3.在35-40歲,你在學校學到的最前沿的技能和技術與現在10-20歲年輕人已經不同,如果你沒有跟上,就有被淘汰的風險。

4.在許多公司軟件開發人員沒有可行的「技術階梯」:像「高級工程師」這樣的頭銜是軟件開發人員可以獲得的最高職位,在達到這個薪酬等級之後,軟件開發人員必須進入管理角色—無論是否適合他們;

5.「管理」不僅僅是管理人。在一家有前景的公司必須有人管理技術—例如CTO。許多CTO仍在編寫代碼,很少有人會稱CTO為死路。

6.一些公司傾向於聘請更成熟的軟體開發人員,尤其是他們的遠程協作,因為他們「一人多能」。

在35到40歲之後,您可以做一些事情來保持軟體開發人員的身份:

  • 為擁有技術階梯或雙重職業階梯的大公司工作
  • 成為全職承包商、成為顧問、創辦自己的公司
  • 做一份輕鬆的日常工作,一邊做合約的軟體開發工作
  • 保持你的技能與時俱進,從你的經驗中學習,擁有良好的人際關係和溝通技巧,做真正擅長的工作。

而另一位從業超過25年的資深程序員Ryan J. McDonough這樣說到:「我不會說寫程式是一項沒有盡頭的工作。但是,有幾個事實需要考慮:您可能會在高級工程師或首席工程師之類的頭銜上停留多年。如果你真的很出色,你可能會成為「研究員(Fellow)」,但這通常很少見,通常在大公司中才會出現。

在某個時間點之後,除了生活成本或獎金增加之外,您可能不會看到薪酬有顯著增加,你更有可能在郊區而不是大城市的新時尚科技公司工作,這適用於許多仍然是軟體工程師的人。我有很多50多歲的好朋友,他們仍在從事寫程的式工作,並且非常滿足於這樣做。

使這些人與眾不同的是以下幾點:

1.與年輕人不同,年長的程序員通常需要較少的管理成本。

2.因為擁有更豐富的經歷,在面對矛盾時他們處理起來更加明智。

3.他們能夠跟年輕得多的領導和諧相處。

4.他們知道如何適應並且永遠不會停止學習。

我的一位擁有20年Java/JavaEE經驗的48歲工程師可以輕鬆地跳入Node.js項目並使用Docker部署它,這將比仍然堅持JavaEE WAR部署模型並抵制新技術的人做得好得多。最後一點很關鍵「如果你沒有能力不斷學習新事物,你應該考慮轉行。」

簡而言之,一方面學會「躺平」接受現實,另一方面還要保持一顆年輕的心,永遠與時俱進。

*本文獲「新智元」(公眾號 ID:AI_era),原文:拯救大齡碼農:35-40歲之後,軟件開發工程師走進死胡同了?

責任編輯:鍾守沂