程序員真的干到 35 歲就干不動了嗎?
很多人說程序員職業生涯很短
更新對評論的回復
1. 35歲還在堆代碼的是loser
只要做的是自己真心喜歡的工作就不算loser
2.女孩子適合干編程嗎?
女程序員確實比男程序員少很多,但肯定不是智力問題。女程序員需要考慮兩個問題。1)編程也需要很好的精力和體力,2)生育容易導致職業中斷
3.推薦一些入門書籍
理論方面書籍看學校教材就可以了,計算機的基礎理論幾十年來幾乎沒什麼變化。教材比較容易落後的部分是編程語言和軟體工程方面,可以去網上找資料。更重要的是,一定要多!編!程!
4.CPU和編譯器的bug到底是什麼bug
CPU的bug不是我們組發現的不知道具體情況,大概是Intel一款晶元在特定情況下運行時結果和預期不符。編譯器bug比較清楚,當時還導致了嚴重的網上事故(主控板死機)。原因是編譯器對同一指針變數的兩種聲明方式(比如char * x 和char x[])編譯結果有微小差異 。反彙編後才發現問題所在
5.身體現在怎麼樣?
頸椎病有點嚴重,盯電腦時間太長會覺得頭暈。其他身體指標開始有點異常了。我的問題是特別不愛運動,如果能堅持運動應該會好很多
6."上升比較快的是既懂技術又懂業務的人",業務到底是指什麼
業務就是你們公司靠什麼賺錢
7.35歲還想繼續編程,可老闆不讓幹了怎麼辦?
老闆不讓干,可以干老闆
8.看到了您就像看到了我父親
讓我先哭會兒……
以下是原答案
頭一次得到這麼多贊,頸椎好了不少,謝謝大家!關於我怎麼走上程序員這條路,參見我的知乎回答:http://www.zhihu.com/question/55524226/answer/145042214?utm_source=qqutm_medium=social
………………………………………………………………
好吧,暴露年齡就暴露年齡吧。
今年40歲,一直做軟體相關工作。除了剛畢業寫過幾年代碼,後來大部分時間在做需求和項目管理。最近幾年因為創業的原因又拾起了編碼工作,現學的Android編程。
說說感受吧:
1,明顯感覺腦力跟不上了,容易疲勞。以前可以專心想一個演算法很長時間,現在想一會就覺得注意力難以集中,容易犯困。
2,記性沒有以前好了。看過的資料,吸收起來沒有年輕時那麼快。就算記住了,也很容易忘掉。
3,體力也沒有以前好了。以前我可以連續通宵編程一周,每天只睡4個小時;或者完全不睡覺72小時編程。現在如果敢通宵一晚的話,後面3天都覺得身心俱疲,緩不過來。
但是,(~終於說到但是了)
所有這些並不影響我的代碼質量。
原因
1,看過足夠的代碼和技術方案後,很多對新手來說不知如何入手的問題,已然是輕車熟路。很多方案並不需要自己去創造,以前解決過類似的問題啊,直接拿來用就好了。省時省力。
2,編碼debug的時間比年輕時少了很多。一方面,模塊化做的好,單個模塊不會做的很複雜。另一方面是新手容易踩的坑基本都踩過了,寫代碼會本能的避免。就算不小心踩了,也很容易意識到問題所在。
3,年紀大了容易保守,但對編程不是壞事。每次寫完代碼,我會寫足夠的測試用例去執行。說實在的,我不是很相信自己寫的代碼,因為吃過的虧太多了。以前連編譯器,CPU的bug都見過,誰敢保證自己寫的代碼就是萬無一失的呢?還是測試吧。
結論。
1,年齡不會成為編碼的阻礙。你的經驗會極大的彌補年齡帶來的體力和腦力方面的問題。如果真心喜歡編碼,放心去做吧。
2,對於編程這種需要高體力和腦力消耗的工作,年齡帶來的負面影響很大。所以,如果不是特別喜歡編碼,老人家還是做做指導性的工作更合適。
覺得有價值請幫忙點贊,我代表我的頸椎,腰椎謝謝大家。
………………………………
補充一些經驗體會,希望對想進入編程這一行的新人有幫助。
1.理論基礎很重要。數據結構,操作系統原理,PC原理,資料庫原理等……這些基礎知識決定你在技術上能走多快和走多遠。半路出家的(比如我)尤其要注意補充這些知識,好在不算太難。
2,大部分公司上升比較快的不是技術最牛B的人,而是既懂技術又懂業務的人
3.堅持鍛煉很重要,頸椎,腰椎病是這行的常見病,而且都是很難治的慢性病。沒事動動脖子,站起來活動一下,養成習慣,將來能少受點罪。
4.提高英語閱讀水平,到了一定程度,只有英文文獻可看。
人老了就是愛嘮叨,見諒。剛好今年35,並沒有擔任管理職務,連Leader都不是,絕對「程序員」,沒有任何干不動了的感覺。
寫一點自己的感受:
1、年過XX歲還沒做到管理層,是不是Loser。
不是。
這取決於個人的選擇,有沒有能力做是一回事,願不願意做是另一回事。在我看來,升職、加薪應該是水到渠成的事,能力決定位置。我接觸過的同行中,對技術沒有熱情,卻熱衷於辦公室政治,一門心思往上爬的,我承認,有成功上位的,但數量極少;相反,踏實工作,樂於鑽研,保持學習熱情的,還沒見到遭受不公正待遇的。這個社會確實存在著不公平,但是金子總會發光這句話絕不是一句空話,有能力的人,必然會得到賞識,而機會也青睞這些早已準備好了的人。
從業10年,不是沒有機會轉管理崗,但我更希望在技術的道路上走得更遠一些,在公司需要的時候,我可以帶領團隊工作;但更多的時間,我會參與到核心架構的設計工作中,因為多年積累的經驗、對業務的深刻理解、穩定的技術水準,這些才是我的價值所在。
2、我都XX歲了,怎麼還沒成為大牛!
還是那句話,這個世界是公平的,網路上看到很多高人年紀輕輕就成為一個領域的專家,我也曾經自我懷疑過。但是,這個世界上哪有那麼多天才?至少我身邊一個這樣的「大牛」都不存在。我覺得,技術工作,沒有足夠的積累,不會有很深的造詣,10年積累,也僅僅夠我應付眼前的工作而已。或許是由於我天資一般,但是我覺得大部分同行都屬於「一般」的一員,現在都講「匠人」精神,我希望自己能夠不忘初心,繼續磨礪自己的技術,我很享受漂亮的代碼從自己指尖流出的感覺,那一刻,我覺得我是在完成一件藝術品。
3、什麼是做重要的?
技術之外,我覺得身體才是最重要的。必須承認,IT行業很辛苦,從腰往上,基本哪個關節都可能出現職業病。隨著資歷的加深,生活的質量也會提高,我可不想有了經濟基礎,卻無法享受人生。所以我建議同行們在拚命工作之餘,千萬不要忽略了對身體的保護,哪個零件壞了也是無法修復的啊,身體累垮的那一刻,你就真的「干不動了」,這是我不想見到的最大悲哀。
以上,祝同行們身體健康,在程序員的道路上走得更遠一些。
------------------------- 以上是原答案 -----------------------
關於管理崗位的闡述有些片面了,怕誤導大家,做一點補充。非常感謝 @冷狗 的評論。
管理和技術並不是互斥的,他們之間不是「取捨」的關係,而是「遞進」的關係。當技術達到一定高度,我們應該樂於與團隊分享,或者樂於幫助、指導他人,同時如何幫助團隊整體提升也是技術人員的重要課題,而到了這一步,事實上工作性質已經與管理有了交集。還是那句話,水到渠成,隨著能力的提高,走上管理性質的崗位也是自然的結果。
之前回答中提到的我沒有選擇走向管理崗,並不是說我想一輩子專研技術做個老學究,那對團隊並沒有好處,只是我那時覺得我還沒有準備好,我想把技術學的更紮實一些。這個態度其實不對,我不建議大家這樣做,沒有能力是一回事,但有能力,而機會已經出現,我們應該當仁不讓。
或許在XX歲時我們還無法走向更高的職位,但不代表永遠不能,所以這種劃年齡線的做法是不具有普適性的,成才晚不代表成就低。相信所有對技術有熱情的同行,都有一個CTO的夢,祝大家早日達成自己的夢想。
75年出生的我,今年42周歲,依然奮鬥在寫代碼的第一線,雖然辛苦,卻樂在其中。
做程序員,能堅持到我這個年齡還真挺不容易的,特別是在東北,因為你要禁得住各種誘惑。
做了20多年一線程序員,只要自己不太爛,水平應該都過得去,三線城市更是如此。一般做過10年後,就會有各種機會做技術類管理比如技術總監,或者做技術合伙人。如果有機會工資翻翻、還能享受公司成長紅利,多數人早就投降了。
2000年簡訊剛剛出現,也剛剛有了SP這個行業,我用業餘時間做了一個簡訊平台。因為程序很穩定我要價也便宜,本地SP有超過三分之一在用,這樣就接觸了很多SP業務。前一兩年的時候監a管不嚴或者說根本沒有監a管,通過SP埠發的簡訊是可以任意扣費的,這樣找一批大客戶(不太在意話費的),一天發一次幾萬元就賺到到手了。當年這麼「高端」的技術和業務很多人不了解,程序員就有各種機會利用技術變現,我身邊後來就有很多人轉行淘金去了,都很輕鬆的淘到了第一桶金。
如果你覺著2000年離你很遠,現在也有機會擺在你眼前。沒聽說過南京有個移動遊戲基地么?APP下載有APPstore還有各種安卓市場,你要是不覺著這個基地很古怪的話說明你一點兒商業頭腦也沒有哦。做這方面業務一定要嗅覺靈敏,然後就大膽干就行了。
當然都屬於鑽空子的業餘,這可不是我喜歡的,我想靠技術賺錢。
清高故我窮,哈。
我還在每天和代碼打交到,現在還沒出現干不動的跡象,所以不用想能幹到什麼時候,只要自己喜歡。
除了喜歡寫寫程序,我還喜歡學學英語。一不小心就做了一款背單詞的APP,大家都說是良心應用,APPStore上也是清一色的五星評論,何不良心到底、清高到底。像這個老頭兒一樣,給個總理也不換。
------補充一下關於誘惑-------
我想表達的誘惑就是上面說的
1.擁有更多的轉成技術管理崗位和成為技術合伙人的機會
2.我們這邊都是小公司,整理需求、設計、開發、測試、維護甚至催款你都有機會接觸,這樣就很容易成長為全方位人才,並積攢自己的客戶人脈,人脈多了自然也就變身為創業者和管理者了。
剛來知乎不久,我這個知乎小白確實很白,沒表達清楚。
男人真的干到35就干不動了嗎?
身體很重要,當然,選擇乾的對象也很重要。
有些對象你25歲就干不動了。
受此啟發,我想提醒已經或有志於在程序員這一行活到老乾到老的同學:
一是要保持良好的作息習慣,飲食習慣,少熬夜,多鍛煉,保持壯的身體,強的精力,棒的記憶力,才可能做好程序員,寫起代碼來飯都不準時吃,覺也不準時睡,別以為自己是在努力奮鬥,其實你是在縱慾。
二是挑好你編程之路的學習對象,在程序這個虛擬的世界裡,知識點(包括編程語言)的慾望是有明顯強弱之分的。有些知識點看似簡單,很好上手,你學習它就像在追求它,覺得很容易到手,你使用它如同在上它,覺得很容易上手,甚至它讓你產生想帶著它到處炫耀的輕浮心。一切因為你還年輕,在這條路閱人太少,你可能不知道它們會膨脹膨脹,榨盡你越老越稀缺的記憶力,終有一天你覺得自己力不從心。但有些知識點就不是這樣。你只是上它一次,它竟然就無言地跟隨你百年,一直是你的賢內助。你沒法拿它們炫耀,因為懂得它們好的人不多。
算了,有些道理說也沒用。太多事不經歷一把,慘一陣,聽來總是淺。
我40好幾了。從單片機寫到移動app 。昨夜我一時興起一口氣玩七種語言寫程序,早起下樓喝豆漿三大碗,環顧四野,憑誰問,廉頗老矣,尚能飯否?
我在 35 歲前後(2013年)在某高知論壇寫的一些廢話。
1.
首先聲明我還沒有這麼老... 但是也差不多了。
35 歲能不能編程,能不能更上層樓,只取決於一個問題,即自己是否喜歡編程。
我自己的確不是個好的例子,不過還是可以列舉一下
1. 我三五年前以為自己已經過了編程的巔峰了
2. 我最好的項目和代碼都不是投入生產的代碼,而是自己的愛好
3. 我現在完全不寫生產系統的代碼,但是我寫很多為工作服務的系統和代碼
4. 我今年做了一些讓自己都驚訝的項目,讓我覺得前些年做的都只是熱身而已
5. 我有 80% 的把握比彙報給我的工程師寫的程序要可靠和高效
2.
工作經驗真的很重要
1. 尤其是經歷過足夠多的失敗
2. 三年、五年、八年真的是門檻
3. 選擇合適的公司和領導是非常重要的
是不是一定要做管理的問題
1. 在很多公司,尤其是管理混亂的公司,你必須做管理才能漲薪水
2. 一個公司渣的表現,就在於將幹活最利索的人都提拔為主管或經理
3. 但是一個公司更渣的表現,就在於技術總監甚至 CTO 在一線刻苦工作
4. 如果你不能理解其他的工程師,就不可能做好管理
5. 在很多外企做 principal 工程師薪水比在小破公司做 director 收入高
純技術路線的問題
1. 研究屠龍之技的問題在於只有很少的公司可以去
2. 只有很少的公司只用 java,或者 c++ 或者 javascript
3. 如果你想做 Architect/CTO 必須要懂很多不同的異構系統(不是語言)
4. 有很多技術公司的 CTO 實際上是 COO,要去講故事拉投資什麼的
5. 不懂產品和商業模式的技術專家只有大公司才能供養
3.
總結一下
1. 35 歲能不能寫程序
2. 35 歲應不應該寫程序
3. 35 歲寫程序是否丟人
這幾個命題其實是完全不一樣的,但是我覺得基本上都是偽命題。
我當然並不是一個好的例子,畢竟我在 35 歲之前就已經混過所謂的首席架構師,然後走狗屎運在被收購的創業公司裡面混吃等死。35 歲的時候,我的老闆對我說現在是你最好的時光,千萬不要浪費了。我開始並不是很理解,現在總算理解了,35 歲的確是個檻,但是這個檻和大多數人想像的不盡相同。
菲爾茲獎只頒給 40 歲之前的數學家是有道理的,因為大多數人在 35 歲以後智力和創造力都開始走下坡路了。很多偉大的數學家最重要的工作都是在 30 歲之前完成的,最經典的恐怕就是伽羅瓦留下的群論了。以我的智力當然沒必要自比數學家,但是作為一個程序員我的巔峰同樣是在 30 歲之前的。
在 30 歲之前,我能夠憑空寫出非常奇怪的優化演算法(Redistribution Operator - 知乎專欄、CodePen - Quantum Solver 0.999),能夠在 Google Web Toolkit 之前完成類似的 Java 到 JavaScript 的編譯器,並且它的類型系統在那個時候就能支持 Strong-Type Lambda Function 和 Currying。在那個年頭,我還能拿到 Google 的 offer,而且還不止通過了一次面試(我拒了 Google 的 offer 去 MSRA,第二次趕上經濟危機被凍結然後擱置了)。過了 30 以後我還經常去 Google 面試(這是一種鍛煉,或者說行為藝術),每次的反饋都是寫程序不太行啊你得多練練。
所以過了 35 歲以後,寫程序對我來說並不是一種職業,而是一種愛好。我為自己寫程序,而且我不再擔心是否需要代碼審核,也不需要關心什麼分支管理什麼的。我也會在紙面上設計程序,但是我不會親自去實現它。我在 35 歲之後沒有在生產環境裡面提交過一行代碼,但是我設計的協議在上億台移動設備上執行。當然就像某些答主所說的,我的角色已經換成了設計和管理。
我大概是不能寫出 30 歲之前那樣的代碼,但是現在的我能理解這些代碼的數學原理和改進方向。30 歲之前我多次挑戰範疇論最終發現它只能用來催眠,現在我能困得半死的時候拿起一本應用數學書興奮得睡不著。30 歲之前我只能造程序輪子,撐死了山寨一門計算機語言;現在我已經能山寨數學理論和計算框架了。30 歲之前的我根本不能理解我現在做的事情,看到我現在的專欄一定會覺得不明覺厲。
不難看出,本文不過是又一個偽裝成答案的廣告罷了,對概率論和資訊理論有興趣的請看
Bayesian Gossip - 知乎專欄
【ENCORE OF ADVERTISEMENT】
我寫廣告一般不給引用和解釋,一般來說裝完 X 就跑。然而有人在評論里說有人不認識英文——難道小學生都上知乎了?無論如何,想要把程序員作為職業需要認識二十六個英文字母,口語可以很差但是必須能達到閱讀科技英語的水平。
Fields Medal/菲爾茲獎,這是數學界的最高榮譽之一,要獲得它的難度遠大於諾貝爾獎。但是這個獎項對我來說,僅僅是 Grigori Perelman 拒絕的若干獎項之一而已。即便是在我精神最不正常的時期裡面,我也沒有考慮過獲得該獎項的可能性。從技術上說,考慮到我還未滿 40 歲,我獲得該獎項的概率還是非零項,想起來還是一件很幸福的事情。當然知乎上還真有一個人想要挑戰該獎項,大家可以去表示支持:現在立志40歲前拿一個菲爾茲獎是不是痴人說夢? - 數學 - 知乎
Galois/伽羅瓦,這位數學天才只活了二十一歲就因為決鬥掛了,留下了群論和伽羅瓦理論。如果不了解群論和抽象代數,根本無法理解現代數學和現代物理。即便是做遊戲,也需要知道 SO3 是什麼。想要系統的了解現代數學理論,可以看看這個:本科生如何較為系統地了解現代數學? - 數學專業 - 知乎
Category Theory/範疇論,這是計算機語言和形式化系統的敲門磚。大多數認為 PHP 是最好的編程的語言的人,恐怕連這塊磚是什麼都沒搞清楚過。為了避免引起不必要的爭論,我坦白並不懂 Category Theory,我對這個理論的理解沒有超出過 monoid。我一度是個職業的 PHP 程序員,而從未是一個 Haskell 程序員。任何一個對現代編程語言和類型系統有興趣的人,都需要了解這個理論;除非你和我一樣,僅僅滿足於開發幾個 DSL 自娛自樂。所以不難看出,即便是一個(自詡)還算不錯的程序員也不需要了解這種屠龍之技。如果這些都還不能阻止你,可以去看看這個:怎樣學範疇論? - 數學 - 知乎
讓我興奮得睡不著覺的書是這本 Mark Kac: 9781258668044: Amazon.com: Books,讀完我就抽風寫了一篇文章Quantum Hypothesis - 知乎專欄。M. R. Foster 開場的一句箴言已經被我用小本子記下來了:
We"re all ignorant -- the only difference is the degree of ignorance.
雖然,這只是 Bayesian 的常識,同時它是一個反教條的教條。回到廣告的本意,我得說概率這玩意兒非常簡單,只需要做四則運算和對數運算,比形式化系統和抽象代數什麼的簡單多了。這個叫 M. R. Foster 的地質學家和前面幾位大師比起來簡直是無名小輩(畢竟我 Bayesian 正教的先知 Bayes 也只是個平凡的業餘數學家),但是在我眼裡 Foster 潦草的公式更具魅力。買一本大祭師 E. T. Jaynes 的福音書,跟我學習 Bayesian Probability Theory 吧。在如今這個時代,數據科學家的職業路線比程序員更有前途!(逃)
Nothing is true. Every probability allocation is permitted. // Partial Information
【FINALE OF ADVERTISEMENT】
從評論來推斷,頗有一些人對我這種敘述的技巧表示不滿。我還是給一個簡單明了的總結:
只要你願意,你可以寫程序寫到腦死亡;並且,大概率會有人願意為此給你報酬。
警告:下面有很多廢話,結論已經說完了(TL;DR)。
其實,我以前的某任老闆喜歡說一些更有佛性的回答:
YES and NO ... So what?
然後他會回到三大哲學問題:
- 我是誰
- 我從哪裡來
- 我要到哪裡去
作為一個活在當下的俗人,我更關心現實一些的問題:
- 中午在哪裡吃
- 跟誰一起吃
- 吃什麼
很顯然,有很多人真正想問的問題是:
- 寫程序能不能養活自己
- 寫程序能不能成家立業
- 寫程序能不能光宗耀祖
以及上述問題在 35 歲之後的結論是否有變化。很抱歉,我不能回答上述任何一個問題。但是經過長期的思考,我得到了我關心的問題的近似解:
中午最好做一個孤獨的美食家,在附近找個儘可能好的餐廳自己慢慢吃。
很顯然,沒有人會對這樣的結論表示滿意。然而生活就是這樣的:
Nothing that has meaning is easy. "Easy" doesn"t enter into grown-up life.
或者退而求其次,你可以滿足於職業規劃:Career Path - 知乎專欄
P.S.
考慮到有些人懷疑我站著說話不腰疼,我顯擺一下自己維護的軟體系統的複雜度
- 同時維護多個私人工程項目,共享大量模塊
- 單個工程項目涉及多種編程語言:Java、JavaScript、Perl
- 涉及大量的 DSL,多數都是自己山寨的,也有 D3js 這樣流行的
- Web Server 是我自己用 NIO 徒手寫的,功能有限,但是有類似 Web Socket 的能力
- 現在做的活躍項目直接追蹤的源代碼 200+ 文件,1M+位元組,不包含任何依賴的代碼庫
我能展示的僅僅是某些前端可視化代碼
Consensus - Lexical Atlas
這些代碼肯定是我 35 歲以後完成的。當然跟我 30 歲之前的代碼比還是有差距
CodePen - Quantum Solver 0.999
這些代碼是我最近從早期的 Java 版本移植到我的方言上,再翻譯成 JavaScript 的。
但是 30 歲之前的我是個 Java 原教旨主義者,什麼都要用 Java 來寫,所以才會寫編譯器用 Java 來寫 JavaScript。35 歲之後學聰明了,不會妄圖山寨 D3js 這樣的輪子,看到什麼好用就直接用了。但是我並沒有從一個極端走到另一個極端,而是充分欣賞和利用以前的代碼庫,變廢為寶。順帶說一句,作為一個被時代拋棄不會寫 Python 的老傢伙,我現在寫得最多的是 Perl 腳本。請不要問我為什麼寫這些程序,這些程序能做什麼。我可以說的是,我懶得寫任何一行不必要的程序。我還專門抄襲了這麼一個段子:
沒有一個專業程序員喜歡編程,他們憎惡編程。
他們喜歡能工作的軟體,那是一項艱苦的工作。
原文是
沒有一個專業作家喜歡寫作,他們憎恨寫作。
他們喜歡寫完的作品,那是一項艱苦的工作。
你可以通過寫程序開始你的職業生涯,也可以保持著一直寫程序,但是不能一直處於除了寫程序什麼都不會的狀態,否則這就是學習能力的問題了。
首先你需要把重點從寫程序轉移到解決問題上了,因為程序本身就是用來解決問題的。然後你需要願意為了解決更大更複雜的問題修鍊新能力。例如過,你的程序是解決業務問題的,但有些問題通過改變業務能夠更好地被解決掉,你就需要去學習業務,掌握這項能力。類似的,項目周期長了以後,你要有項目管理能力否則項目時間都不知道花哪裡去了。項目涉及的人多了以後,你要有跟人有打交道的能力,例如如何說服上級給資源你,否則你寫的程序再好別人也不給機器你跑。本人就是做IT技術的,做了10多年,渡過了從不知道到知道的第一個階段。
從寫php起,到寫C++,差不多寫了6年,發現一個現象,互聯網裡的技術是越來越簡單了。
後面幾年年想明白了一點事情,技術是為產品服務的,是為商業模式服務的,是為生意服務的。不要想著我要寫出如何複雜的演算法,多麼牛逼的程序,那畢竟是鳳毛菱角的少數人。
這裡不抬杠哈,如果你勵志做鳳毛菱角的少數人也非常好的,只要成了也足夠了,也就突破了瓶頸了。
大部分人要承認自己是個普通人,真正要想明白自己的定位。
目前市面上的技術除了搜索、圖像處理、操作系統等等幾個比較複雜的領域,需要極高技術的,其他大部分的都是不太複雜的技術,大部分程序員也是在做著一個一個不同的「項目」,但用到的技術都差不多,都不太複雜的,如果你一直從事這樣的工作,用差不多相同的技術去完成一個一個不同的項目,那你就是吃青春飯的。
程序員要想讓自己越來越有價值,越來越值錢,需要不斷超越自己。
那樣才會「越老越值錢」。
怎麼做,自己才會越老越值錢呢?才不會是吃青春飯呢?
個人覺得目前無外乎幾條路
1、架構
互聯網最近幾年非常火爆,無論是遊戲、廣告、團購、外賣、電影、打車、共享單車等等等等,用到的技術都不是那麼的複雜,因為本身生意就不是那麼的複雜。
你找任何一個IT技術人員,都能給你開發出來,用到的技術大家都耳熟能詳的。
LNMP(Linux + Nginx+Mysql+PHP),大致是如此,無外乎再有些其他變種,Nginx自己開發了,Mysql用了別的,加了點memcache、redis做緩存,PHP語言或者java語言或者其他語言。或者性能要求高,不用DB了。無非就是接入層+邏輯層+cache層+數據層。
年輕的碼農就是在這些常用軟體下,按照產品的商業邏輯去完成一些一些商業代碼,項目雖然不同,但是技術本質上沒有什麼區別。
唯一的,就是隨著用戶不斷增多,80%靠吃青春飯的程序員寫的代碼就不行了,支持不了快速增長的用戶,支持不了高並發。
所以無論互聯網項目如何變化,唯一不變的,讓自己有價值的就是分散式的架構體系。
設計一個好的系統架構,隨著業務不斷增長,只要加多幾台機器就行了。
這~~~~~就是你值錢的地方,越老架構經驗越足,越老越值錢。
以分散式架構體系的不變經驗去應對不斷變化的商業模式,不斷新增加的各種軟體,IT人才能立於不敗之地。
2、管理+生意
不想當將軍的不是好士兵。
到一定階段,如果你不管理別人,就是別人管理你,要知道,技術僅僅是為產品、為商業模式服務的,就是個工具。
要在不斷的做項目過程中,去理解這門生意,理解如何在人數增多的情況下讓項目跑的更快。
無論你做的什麼項目,歸根結底就是門生意,要不斷提高自己對生意的敏感度,不斷觀察團隊,打磨團隊,讓團隊支撐項目跑的最快。
這樣你的價值能低?
越老帶團隊經驗越多,對生意的理解越透徹,越老越值錢。
所以,讓要自己增值,不吃簡單碼農的青春飯,就要改變自己的想法。
積累架構經驗、積累管理經驗、積累對生意的理解,對商業的敏感。
工作個10年之後,越老越值錢,到一定階段自己就可以做老闆了。
很多人看的多,想得多,做的少。
///////////////////////////////////////////////////////////////////////////////////////
好多人私信諮詢客棧的事情,這裡解答一下。
客棧是自己辭職間隙,去麗江遊玩了幾個月開起來的。 開起來後家裡人在打理,自己不需要太多精力去盯。從理財的角度來看,一個人必須有2條以上收入來源才會覺得踏實,本人比較居安思危,所以打造了一家客棧。只要認真做,收益率還是非常不錯的。 開客棧主要是鍛煉自己的經商思維,自己的老闆思維,給別人發工資和領工資永遠是兩種不同的思維方式。提升自己的格局和思維方式才會走的長遠,而不僅僅是一份打工心態。
目前還是從事互聯網工作,任職CTO。
///////////////////////////////////////////////////////////////////////////////////////
P.S.:工作之餘,在麗江還開了家客棧:麗江王子別墅客棧
不斷思考推廣運營,不斷思考互聯網跟實體的結合
開業一年,攜程好評數達到600條,微信公眾號推廣文章超過5萬真實閱讀
淡季入住率也達到了60%,旺季入住率99.9%
客棧微信公眾號:王子別墅客棧
地址:麗江市古城區束河路天域陽光3期福瑞苑30棟 (束河古鎮正門口)
攜程:http://hotels.ctrip.com/hotel/4036364.html
360攝像頭直播客棧院子:http://jia.360.cn/pc/view.html?sn=36051728549amp;amp;amp;amp;from=singlemessageamp;amp;amp;amp;isappinstalled=1
客棧2樓直播玉龍雪山:http://jia.360.cn/mobile/view.html?sn=36051729367amp;amp;amp;amp;from=singlemessageamp;amp;amp;amp;isappinstalled=1
客棧介紹:
1、一畝地的獨棟別墅,三層樓+地下室的娛樂設施,10個房間
一樓每個房間里都有獨立花園,其中3個房間可以直接看到玉龍雪山
二樓每個房間都有陽台,其中2個房間超大陽台可以直接看到玉龍雪山
三樓是豪華套房,超大陽台可以直接看到玉龍雪山
2、地下室做了電影院KTV、還有麻將房
3、100M光纖入戶,電視機都是50寸以上樂視高清電視,購買了2年的樂視會員,看超清大片 4、傢具都是定製,衛浴都是科勒,高端洗浴用品
5、入住2個晚上以上免費接機
6、餐廳廚師點餐,管家一對一諮詢服務
這個嘛,關鍵還是要看給誰干
今年37歲,這麼說吧,我真正享受編程帶來的體驗之美,恰恰就是從35歲那年開始的。
美到什麼程度呢? 巴望著周末兩天趕緊過去,快快迎來工作日,我好到公司把我的各種構思,設想從十指之間從無到有創造出來,我太TMD享受這個愉悅的創造過程了,在我有限而並不豐富的職業生涯里,這是我體驗最最好的一段時光,而且它持續了一年半了,在我對未來短暫的規划下,這種體驗還會一直持續著,我在敲打這些文字的時候,都能感覺到心中充滿期待,略帶興奮的憧憬。
我是一個沒有什麼工作壓力,有點小小的追求,軟體開發管理經驗豐富,教學經驗豐富的,還挺有創造性的水瓶座,正在獨自小創業的開發者。
或許我正經歷著:當年明月在不太繁忙,時間充裕的公務員崗位上一字一字敲打出明朝那些事兒的心情澎湃吧。
為什麼我會有這種體會呢,我想還是給別人打工的「苦」,相比給自己做的「甜」,所帶來的反差吧
我02年畢業,到上海工作,幹了3 Java年程序員,從民營,到美資(那時候BAT還沒現在那麼香,進外企也是小小追求),3年之後接手一個爛攤子做項目經理,把那個小組帶所在公司營業額最高。
所以在公司里工作,從開發到管理的各種苦,我都有嘗過
程序員的苦
需求瞎改,改其實很正常,但是不能無休止的拍腦袋亂改啊,難以忍受多次被自己都沒有拎清需求的同事翻來覆去地要求瞎改,工作的激情在這種低價值,無甚意義的「苦幹」中磨損殆盡
設計想法無法被實施,被欣賞,被尊重。 其實我技術還是不錯的,至少在所處的開發團隊里都是不錯的那個,從業一年之後,一個人在上海,對自己要求挺高,把Tomcat源代碼看完,並且寫了兩篇文章發布到csdn和javaeye,分別叫什麼啟動框架和消息流轉什麼的,記不太清楚了,那個時候還是04年吧,所以在同齡人里,技術比別人強不少。 有很多自覺好的想法,但是受限於職場地位,主管看問題的角度,無法被實施,不被認可,體現不出自己的價值,
不善談判,現在還是,哈哈。。。。 明明自己技術比別人好,工資待遇同等,甚至更差,我覺得挺多技術同行都有這樣的短板吧。 怎麼辦呢,只能通過跳槽來較大幅度得提高薪資,那會兒是04年,工作兩年後,跳到美資,年薪也6位數,當時覺得還挺美的~
局限於工作環境,技術成長有限。 所在美資是做產品的,和當時國內大多數做項目的不太一樣,做產品有較好的生命周期,對技術的要求也沒有那麼深入,基本上很難有技術上的挑戰,以當時個人的技術能力完全可以勝任工作,而自己又是一個比較懶得人,不大能主動去堅持學習非工作以外的技術,更加能接受工作挑戰帶來的學習刺激。我能預感到今後幾年自己的技術水平成長會很有限。 我記得離開那家公司的3個月前,每天在腦子裡都會有一個聲音在吶喊,我不能這麼過,再這麼下去我技術就廢了,未來會越來越糟糕,我不能這麼過。
在管理崗位上也做了有4年多吧,然後談談自己感受到的管理的苦
其實帶團隊什麼的,都還好,我很照顧組員,因為我是從他們的位置一步步走來的,知道他們需要什麼,他們也比較信賴我,所帶的項目組扭虧為盈,後來成為公司最大的項目組,收益也是最高的組。項目加班也不多,因為自己做程序員的開始一段時間加班就很厲害,從底層敏銳地感覺到項目計劃的不合理,技術採納風險的無控制等等因素,當時就琢磨,自己有一天做主管,應該怎麼做,不加班,不拖延工期,需求如何控制等等。 事實上,後來自己做了項目經理,確實極少有加班。
說說另一個角度的苦吧,這個也許和自己性格上的缺陷也有關係
還是不善談判 ,要求漲薪體驗很糟糕。 我TMD帶最好的組,為公司做最大的貢獻,為什麼要求漲薪感覺是像在要飯,得到的不是欣賞鼓勵,而是施捨? 這給我帶來了深深的沮喪感,更加強烈地感受到,給別人干,幹得再好,收益都很難和自己的付出成比例相關
迷茫感 外地去京滬工作的人,有幾個不想自己創業的呢?那個時候,比起現在的創業氛圍沒有那麼濃烈。自己真想創業,但是因為崗位的局限性,技術和管理,沒有直面客戶,不知道真正的需求是什麼,想創業,但是不知道如何下手,不知道該怎麼啟動,做什麼。 又不甘於總是給別人干,進退兩難,處於相當長的一段迷茫期。
真沒想到,寫到這裡,心情都變得陰鬱起來了,人真的是很容易受環境影響呢,我這段時間越來越強烈地感覺到,與其依靠我脆弱的意志力,不如主動選擇合適的環境,更容易把事情堅持下去。
現在呢,是一個給自己做事情的獨立開發者,獨立開發者,就是說。。。。
我想咋整咋整。。。 哈哈哈,不要太爽
離開開發相關崗位後,竟然做了6年教育相關工作,這個可真不是在我最初的職業規劃里的啊~ 人生有時候,還真是挺詭異的。
而恰恰是這段工作經歷,讓我直接面對客戶,知道客戶需求的是什麼,知道提供什麼樣的內容,是對客戶真正有價值的。
以前,一直耿耿於懷一個人怎麼干呢? 必須得一個團隊啊,直到35歲那一年,看了朋友圈的一篇關於可汗學院的報道,對我啟發很大,又看了一篇國外的報道,說有個相當大的交友網站做得非常優秀,流量如何高,產生了多大的經濟價值,關鍵是這個網站,就只是一個人做的。 一個人做的 我靠, 原來這樣規模的網站也是可以一個人干啊。我自己就是經驗豐富的Java 全棧工程師啊,如同陰霾的天空射進來的一道電光,讓我像受了雷劈一般,醍醐灌頂。
接下來,就根據自己對價值的理解,亢次亢次得幹起來了。與以往為了別人的夢想,拿一份工資而工作不一樣:
這一次,沒人行外人指手畫腳
這一次,完全按照我的思路來做
這一次,從無到有,享受著設計創造一個有價值的事物的過程,並把自己的創造靈感揮灑在每一行代碼里。 (如果你也是水瓶座,你能明白我說的把創造性付諸實施的快感)
這一次,我完全為自己干,多少付出,多少收穫
這一次,我做出來的東西,有人專門來加我QQ說好,來主動給我發紅包,說東西真值,我收穫真誠的欣賞和尊重,這種體驗,真的是無價啊!
這一次,我規划了很多要學習的內容,也許今年都學習不完,並且有信心去把他們都學習和掌握,因為我有這樣的環境支持我去堅持,我很興奮,因為可以預見自己可期待的成長
而這樣的體驗,都建立在那8年的開發管理經歷之上,支撐我有這樣的基礎和狀態去做我現在十分想做,喜歡做,享受做的事情。
經歷過了程序員職業生涯從一開始的憧憬,奮鬥,成長,熟悉,熟練 到後來疲倦,懈怠,麻木,機械,厭煩,看著身邊越來越多的技術同事苦熬,轉行,離去,放棄。曾幾何時,我幾乎忘記了程序員靈魂的火花 —— 創造些什麼!
真是慶幸,做了6年老師,這個不是程序員的角色之後,我居然還能再次享受一名開發者這純粹的愉悅。
我很幸運
雖然我還很年輕,自認有資格一答。
說真的,我早就想和那些說「程序員職業生涯很短」的大人物PK了。還有那些說「35歲還在堆代碼的是loser」+「年過35歲還沒做到管理層是loser」的牛人,你們說這番話的時候帶腦子了嗎?
理論上,一個「程序員大神」的養成至少需要十年(老天爺演賞飯吃的那種人不在我說的範圍內)。
我們現在以一個計算機專業的學生舉例(各種學歷):
22-25歲大學畢業,這個時候有的也只是基礎。
25-30歲之間是成長期,這個時期,主要完成的是技能的學習,各種溝通,學會團隊協作。
28-30歲完成方向的選擇。
30–35之間,開始形成了自己獨特的思維,有了自己的社會資源,有了一些原始積累,有了自己的技術圈人脈,有了自己的知識體系,用自己的認知去理解行業,有自己帶項目,帶團隊,架構設計,人員管理的一整套方法論。
我是說,35 歲的時候,是一個程序員最好的時光,你和人家說,親,你的職場生涯結束了?
那,好的,如部分人所說,程序員干到35歲就干不動了」,請問,你的「干不動」指的是什麼?
看了很多言論,我來推導整理一下:
1:老闆不要35歲的程序員!
2:公司盯著你的身份證看,時間一到,立刻請你走人了?
3:你人到35歲,自己首先看不起堆代碼這個工作。
4:35歲的時候,身體條件不支持程序員這份工作。
5:35歲的時候。一廂情願地認為:做為一個程序員。已經沒有了任何的上升空間。
這都是一些什麼奇奇怪怪的想法?
我的建議是:
一:做為一個合格的程序員哥哥,和行業一起進步,具備全局觀,具有縝密的邏輯,不人云亦云,這是入門要求,對吧。程序員職業規劃是一種IT行業發展本質方法論,行業的發展才決定著個人的職業發展目標及路徑,沒錯吧,那,大環境原本就不可預測,你為什麼要貼上年紀的標籤?
二:做為一個合格的程序員哥哥,要做好職業規劃。你打算選擇發展到什麼樣的技術相關職位?項目經理?架構師?全棧工程師?CTO?
年紀大了以後有沒有轉管理的計劃?喜歡什麼樣的技術團隊?你要問的是你的「心」,而不是市場。更重要的是:不要被你的公司洗腦。
三:做軟體是一件辛苦活,這個行業就是這樣,程序員今天學的東西明天就沒用了。程序員每一次的放下就得付出很大的代價,這也是沒有辦法的事情。程序員的學習比較苦逼。任何技能的學習,絕對不是模仿XXX,也不是原有固定知識的累積。一輩子學習是肯定的,唯一可以肯定的是,這條路會越來越簡單。這個簡單指的是:
1:到了一定階段,有了一定內功,「新技術」出現,你會發現,那些都是一通百通的。
2:這個行業,會讓堆代碼這個事情,越來越簡單。
四:如果你不想在35歲的時候繼續堆代碼,我建議你在28-30歲之前趕緊轉行或者轉型。一個人要在28-30歲要完成方向的選擇。
五:35 歲的確是個職場檻,對於程序員更是,但這個檻,更多的指的是你自己的心態。不要糾結「35歲了,怎麼還沒成為大牛」,這和一個高考生糾結「我為什麼沒有考上清北」是一樣的。
六:也就是本文重點部分,如何做「才能破解程序員不能過35歲這個魔咒」。
首先,把堆代碼當成愛好吧,若你愛一件事情,發自內心,難以遮掩。自然而然以她為重。這是種本能,不費吹灰之力。
其次,年紀大了容易保守,偏執狂,一根經,偏激,看不起人際關係,我說,哥哥,不要和錢過意不去,也不要和自己過意不去。這個圈子,上升最快的,永遠不是寫代碼寫得好的,而是既懂技術又懂業務還會做人的程序員哥哥。
再次,如果你經過了22-35歲這10年+的努力和訓練,後面都是你享受成果的時候。誰和你說「35歲的程序員,過期了」,打死它,退一萬步來說,35歲的時候,你不想幹了,在這以後,無論你以後從事什麼,你的編程的經歷,對你的塑造都是極其寶貴的。因為你的耐心,你的邏輯,你的注意力,都是經過嚴格訓練的。這就是為什麼技術出身的人創業容易成功的原因。
最後想說的是:
1: 咱程序員首先不要有「螺絲釘精神」,其次不要把自己當做「大國工匠」還洋洋得意(這個梗你懂得),最重要的是,程序員即便是掌握再多的技能,也會隨著時間的推移,被更加先進的框架取代掉。我們要做一個終身學習者。
2:要「靈活運用」在編程過程中培養的「邏輯思維」,要比產品經理更熟悉業務的每一個細節,要知道如何將「業務里的每一個細節」映射到你的代碼中,「思維的訓練」對你以後從事任何工作都是加分的。當你在編程中體驗到「細微事情處理」讓自己的思維更加細緻,你就能領悟到其他常人不能看到的東西,當然了,這種思維也會造成很多程序員鑽牛角尖。注意保持好平衡。
3:要學會看自己所在公司的發展與行業的發展,如果公司已經處於下坡路,方向也不對,老闆還不知道轉型,也沒有能力轉型。一天到晚只知道一味強調執行力,以為靠這個就可以改變公司的命運,公司發展不好老闆就抱怨員工奉獻不夠能力不行,趕緊把你的老闆給炒了。動動腦動動手指就能寫代碼了,
你寫不動是因為腦癱了還是手斷了呢?
現在的業界趨勢是這樣的:
1. DevOps風行,基礎架構代碼化(infrastructure as code),部署維護自動化。通俗點說,就是原本運營幹的事也要碼農來干。碼農從開發到部署維護一股腦一起做了。碼農做事和運營做事有什麼區別?碼農喜歡把一切都自動化。DevOps減少人為錯誤,部署更可靠,反應更快,成本更小。當然這一切的基礎是雲計算平台的普及。
2. DevOps直接導致了部門結構扁平化。沒有了開發和運維之間的溝通扯皮,大大減少了兩個部門的中間管理職位的存在意義。如果碼農能幹所有的事情,那麼團隊里就只需要碼農一種職業。不僅創業公司如此,很多大公司內部改革也開始搞這一套。我見過很多開發團隊內部甚至不設置項目經理,所有技術決策由團隊民主決定。即使是管理崗,也更重視技術出身。
這和「35歲程序員不轉管理就完蛋」有什麼關係?
第一,碼農要做的事情多了,其工作對自動化的要求也更高,這需要程序員的技術和經驗達到相當的深度和廣度(也即:全棧),對體力和工作時間方面的要求反而降低了。這種趨勢對多年技術深耕的資深程序員是有利的。
第二,純管理崗無前途。寫代碼要懂代碼。代碼審核要懂代碼。單元測試要懂代碼。雲架構部署要懂代碼。持續部署也要懂代碼(Jenkins腳本等等),自動監控系統返回一堆stack trace你還得懂代碼。管理崗能做什麼?在JIRA里拖卡片么?
不是技術出身,不能參與討論,關鍵時刻不能擼袖子寫代碼的管理人員會被當傻逼看待。
市場不會騙人。至少在澳洲,DevOps程序員和項目經理的工資是倒掛的,雖然後者的行政級別比前者高。
當然苦哈哈靠體力賺錢的碼農依然存在,並且廣泛存在於各個外包公司中。而外包公司,從來就和「前途」搭不上邊。
不會啊,男人六十多歲也是能夠正常性生活的,女人也得五十多歲才閉經。
程序員也是人啊。引用之前在司徒正美博客上看到話:
為了積聚這實力,你必須自己暗暗發力,偷偷自己寫一套東西。之前人家寫過的彈出層,富文本編輯器,語法高亮插件……你一套也不能少,這樣你才能接觸到之前碰不到的原生API與知識點。如彈出層有關垂直居中的CSS知識點,select穿透問題,富文本編輯器用到的iframe知識點,Range與Selection對象的知識點,語法高亮則是你正則的大檢驗!如果寫業務代碼,你寫十年,水平還是那樣。因此有句話說——「用一年的經驗混十年」
「我能力強,我效率高,我應該是公司的關鍵人物」,其實那是錯的,不可替代性才是最重要的。如果靠「賣力」增加不可替代性,作用是微乎其微的,還是得靠「高門檻」。我認識的工程師里,越是技術好的工程師越會意識到這個問題,然後去做一些」深度」的發展,這也算是工程師的自我保護吧。說什麼做IT沒前途,30歲要轉行,這只是無能者的藉口。
古人說——「人無遠慮,必有近憂」。你平時有這麼多空閑時間,為何不努力提升一下自己的水平呢。不去認真閱讀一下大師們的框架,不自己寫一個框架。記得當初我在博客宣傳我的框架,被某個嫉妒的人罵個狗血噴頭,兩年過去,他消聲匿跡,而我,從一個公司的核心前端變為另一個公司的核心前端,現在是去哪兒網的前端架構師。因此要相信自己!不要怕這怕那,有努力就有回報!
你或者有過激情,你或者有過夢想,但當你的KPI考核點是PM那些荒唐的改來改去的功能點,多熾熱的火焰也會被澆滅。因此你必須要搞出一點東西出來,努力爬上去。是廢命於加班,天天寫業務,還是專註於底層框架的研發,為某個難題而苦惱,完全在於你一念之差。「是金子總會發光的」,或「是石頭到哪都不會發光的」,也完全在於你一念之差。本書將為你提供了一個可能性及一大堆技能點,打開了一個美麗的新世界,提供了一個X年不遇的機會,準備了一個迅速上升的渠道。
附上原文鏈接
http://www.cnblogs.com/rubylouvre/p/3658441.html
補充一個問題:如何評價人口紅利和開放生育下,華為開始清理34歲以上的職員? - 程序員 - 知乎
華為用行動證明了,程序員真的干到35就不行了。
================================================================
因為最近也在想,怎麼找到突破口,大概想了一些,拋磚引玉,希望能給弟兄們提供一些還不成熟的思路:
維持競爭力的核心,其實還是要能創造突出價值。
1. 行業加成,除了技術上的積累之外,工作中是否對業務有極深的了解。比如在攜程,窮游,是否對旅遊行業有深入的了解,是否對旅遊方面的發展有獨到的見解。比如在京東淘寶,是否對電商,物流行業的坑都踩過,是否能給出足夠好的解決方案。如果工作這麼多年,除了技術積累,對行業對業務沒有任何感覺,可能幫不到你了。技術和業務的加成對個人而言應該是乘法。
2. 管理,不能老是在做頭牌的路上努力,還是要想辦法做媽咪。做管理,想想是否能有識別人才的能力(做了多年技術,哪些是優秀的人才總能甄別出來吧),怎麼維護團隊狀態,怎麼控制項目進度,怎麼能把工作分配給合適的人,怎麼評估合適的技術方案。
3. 提升影響力,酒香也怕巷子深,身邊有好朋友,技術很牛逼,每天默默寫代碼,默默的一個人構建了強大的系統,但是回報很差,身邊的做了點東西,開源,寫博客,推廣自己的人,反而混的更好一些。程序員本身就是每天跟機器打交道,展示自己的機會不多,除了天降奇才之外,大家如果不宣傳自己,最後什麼也得不到。
4. 做個攢局人,抱團。一個人單打獨鬥,不如做個攢局人,把弟兄們聚在一起,互相交換資源,互相幫助。或者說做個掮客。
5. 上面有人,人脈這個東西,是個玄學,我是個交朋友隨緣的人,可能這點做不到了。
6. 搞副業,讓副業儘快超越主業。自己當個小老闆,自給自足。
上面是最近一直在思考的轉型方案,拋磚引玉吧,程序員弟兄們一起努力,遠離雞湯, 好好賺錢。
================================================================
原答案
很多答主都提到了熱愛啊,鑽研之類的。
但是,提出這個問題的答主,很大程度上對編程應該沒有太多熱愛。
你看到有人提出過, 35歲了,還適合做愛嗎?這種問題嗎?所以在熱愛和鑽研的角度來解答這個問題,對答主幫助不大。
程序員在職場上最大的問題還是 「掌控稀缺資源的能力不夠強」。
之前創業潮的時候,很多朋友都在諮詢我怎麼建立技術團隊。然後,部分人明確問出了,「產品上線之後,技術團隊怎麼處理」。其他即使沒有明確問過這個問題的,也多多少少的透露了這個意思。在很多人眼中,技術團隊軟弱可欺,用完即扔。
隨著這幾年互聯網發展,程序員賺錢確實比較多,進入門檻低,培訓培訓就可以上崗。市場上大量湧入了各種非常水的碼農。
不管我們這種科班出身,各種演算法刷的多溜,架構和設計模式玩的多好,也要承認這些人對市場價格有很大衝擊。我們這些老東西代碼寫的好,穩定不出問題,快速優雅的解決問題,不怎麼加班,但是偶爾來一次通宵啊,加班啊,就扛不住了。
這幫90後,95後小孩兒,雖然代碼差,但是造成的問題多啊,並且說通宵就通宵,說加班就加班。在土老闆眼裡看來肯定是這些人「幹活賣力,性價比高,那些系統不出問題的,老也不加班還拿好高工資的肯定偷懶了」。
大家創業,說到底就是為了錢。單純的程序員朋友們,以為憑著契約啊,信任啊,埋頭苦幹。上線之後,直接被幹掉,這種事例也是不勝枚舉了吧。最近最有名的應該就是馮大輝和丁香園的撕逼了,如果馮大輝不是一個大V,不就默默的被幹掉了。
江湖險惡,手裡必須要有資源,創業有風險,有實力講義氣的大哥,鳳毛麟角。
至於那就去大公司吧,大公司的坑就那麼多,挺難爬上去的,很多出去創業的小夥伴大概也是碰到了職位提升的瓶頸了。
再說,大公司的人就全部都靠譜嗎?弟兄們應該全都沒少碰到過超級不靠譜的產品經理吧。給技術弟兄們各種挖坑,兄弟們加班加點開發,累的半死不活,結果產品feature做出來根本沒人用,拉了10次屎,終於有一次做的還湊活,結果此產品,各種拿出去忽悠,被升級加薪或者挖走,下游的開發兄弟們紛紛表示,日了狗了。
熱愛編程熱愛技術固然好,但是,35歲了,在這個年紀,早就沒資格用努力感動自己了。上有老下有小,房子壓力,小孩兒教育,父母身體問題,壓力大的不行。不想陪著這些不靠譜的產品經理玩了。做事情的標準不應該是 「用努力感動自己」,而是應該變成怎麼「掌握稀缺資源」。
確實有很多技術大牛能做到名利雙收,或者淡泊明志,我這種俗人,只能表示羨慕了。
30 歲, 我幾乎是從零開始學習編程, 現在剛入行 2 年, 你給我說這個( Doge 臉
我一直都是覺得編程最重要的是思想, 代碼只不過是把思想翻譯成計算機所理解的程序語言而已, 現在計算機思想難道已經這麼難了? 難到 35 歲踩過這麼多坑的人都理解不了, 你讓 20幾歲的小年輕理解理解試試?
多慮了......一個66歲老爺爺找到開發崗位的故事。文章翻譯自Quora 5千贊的一個答案,請忽略我的渣翻譯。
A software developer I know recently got a call from a recruiter at Google, asking what it would take for him to come to work for them.
我認識的一個程序員最近接到了谷歌的電話,HR問怎麼樣才能讓他來谷歌工作。
This developer had actually already worked for Google, but he left about five years ago to pursue other projects, and he didn』t want to live in one of the cities that have a Google office. Even though he didn』t have a degree in computer science and never took a college course in OOP, he must have impressed them enough to keep him on the recruitment list these years later. The recruiter suggested maybe he could be interested in interviewing with the Project Loon team in Singapore.
他之前已經在谷歌工作過,但是五年之前就離開了谷歌,他不想在有谷歌總部的任何一個城市生活。儘管他沒有任何計算機專業的學位,沒有在任何學校學過面向對象編程,但是他一定給谷歌留下了很深的印象讓才會他離職幾年後依然把他放在招聘列表裡面。HR建議他或許會對新加坡的Loo團隊感興趣。
He gave a little chuckle to the recruiter over the phone, and his first question was: You know how old I am, right? The recruiter confirmed that yes, his date of birth was on file, and that Google didn』t factor age into its recruitment policies. The developer agreed to think about the prospect and they agreed to touch base again in a week.
他笑了笑對獵頭說「你知道我有多老,對嗎?」 對方確認說檔案裡面有他的出生日期,但是谷歌在招聘時並不會把年齡作為考慮因素之一。他答應一周以後聯繫。
That 66-year-old developer is my father. He is collecting social security while being courted by Google. He had a fulfilling career running his own company, consulting, and being an employee. He made contributions during the early stages of numerous technologies such as TCP networking, USB protocols, 802.11b implementation, and military GPS. Then he was hired by Google in 2008, when he was 58.
這個66歲的程序員是我父親。當谷歌聯繫他的時候已經在領養老金了。他有一個令人羨慕的職業,他經營著自己的公司,自己掌管著一切。 他參與開發了TCP協議,USB協議,802.11b以及軍用GPS。2008年,在他58歲的時候他被谷歌僱傭。
While at Google, he wrote software in Java, a language that wasn』t even invented until he was 45. And he was an individual contributor, without having any other engineer report to him.
JAVA是在他45歲的時候才發明出來,然而在谷歌的時候(58歲),他就在用JAVA語言來開發軟體。在谷歌他是一個獨立開發者,平時沒有任何工程師向他彙報。
One of the great things about software development is it』s all about your passion to learn and ability to perform, which is demonstrated by my dad』s career and the careers of thousands others. If you don』t have those required ingredients, then sure, software development is a dead-end job at any age. But if you have the passion and skill, then it is not a dead-end job after 40, 50, or even 60.
軟體開發最好的一方面就是它只和你的激情以及學習能力有關,包括我父親在內的數以千計的程序員的職業生涯就是最好的例子。如果你沒有這些特質,那麼開發對你來說在任何年齡都是做不了的職業。但是如果你有激情以及能力,那麼當你在四五十歲,甚至六十歲也不晚。
Link: Is software development really a dead-end job after 35-40?
四十了,很快就將迎來第十九個年頭兒,不是從學編程開始算,而是從在公司上班、做商業開發開始算。
至今還沒覺得思維跟不上或者精力不夠,反倒是開發方面輕鬆了很多。因為腦子裡可選方案很多,所以有些別人要花一天的工作,我換個思路可能兩小時就搞定了;長期抓BUG養成了字元級眼睛,很少犯低級錯誤;很少鑽牛角尖;對某些看似複雜的設計可以做到一目了然、一步到位;興趣廣泛,知識的體系化程度較高,可以跨領域借鑒。
當然,記憶力從二十多歲時就不行了。所以連一些 API 的細節都不知道,嚴重依賴IDE,日常工作都是一邊開著 API 文檔一邊寫代碼,除非經常接觸的 API 否則只要過一個月基本上就忘了。
還有一點就是我從不跟風,什麼技術對我來說值得學心裡有譜,所以基本上很少浪費精力。什麼值得深入用,什麼只值得表面看看,什麼沒必要看,分得比較清楚,能合理分配投入的精力。
說去做管理的人要官迷到如何程度,搞管理就不要求年齡了嗎?搞管理就對專業能力沒有要求嗎?試想一個開發的管理者對開發的目標和達成目標的方法都不了解的人如何把控團隊進度?管理團隊是程序開發的養老職位?這在哪個公司都不可接受的。公司委任一個管理者是要管理者拿著公司的資源做出團隊才可以做成的目標。
作為一個團隊的領導者要比開發者更了解什麼是公司需要的,什麼是團隊要做的。要比普通的開發者承擔更大的責任。不但要知道開發者能做什麼,如何做,還要規劃好做什麼,什麼時候完成。還要更了解最前沿的技術,把控做好團隊的技術框架。
以為坐上管理就可以官僚了。就可以放手技術了。以為不寫代碼就可以不思考代碼了?不過是官迷的幻想而已,只要入了開發的門,只要沒有脫離開發的部門,你不學習新技術,不寫代碼驗證你學的新技術。就算不被公司淘汰也會被行業淘汰。
想要脫離開發,只有不斷的學習,不斷觀察,不斷寫代碼。直到像行業少數精英一樣可以開發出真正有價值的東西換成錢的那天,才有資本說我可以不幹不想乾的事情。
當然不是啊。在我讀中學的時候,2005年,那個時候流行的是程序員只能做到30歲。今年是2017年了,當然可以做到42歲啊。35歲是2010年的說法了。
真不會。作為一個挨踢企業的老闆我要說,絕大部分企業,很缺的是牛逼的程序員。為啥說35以後程序員沒法混?我給你算筆帳,假設你從22歲開始工作,從3000開始,平均一年漲一級工資,到35歲,你應該至少16k工資,這並不算太高,但問題是,如果你做的事情,是一個剛畢業的人也能做的,我可以花五千僱傭到,怎麼會花三倍價格僱傭你呢。說白了,這十幾年的工作經驗沒有轉化為競爭力。而如果你是那種能當主程的人,不要說35了,55都有人搶著要。
至於加班的問題,的確年紀越大,精力越差。但是除了小微企業或創業企業,也並不是說需要每天加班和通宵的。偶爾的值班,哪個行業都有。不過,當你已經是主程級別,不可能連副手都沒有一兩個吧
推薦閱讀:
※不上網,我們會缺少什麼?又會獲得什麼?
※開啟瀏覽器的「Do Not Track」後,會對瀏覽造成什麼影響?
※程序員的理想是什麼?
※你有哪些「當時我就懵逼了」的經歷?
※計算機科班出身的優勢是什麼?