千萬別做程式設計師?
原文:http://www.techug.com/post/donot-be-a-programmer.html
知乎中看到一條收穫2000+讚的言論,他是這樣說滴:
作為一個已經逼近35的CnotS工作者,強烈建議,年輕人,如果有選擇的話,不要進入CS。
第一,嚴重青春飯
看看華為淘汰34以上員工就知道了。
第二,社交圈很難往上走
所有人都追著醫生交朋友,手握現金的百姓會追著金融人交朋友,你就是做個婚慶,裝修,修車,警察,哪怕開個小飯館都會有人託你辦事。CS除了修電腦別的技能對行外人幾乎沒有用。碼農想積累人脈幾乎沒戲。
第三,連續不離散的無意義學習
從入行到今天,我已經學習過不下8門語言,三四種資料庫,讀過無數庫的原始碼。而且我這些積累絕對可以通過任何對口公司面試。但是,這種積累隨著技術更新換代,完全沒有意義。我這十來年來的技術經驗積累的努力放在任何一個其他行業都夠成為技術專家了,但是CS因為技術更新毫無意義。
第四,上升通道受限於運氣
如果你做建築工程,那你從萬達跳槽到華遠,你的經驗直接可以應用,但是計算機不行,你在微軟用微軟的底層庫,即使你能默寫C#底層全部實現,你到intel,龜殼字,18摸一樣是一個小白,我前同事從諾基亞過來,做塞班的專家,過來諾西一樣是開發,我還得教他風河的API,另一個前同事都已經快從組長升經理了,跳去intel一樣底層開發小兵。甚至諾西內部的數通架構師因為部門縮減去fdd做測試。可以說CS絕大多數人沒機會做一個專案從碼農一直做到總監。一個碼農能否晉升靠的主要是運氣。
第五,上升通道受限於不具備的能力
碼農最不具備的能力就是PPT吹牛逼拍馬屁搞關係。我敢肯定所有大公司都如此,小公司不甚瞭解。不過創業公司是賭博,不好亂講。大公司能升上去的都是會玩人際的人。我在過的幾家大公司總監,研發總監,不是PM就是測試出身,或者職業經理人。研發第一遠離業務,第二缺乏人際公關能力,絕大多數做到基層經理就止步了。經理上不去,碼農也就上不去。只能走架構師和技術專家路線。但是參見上一條,一個公司的架構師和技術專家到另一家公司幾乎和小白無異。
第六,工作時間過度佔據生活時間
我從業十來年幾乎日日10小時++。失去的時間是你一生中最寶貴的財富,其他人可以用這個時間做很多事情,家庭,三產,人脈積累,運動健身,旅遊娛樂。而碼農不行。
第七,智力付出和收入嚴重不成正比
行外人一定會反駁,可惜事實的確如此。一個動態規劃可以拯救企業管理中一跳產品線為企業節約巨大成本或創造巨大收益。但是放在計算機行業,不過是節省一臺虛機的一部分運算量,節省成本至多不到萬元。解一箇中高度複雜bug中的彎彎繞繞所花費的智力成本放在扔個一個行業都足夠一個月的業績,但是計算機行業卻不過是一兩天的績效考核。
第八,可替代性強
這點關聯前述一三四。首先,碼農工作的本質更多的是學習一門語言,然後應用這門語言對公司一個具體業務實現科學家的想法。計算機行業科學研究好玩,數學好玩,演算法好玩。但是多數人是碼農而非科學家,數學家,演算法研究員。碼農就是實現業務程式碼。這就導致了工作極容易上手進而可替代性高。即使是高階語言中最繁瑣的C++從0到能略有瑕疵的完成基本工作一年學習足以。更何況python, JS, java, php這些極易上手的語言現在已經能完成很多,絕大多數工作了。剩下的就是熟悉業務。而熟悉業務對於十年工作經驗和一年工作經驗者時間差值最多不超過半年。這就導致了可替代性隨著年齡增長並無法出現線性提高。可以說計算機行業可替代性與年齡經驗是對數曲線。而多數行業也是線性甚至有些行業是指數。
這些現象都是事實,但是並不構成不做程式設計師的理由
一 金字塔結構
無論如何提倡平等、自由。社會一定是一個金字塔結構,古今如此、中外如此,行業如此。金融行業的錢多吧,2016平準薪酬達到30W,但如果你是銀行的小櫃員,你拿得到30W?金融是一個頂部高度聚集的行業,大佬拿大頭,櫃員嘛,呵呵。
任何行業,頂部肯定是1/10的人,做金融也好、警察也好、醫生也罷。你做警察,你能說你35歲能幹到總監?剩下9/10必定是小兵、被統治者、碼農。
二 萬精油
計算機實際上是一個萬精油行業,什麼行業都能幹,金融需要、電商需要、房地產也需要。
但業務才是公司核心:房地產考慮如何賣房、教育考慮如何招生、電商考慮如何成交… 程式設計師?保證系統好用、穩定就好,萬一你受不了996辭職,拉一個人年輕精壯的人來照樣幹。
因此,單單程式碼好並無卵用,你人際關係不好,活一般,NB不會吹,PPT不會做,那你價值何在?你能默寫C#底層庫的全部程式碼,動態規劃信手拈來,精通8門語言,4個數據庫,然而公司並不需要,又有何用?
JD上經常看到的“我們是一個技術驅動型公司…”千萬別信:國人懂技術驅動?有技術驅動?外賣火就全做外賣、單車火就全做單車,屁股決定腦袋,流氓引導無良中產。騙騙碼農而已,別當真。
三 關鍵靠人品
技能撐死只佔成功因素的30%。Facebook的程式碼也就是培訓班水平,微軟第一版作業系統直接是向別人買的,就連Google也是後來招人重新寫。
但扎克伯格身為猶太人的文化傳承、從10歲開始做專案帶來的素養、哈佛大學的優質人才帶來的產品戰略,這才是關鍵。
技術從來不是主導,你的眼界、思考、產品能力、發現機會的能力,才是決定你能否發展的主要因素。
你的行業怎麼樣?細分領域如何?公司前景如何?你是什麼位置?比如你做網際網路職業教育,你知道教育市場如何細分麼?你知道公司所處的賽道麼?你知道國外公司的幾種玩法麼?你知道幾種教學法?你又知道幾種學習模式?
萬物本是一體,程式設計區區小技,何足為道。