1. 程式人生 > >超過三十歲就不適合寫程式碼了?看看國外程式設計師怎麼說

超過三十歲就不適合寫程式碼了?看看國外程式設計師怎麼說


>譯  原文:https://workplace.stackexchange.com/questions/163614/how-to-stay-relevant-as-programmer-in-long-term 本文來自stackexchange.com的問答:

問:如何長期從事程式設計師相關的工作

gydorah: 我是一個29歲的程式設計師。 隨著時間的推移,我注意到的一點是,我不再像剛開始工作時那樣朝氣蓬勃、意氣風發和精力充沛。隨著年齡的增長,對我的工作要求越來越高,每天都需要學習新的東西,隨著時間的推移,我的大腦開始變得不如從前,但最重要的是,我比以往任何時候都需要更多的睡眠。作為開發人員工作變得更加困難。雖然我還可以解決這個問題,但對我的職業前景還是有些懷疑。 對我來說,比較多的建議是開始尋求人性化的(技術性不那麼強)工作,比如管理或指導。這方面的一個大問題是,我沒有這些職位所需的社交能力,也就是說無法處理廣泛的社交活動。即使我具備這樣的能力,我還是會覺得管理非常無聊,更糟糕的是,政治。事實上,我的內向性格是我開始寫程式碼的主要原因,對技術的熱愛,解決問題和麵對挑戰也是重要的,但只排第二。 也有人經常建議,我應該轉到不那麼熱門的專案,不需要在最一線,但問題是,我真的不想最終陷入死衚衕,如果我被解僱或只僅僅只想換工作,我的簡歷上會出現很大的履歷缺陷。我不想失去職業競爭力。 * 我在職業生涯的選擇上是否太固執、理想主義或者太不成熟?難道我不得不放手嗎? * 在未來一段時期,我能否繼續把程式設計作為我的主要收入來源? * 30歲以上的程式設計師有哪些方式可以保持活躍在在技術崗位上,而不必轉向人道主義(管理性)的方向?

回答


回答1

Justozauras: * 學習那些有長期價值且不會經常改變的基礎性東西——停止學習框架。如果一家公司有自己的產品,就要獲取相關領域知識和業務洞察力,以便有更廣闊的前景。軟技能仍然很重要,即使你想繼續作為開發人員。 * 別忘了好好度假(旅行)來充電,遠離默守陳規的生活。 * 臨時切換日常活動,每天抽出時間遠離工作——去散步或運動。 * 養成習慣和規律來檢視部落格、瞭解技術趨勢。 * StackOverflow可以用來在你學習或學習的時候尋找問題的但——回答有助於更好地記憶和獲得更深入的理解-這是知識的遊戲化。 * 你會問“我在近期和未來的主要收入來源”和“在技術行業保持穩定”,在目前的市場上,如果你只想維持下去很容易,但如果你有些志氣的話,要求就更高。

回答2

Mike Robinson: "福伊!繼續往前!" 但是,也要充分認識到環境的變化。 在我們這個行業的80年代、90年代和“uh-ohs”時期,“我們幾乎都是靠自己”,因為“我們當時不得不使用的計算機幾乎無法自行解決問題!” 然後。。。越來越多的人開始加入進來,但是,即使如此,一大堆“奇妙的新事物和意想不到的東西”開始出現——例如,“實用(!)開源!”(突然間,“在任何應用程式中,正在使用的開原始碼行數”成倍增加) 但是:“乘風破浪吧,騷年!” 現在仍然有很多客戶/老闆,他們比以往任何時候都更需要我們。只要盯緊球,你永遠不會沒有工作,直到你的球!#%Q@%@?* ...

回答3

Kevin: 我快要滿40歲了。我一直都有這種感覺-腦子裡有淤泥,在那裡我感覺自己比以前慢。 我曾經這麼快,那麼敏捷...現在看起來我像在深水裡奔跑。 想知道為什麼我不為此感到難過嗎?並非所有的工作和產出是相等的。 最簡單的方式來說明這一點,就是看一個快速和敏捷的新手開發人員在做什麼——而不是幫助他們。 他們可能會產生大量的產出。。。但這並不都是相等的。他們可能會花10個小時想出一個非常酷的方式來向用戶顯示資料。。。你會花10秒說,“哦,是的,JQuery會幫我們解決這個問題的。”他們可能會花10個小時在一個專案上工作,結果不得不重做大部分工作,因為他們沒有很好地設計它。他們可能會花10個小時寫一些執行太慢的東西,因為它與資料庫的互動不好。。。你明白了。 我能做的事情有很多,一個新的開發人員需要很長時間,或者根本不能有效地完成。因此我的大腦慢一點也沒關係——我正在做的“慢”的工作比一個快速但天真的同事快速而低價值的工作更有價值。

回答4

bethlakshmi: 我喜歡 @bubba 的回答,但是我認為還可以新增一些實用的東西。 在未來一段時期,我能否繼續把程式設計作為我的主要收入來源? 對。我認識不少人,他們的主要工作(自己選擇的)是編寫程式碼,直到他們想退休。僅在受到啟發時才擔任編碼較少/非編碼的角色。 我在職業生涯的選擇上是否太固執、理想主義或者太不成熟?難道我不得不放手嗎? 請記住,具備一定的資歷水平的情況,你會對團隊產生很大的影響,因此你需要一定程度的溝通技巧。它不一定是管理,但你可能需要能夠通過設計文件進行交流,而這些文件是其他軟體工程師(例如,架構師、技術經理/主管/副總裁等)以外的人閱讀的,或者是其他工程師的高階的導師,他們可以利用你的智慧。這仍然是軟技能的發展,在某個時候,至少沒有一些你貢獻可以借鑑的技能將成為一個職業限制因素——即使你最大的貢獻仍然是編寫程式碼。很多時候,這也會被冠以“領導”的烙印,而不是管理。 我之所以這樣說,是因為我看到許多30歲以下的人在不晉升到其他更高級別的職位時感到沮喪。 這通常是因為期望已從獎勵在單獨技術工作中獲得的能力,轉變為通過使用卓越的技術能力提升人員水平而為團隊/團隊/部門提供的價值。 如果你希望在不發展軟技能的情況下獲得晉升,那麼這可能需要更成熟的觀點。 我不一定能確定這是否是你的觀點。 而且,有些人具有一定的資歷,並且目標不想更高。 並非每個人都成為首席工程師——但是他們可以繼續工作! 他們的薪水仍然很高,如果你喜歡工作……你是否在乎自己的頭銜? 我確實看到有人繼續擔任特定的角色,並且不承擔更多的工作和責任,因為他們在自己的位置幹得開心。 30歲以上的程式設計師有哪些方式可以保持活躍在在技術崗位上,而不必轉向人道主義(管理性)的方向? * 像 @bubba 和 @ash 說的——一定要從你的經驗中學習。你已經擁有並且將繼續獲取行業中的一些模式和學習經驗,這些模式對於如何以更有效,低風險的方式進行此工作是很好的參考。 正如兩位大佬所說——聘請經驗更豐富的工程師,因為他們從(痛苦的)經驗中學到了經驗。 確保你繼續關注工作結果並進行回顧,以不斷尋找改進的方法。 * 不要拘泥於特定的技術-跟隨並學習你發現的有趣和有意義的技術。 追求有趣和有意義的工作和專案。 我發現隨著年齡的增長,我們會變得有點憤世嫉俗。 不斷尋找令你渴望和興奮的工作。 並尋找適合你風格並且富有合作精神的團隊。 動力來自內在,因此要養成動力。 這就是為在當前和未來進行額外工作提供精力的原因。 * 一定要有節奏。我發現公司會很喜歡要求你加班加點。可以說不,並加以限制。確保你的表現符合預期。。。但有生活,找個生活伴侶,在工作之外做出承諾,等等,這並不是不合理的。大多數同齡人都會這樣做。在我看來,這不是關於你在工作之外有什麼樣的生活方式,但重要的是你有一個工作之外的生活。我想很多20多歲的人沒有意識到這一點。 * 如果你實在是精疲力竭,而且頭腦完全不願意學習——你的標準年齡是30歲,那是“我們隨著年齡的增長會越來越慢”的標準——不是為了做你媽媽,而是(以我慈祥的的媽媽的聲音 ...)——你睡得足夠嗎? 你吃好了嗎 ?你看醫生了嗎 ?也許你的日常工作有點混亂。。。我不會說我們永遠不會放慢腳步,但是我認為保持頭腦的學習和適應能力的持續時間是沒有上限的。 身心是存在關係的,這意味著擁有健康的身體可以使思想健康,而年齡越大,越重要。 因此,通過正確對待自己的身體來正確對待自己的思想。

回答5

Hiroshi AKIYAMA: 你可以通過將大量程式碼重構為晦澀難懂的語言來鞏固自己的地位。 當我2017年出國時,帶薪實習(員工交流和培訓計劃)時,我與之合作的團隊廣泛使用了Haskell,Elixir和Rust。 這很明顯而且很奇怪,因為公司的其餘部分服務端幾乎完全用C++, Python,而很少將C#用於公司內部的桌面程式。 原因是一支由經驗豐富的高階程式設計師組成的小團隊,他們希望延長自己的職業生涯。 我正在考慮早晚我也得采用同樣的招式。

回答6

user13436576: 關於隨著年齡的增長而堅持下去,我建議的一件事是去糖(大多數加工食品中所含的糖)。 我父親擺脫了所有糖分,現在50歲以上時的能量比20歲時充足。 糖還會對你的睡眠產生負面影響,阻止你進入深度睡眠,從而使你無法獲得所需的良好的夜間清爽睡眠。 你可以檢視加利福尼亞大學的糖科學系,以瞭解有關此方面的更多資訊。 我希望這有幫助!

回答7

jmm: 你不是一個人! 正如你可能看到的,我們中的許多人都處於(或曾經)同樣的處境。我35歲了,有時候我也有同感。不過,我也有信心,因為很多很多老問題看起來都很熟悉。你的經驗會有回報的,我保證。 關注基礎 正如其他人所說,理解基本原理總是更重要的。例如,Angular之類的框架(或者React這樣的庫)可能還不到10年,而OO設計已經超過50年了(任何人的整個職業生涯都是如此)。試著確保不斷提高你的程式設計能力,而不是學習最新的看起來酷東西。 練習! 我試著不時練習一些演算法問題(比如HackerRank/Codility)。它們很有趣,你總能學到新的東西,他們讓你保持水平,你可以應對一些具有挑戰性的招聘。 挑戰自我 我主要是一個Java後端工程師,因此,我不喜歡再學習Java、Spring或Hibernate。這是一個顯而易見的明智的選擇(別誤會,其實我確實有很多東西要學),但是,我更願意學習一些我在上班時間不做的事情:也許是移動開發,或者是前端,甚至是使用者體驗。這可能會讓你覺得進步更難,但當你突然想出辦法時,感覺會非常棒。 [開發人員的需要(是個google搜尋“程式設計師工作增長”)](https://www.google.com/search?ei=8eRWX-r-D_LJ5OUP2MWY-AI&q=Software%20Developer%20Jobs%20Increase&oq=Software%20Developer%20Jobs%20Increase&gs_lcp=CgZwc3ktYWIQA1CIHliIHmCfJGgAcAB4AIABSIgBzAGSAQEzmAEAoAEBqgEHZ3dzLXdpesABAQ&sclient=psy-ab&ved=0ahUKEwiqu4m3utjrAhXyJLkGHdgiBi8Q4dUDCA0&uact=5) 所以,我覺得我們很安全。當然,你仍然需要專業,在一些額外的能力上下功夫(也許學習另一門人類語言可以幫助你重新安置,如果這是你想要的),並不斷增長你的專業經驗。 注意:有時,有職位空缺 在這裡只舉一個例子。 比如Python,但我敢打賭,它完全適用於JS。 如果您你瞭解最新的工具,請不要感到沮喪。 正如其他人所說,它可能仍會被替換。 享受過程 也許你喜歡你所做的事,但是待錯了位置。 但是我的上一點應該是你的安全區——如果出現問題,你仍然可以尋找新的地方。 工作、學習、生活平衡 可能是最重要的建議,記住要有其他愛好或興趣。 我們大多數人每天約有50%的時間盯著螢幕,鍛鍊,外出活動等一定會幫助你不那麼疲憊。

回答8

bubba: 幾個月後我將年滿70歲,但我仍然寫一些程式碼。雖然不是很多,但是也有些。 我的經驗是,最新技術通常只是暫時性的,從智力上講,通常並不那麼困難。電腦科學和數學的基礎知識不會很快改變。 經驗為你提供了新手沒有的東西:對公司軟體系統的深入瞭解,對公司業務目標的洞察力,對客戶和競爭對手的熟悉度,對行業的瞭解,觀點,平衡。可以說,它們比掌握最新技術的能力更有價值。 在某些方面,你的學習能力會隨著年齡的增長而下降(儘管可能直到40歲或50歲)。另一方面,學習變得容易了,因為您擁有大量的先驗知識基礎,為理解新知識打下了良好的基礎。 而且,正如其他人所說,一個曾經遇到過兩次(或類似問題)的人解決問題的速度比以前從未見過的人要快得多。 因此,如果你喜歡寫程式碼,請繼續寫程式碼,繼續學習並且不要煩惱。

回答9

Michael Durrant: 終身學習 每個月在這些事情上花時間 * 看書 * 學習新語言 * 進一步瞭解你已經使用的語言 * 學習新工具 * 學習新方法 * 參加物理或虛擬會議 * 從事個人專案 同時擁有生活,家庭,愛好和社交,嘿嘿,沒人說這很容易! 經驗的主要“陷阱”是,你最開始成為“高階”,那是因為你已經成為該技術的專家。 問題是——技術不會永遠堅挺下去(儘管有趣的COBOL故事)。 瞭解新技術,你會OK的。 供參考:我曾經是一名BASIC程式設計師,雖然表現不錯,但是在學習COBOL時不得不重新開始,但是最終我變得不錯,但是後來我不得不學習Oracle,這很艱難,我又是初中生,但是我變得更好了,變得 高階。 現在,學習使用Javascript(ES6)和React正在繼續。 如果您喜歡這門手藝,請繼續學習它,你會被需要。 不用擔心速度問題。 現代方法不需要它曾經提供幫助的那種速度。 現在,知道正確的方法比編寫大量程式碼更重要。 不要關心睡覺的事。 在進行大量學習時,我確實會睏倦,但這只是意味著大腦因新輸入而超負荷,需要休息(實際上是逾期未交)。 一旦將該短期的化學反應刻入長期記憶後,短期暫存就會清除,我可以繼續學習。 直到一定程度,然後才需要真正的睡眠。

回答10

Dave Sherohman: 別扯這些陳詞濫調,你應該更聰明,而不是更努力。 你所寫的問題給我的感覺是,你將程式設計視為主要是關於知識的廣度以及無數小時的狂熱投入。我幾乎可以聽到你說“要通宵學習最新的熱門新工具!” 但這就是問題:最後,知識的深度遠不止廣度。我逼近50歲,我無法告訴你自從我上一次關心 “新熱點” 或“處於前沿” 以來已經有幾十年了,但這至少不會妨礙我的職業,因為我瞭解足夠深的基礎知識,以至於當我需要使用一種新工具時,我很快就能對它“非常好”。我不會成為該工具的高手,但是我能用它完成我需要做的事情。 那現在,我不再全職程式設計了。我已經過渡到75%的系統管理,25%的開發,因為我更喜歡處理各種小型的,非常規的任務,而不是長期專注於單個大型專案。即便如此,儘管程式設計不再是我的主要重點,但豐富的知識和經驗足以使同事在程式設計問題或除錯任務上需要幫助時,第一個想到的就是我,因為,即使我不知道他們使用的特定工具或語言,他們也知道我會立即發現解決方案,或者至少會發現解決方案的途徑。

回答11

ron rothman: 不要將職業與工作混淆。 你的工作是(相對)短期狀態; 你的職業生涯是漫長的。 作為一名30多歲的程式設計師,我向你保證,許多軟體專業人員在這個個年紀都有成功的,有意義的職業。 TL; DR:你所在的團隊有時會有所作為。 考慮與公司/團隊一起找到更有價值的程式設計工作,使其更適合你當前的需求。 > 我是29歲的程式設計師 為了幫助你進行校準:你才剛剛進入職業中期。 29即使在軟體開發方面也不算老。 (根據Stack Overflow開發人員調查,有53%的軟體專業人員年齡在30歲或以上。)即使你已經很棒,你仍然需要學習很多東西,還有很大的發展空間,最重要的是,還有很多 為同行和僱主的利益而積累經驗並隨後加以利用的經驗。 如果你找到了一個解決軟體難題的團隊(例如,某個大規模的問題),那麼你可能會發現自己像在剛接觸程式設計時一樣開始重新享受工作。 > 我不像剛開始時那樣朝氣蓬勃、意氣風發和精力充沛。 你可能從事的是錯誤的工作,而不是錯誤的職業。 在我的職業生涯中,我有各種各樣的經驗,我對任何特定工作的滿意度在很大程度上取決於具體情況:我的老闆; 我的隊友; 這項工作有多有趣; 等等 > 對於我的情況,通常的建議是開始尋找更多的人相關工作,例如管理或領導。 與十年或兩年前相比,今天的建議已經不那麼普遍(適用)了。 像Google這樣的軟體巨頭從根本上改變了軟體工程師的職業道路選擇。 現在,你可以上升到很高的級別(在某些“開明”的組織中——並非全部),而無需轉到管理方向。 > 經常有人建議,我應該轉到不太熱的專案,這些專案不需要處於前沿 對於你來說,這聽起來像是一個糟糕的建議。 你顯然想對自己的工作感到興奮; 你現在還不是。 也許有一個團隊正在做的事情會讓您興奮,並且由志同道合的極客(從最好的意義上來說)組成的團隊與你合作得很好?

回答12

Lawnmower Man: 轉變你的關注點 我希望剛畢業的大學生關注的事情包括基本必要的方面,例如格式,簡潔的樣式,功能的正確性,單元測試以及在功能和類級別上全面理解程式碼。他們仍然要學習幹活以外的知識,因為幫助他們注意提高質量的東西都是好的。這也意味著他們在實施專案時通常需要更多的指導。我對設計提出了很多建議,而且無論如何,高階工程師通常都會進行設計。 對於下一個級別,我希望工程師能夠編寫可靠封裝的健壯的程式碼單元,並與系統的其他部分很好地互動。他們的重點應該是如何確保應用程式中的多個單元良好地互動而不會導致拉胯。因此,其設計範圍應​​擴大以符合這些期望。他們主要編寫應用程式程式碼,但是可以在有監督的情況下安全地更新共享庫。 我希望“高階”工程師能夠掌握整個服務的必要細節(不一定是整個應用程式,例如OS或主要的獨立桌面應用程式)。他們應該瞭解程式碼從功能級別到服務啟動和依賴級別的工作方式。僅給出一組需求(當然,我主要是在SOA /微服務環境中),他們應該能夠從頭開始設計和構建服務。 擁有將近10年行業經驗的人應該是專家。按照最常見的標準,你至少應是“高階”工程師。那麼還剩下什麼呢?好吧,一切。 可以做,幹。不能做,教 當然,這句話通常用於體育和教練,但是這裡有一個真理。如果你覺得自己精疲力盡,可以花一些時間進行指導。如果你的所有同事,包括新來的初級工程師,比你瞭解的更多,那麼顯然你學習的並不多。到那時,你應該認真考慮切換到專案/程式/產品管理。如果你不是比大多數同行更專業的專家,將很難保持相關性。 如果你的組織僱用實習生,請主動帶他。指導性地程式設計。做程式碼審查。不要只是批判...解釋。不要只是解釋...教學。從你最瞭解的程式碼領域開始,在這些領域中您最有信心,並且可以分享最多的價值。然後擴充套件到你所不瞭解但仍比大多數團隊擁有更多經驗的領域。即使您的組織沒有實習生,總會有初級程式設計師在尋找導師。請求你的領導讓你帶一個 除了瞭解最新的程式語言範例或流行框架之外,還有更重要的事情。那就是規則。設計原則、程式碼質量、測試、文件。你所做的事情是團隊中其他人沒有的。花一些時間向整個團隊介紹為什麼你認為這些事情很重要。這些不是你可以通過讀書或參加黑客馬拉松可以學習到的東西。他們是通過多年的經驗和反覆試驗中學到的教訓。分享這些知識,它也會在你自己的腦海中成長。不要只告訴他們道理。分享你的故事和經驗。這就是你一直以來積累的價值。 變強,或者回家 回到原來的話題,更強的工程師對滿足一兩個服務將不滿意。他們會考慮大局。他們系統的架構。應該存在哪些服務,依賴項是乾淨的還是應該重構。由於功能欠佳的程式碼維護和對技術債務的不健康接受,功能是合理分配還是成為Rube Goldberg機器。有人將此階段稱為“架構師”。我不喜歡這個標題,因為我個人認為每個工程師有時都應該戴上架構師的帽子。我認為,無論誰設計系統的頂級體系結構,都應該積極參與該系統的構建和實施。 無論如何,此級別不需要專注於編碼的細節。實際上,這種關注可能適得其反。當架構師告訴他們如何實現一些高階設計的細節時,例如他們是剛畢業的大學畢業生,別嘲笑他們。如果你的腳步變慢了,請繼續向上。你的大腦已經飽和了(這就是為什麼很難在其中填充更多知識)的原因,但這是一種資產,而不是一種責任。這意味著你需要將獲得的所有知識投入工作。希望你一直關注並吸收了系統的高階體系結構。希望你可以確定其優勢和劣勢,並指導團隊進行重構或將來進行改進以產生最大的價值。如果你可以利用積累的知識來在更高層次上工作,那麼你會發現,通過閱讀StackOverflow或最新的程式語言宣言,你已經學到了一些不容易掌握的知識。 當你開始職業生涯時,您必須專注於軟體工程的策略。一旦掌握了策略,就該採取策略。當然,許多工程師處於高階職位,只是選擇工作/生活平衡,使他們能夠專注於他們真正關心的事情,同時繼續使用程式碼來支付賬單。如果使你滿意,此策略也沒有錯。 話雖這麼說,像架構師這樣的職位是政治性的,與隱藏在角落裡的處理需求相比,確實涉及更多的人際互動。但是通常,你可以控制這在多大程度上是必要的,並通過弄清楚如何在避免衝突的情況下提供價值來塑造自己的命運。有時這可能意味著放棄競爭對手願意與你抗衡的想法。如果你退縮而不是站穩腳跟,則可以避免不愉快的互動,但是你也將失去一些直立的立場,除非你可以通過在無爭議的領域進行真正出色的工作來彌補這一點。此外,架構師不能僅僅忽略新技術趨勢。你仍然需要睜大眼睛,讓自己瞭解最新的框架,庫,語言和趨勢。你只是不需要沉迷於它們的細節。你需要學習足夠的知識,以瞭解它們的優缺點:看到它們所做出的取捨。最終,您瞭解到在陽光下沒有什麼新鮮事,並且工程學中的一切都歸結為一系列不同的取捨。隨著技術領域的變化,某些產品比其他產品具有更好的價值,你需要看到並認識到這一點。但是,沒有絕對的“更好”和“更差”。這與你現在擁有的以及即將出現的一切有關。 總結 歸根結底,您的職業就是您的職業。 不多也不少。 多一些或少一些編碼,具體取決於你可以如何並希望如何為團隊和公司帶來價值。 弄清你的個人長處和興趣所在,並專注於利用這些優勢,而不是試圖使自己適應人力資源和管理層所喜歡應用到機器齒輪上的小螺絲。 為你想去的地方寫理想的職位描述,去參與 一種可以最大程度發揮你的價值的產品。 然後,通過將更多的時間花在重要的事情上,而將更少的時間花在無關緊要的事情上,努力將自己的職位變成這份工作。 你不需要許可權即可執行此操作。 你只需要使其工作即可。

回答13

jamesqf: 我的建議(直到我30多歲時才開始程式設計)不要將重點放在跟上語言和開發方法的新風尚,而是著重於實際解決問題。 你可能必須學習新知識以應對某些新的問題領域,但這是不一樣的。

回答14

nvoigt: 對待與30歲的方式與25對的方式應該是相同的: * 對你的領域感興趣 * 閱讀書籍,觀看教程,參加會議 * 永遠不要滿足於你一直在做的事情 我想我可以對律師,廚師或農民說同樣的話。它確實不是專門針對軟體工程的。 經驗將極大地促進您獲得新知識。基本概念不變。學習一種新語言僅意味著您必須瞭解該語言如何處理相同的概念。理想情況下,每次學習新事物時,你都可以節省時間,因為新事物使事情變得更容易。 就就業能力而言,這很大程度上取決於你所在的國家。如果僱主正在尋找最合適的人選,那麼你絕對可以繼續職業生涯並蓬勃發展。如果你所在國家/地區的僱主只需要具有最少程式設計知識的活人,一遍又一遍地生產出低質量的軟體,那麼你會陷入麻煩。 我想說的是,如果你生活在西方社會中,公司僱用開發人員來開發公司自己的產品,那麼你絕對可以將軟體開發視為可以給你帶來美好生活的工作,直到你退休為止(假設你對此感興趣)。如果你生活在一個將軟體開發視為將年輕,廉價,低薪水且服從的勞動力租給另一家(最好是西方的,富裕的公司)快速賺錢的機會的國家,那麼你肯定會有半衰期。因為他們的業務模型中不需要年長,經驗更豐富,價格更高的人員。

回答15

Ash: 你的經驗將彌補速度的下降。 作為30多歲的軟體開發人員,我也注意到你提到的在30多歲時談到的速度下降。它發生在生活的各個方面,而不僅僅是開發。過去需要幾天的房屋翻新工程需要花費數週的時間。徹夜party越來越難。通宵程式設計也不太有效。 我非常清楚自己的速度越來越慢,並且害怕每次效能評估。我什至開始購買Modafinal來幫助提高生產力,但是在幾個月後,其影響變得越來越不明顯。 但是,我的表業績審查一直很好。關於這個情況,我的猜測是,我以前見過很多東西,而根據經驗,我能夠更快地完成一些事情。 第一次看到一類錯誤,需要幾天的時間才能解決,第二次需要幾個小時。現在,同樣的錯誤,如果幸運的話,我可以在幾分鐘內修復它。生產率的提高彌補了其他需要花費更長時間的任務。 我還建議: * 做一些非工作的程式設計,或者為您的僱主做一些非正式的研發。幫助打破工作的單調,當需要在某個新專案上進行輸入時,如果您對該領域進行了一些探索並且有經驗可以做出貢獻,那麼你可以看起來很天才。 * 在您的業餘時間做一些非編碼但仍然很有創意的事情。幾年前,我進入了3D列印領域,而在那之前的幾年裡,我一直在玩雜技。幫助保持大腦的活力。 如果您擔心自己的技能無關緊要,請考慮當今正在構建的系統所需的維護工作,例如Covid19導致對COBOL程式設計師的需求