一位老程序員的忠告:別想著靠技術(shù)生存一輩子
注:本文系轉(zhuǎn)載。
筆者目前是自己單干,但此前有多年在從事軟件開發(fā)工作,回頭想想自己,特別想對(duì)那些初學(xué)JAVA/DOT、NET技術(shù)的朋友說點(diǎn)心里話,希望我們的體會(huì)多少能給你們一些啟發(fā)。
一、 在一個(gè)地方工作8小時(shí)就是“窮”
在國內(nèi),你千萬不要因?yàn)閷W(xué)習(xí)技術(shù),就可以換來穩(wěn)定的生活和高的薪水待遇,你更不要認(rèn)為那些從事市場開發(fā)、跑腿的人沒有前途。
你知不知道,咱們國內(nèi)有相當(dāng)大的一部分軟件公司,他們的軟件開發(fā)團(tuán)隊(duì)都小得可憐,甚至只有1-3個(gè)人,連一個(gè)項(xiàng)目小組都算不上。而這樣的團(tuán)隊(duì)卻要承擔(dān)一個(gè)軟件公司所有的軟件開發(fā)任務(wù),在軟件上線和開發(fā)的關(guān)鍵階段需要團(tuán)隊(duì)的成員沒日沒夜的加班,還需要為測試出的BUG和不能按時(shí)提交的軟件模塊功能而心懷忐忑。如果你不幸加入現(xiàn)場開發(fā)的團(tuán)隊(duì)你則需要背井離鄉(xiāng)告別你的女友,進(jìn)行封閉開發(fā),你平時(shí)除了編碼之外就是吃飯和睡覺。
更可怕的是,會(huì)讓你接觸的人際關(guān)系非常單一,除了有限的技術(shù)人員之外你幾乎見不到做其他行業(yè)工作和職位的人,你的朋友圈子小且單一,甚至破壞你原有的愛情(想象一下,你在外地做現(xiàn)場開發(fā)2個(gè)月以上,卻從沒跟女友見過一面的話,你的女友是不是會(huì)對(duì)你呲牙裂嘴)。
也許你拿到了所謂的白領(lǐng)工資,但你卻從此失去享受生活的自由,如果你想做技術(shù)人員尤其是開發(fā)人員,我想你很快就會(huì)理解,想在一個(gè)地方長期待一段時(shí)間,認(rèn)識(shí)一些朋友,多一些生活時(shí)間的愿望。
相比我們的生活和人際關(guān)系及工作,那些從事售前和市場開發(fā)的朋友,卻有比我們多的多的工作之外的時(shí)間,甚至他們工作的時(shí)間有的時(shí)候是和生活的時(shí)間是可以兼顧的,他們可以通過市場開發(fā),認(rèn)識(shí)各個(gè)行業(yè)的人士,可以認(rèn)識(shí)各種各樣的朋友,他們比我們坦率說更有發(fā)財(cái)和發(fā)展的機(jī)會(huì),只要他們跟我們一樣勤奮(有一種勤奮的普通人,如果給他換個(gè)地方,他馬上會(huì)成為一個(gè)勤奮且出眾的人)。
二、別讓一方面“最強(qiáng)”,蒙蔽雙眼
在學(xué)習(xí)技術(shù)的時(shí)候千萬不要認(rèn)為如果做到技術(shù)最強(qiáng),就可以成為100%受尊重的人。
有一次一個(gè)人在面試項(xiàng)目經(jīng)理的時(shí)候說了這么一段話:我只用最聽話的人,按照我的要求做。只要是聽話就要,如果不聽話,不管他技術(shù)多好也不要。
隨后這個(gè)人得到了試用機(jī)會(huì),如果沒意外的話,他一定會(huì)是下一個(gè)項(xiàng)目經(jīng)理的繼任者。
朋友們你知道嗎?不管你技術(shù)有多強(qiáng),你也不可能自由的騰出時(shí)間像別人那樣研究一下LINUX源碼,甚至寫像LINUX一樣的杰作來表現(xiàn)你的才能。你需要做的就是按照要求寫代碼,寫代碼的含義都被規(guī)定好了。按照規(guī)定寫,你很快就會(huì)發(fā)現(xiàn)你昨天寫的代碼,跟今天寫的代碼存在很多類似之處,等你寫過一段時(shí)間的代碼,你將領(lǐng)略:復(fù)制,拷貝,粘貼那樣的技術(shù)對(duì)你來說是何等重要(如果你沒有做過1年以上的真正意義上的開發(fā)不要反駁我)。
如果你幸運(yùn)的能夠聽到市場人員的談話,或是領(lǐng)導(dǎo)們的談話,你會(huì)隱約覺得他們都在把技術(shù)人員當(dāng)作編碼的機(jī)器來看,你的價(jià)值并沒有你想象的那么重要。而在團(tuán)隊(duì)內(nèi)部,你可能正在為一個(gè)技術(shù)問題的討論跟同事搞內(nèi)耗,因?yàn)樗环?,你也不服他,你們都認(rèn)為自己的對(duì),其實(shí)你們兩個(gè)都對(duì),而爭論的目的就是為了在關(guān)鍵場合證明一下自己比對(duì)方技術(shù)好,比對(duì)方強(qiáng)(在一個(gè)項(xiàng)目開發(fā)中,沒有人愿意長期聽別人的,總想換個(gè)位置領(lǐng)導(dǎo)別人)。
三、外面的世界,遠(yuǎn)比我們想的復(fù)雜
你更不要認(rèn)為,如果我技術(shù)夠好,我就自己創(chuàng)業(yè),自己有創(chuàng)業(yè)的資本,因?yàn)樽约菏歉慵夹g(shù)的。
如果你那樣認(rèn)為,真的是大錯(cuò)特錯(cuò)了,你可以做個(gè)調(diào)查在非技術(shù)人群中,沒有幾個(gè)人知道C#與JAVA的,更談不上來欣賞你的技術(shù)是好還是不好。一句話,技術(shù)僅僅是一個(gè)工具,善于運(yùn)用這個(gè)工具為別人干活的人,卻往往不太擅長用這個(gè)工具來為自己創(chuàng)業(yè),因?yàn)檫@是兩個(gè)概念,訓(xùn)練的技能也是完全不同的。
創(chuàng)業(yè)最開始的時(shí)候,你的人際關(guān)系,你處理人際關(guān)系的能力,你對(duì)社會(huì)潛規(guī)則的認(rèn)識(shí),還有你懂不懂別人的心,你會(huì)不會(huì)說讓人喜歡的話,還有你對(duì)自己所提供的服務(wù)的策劃和推銷等等,也許有一萬、一百萬個(gè)值得我們重視的問題,但你會(huì)發(fā)現(xiàn)技術(shù)卻很少有可能包含在這一萬或一百萬之內(nèi)。如果創(chuàng)業(yè)到了一個(gè)快成功的階段,你會(huì)這樣告訴自己:我干嗎要親自做技術(shù),聘一個(gè)人不就行了,這時(shí)候你才真正會(huì)理解技術(shù)的作用,和你以前做技術(shù)人員的作用。
四、小結(jié)
基于上面的討論我奉勸那些學(xué)習(xí)技術(shù)的朋友,千萬不要拿科舉考試樣的心態(tài)去學(xué)習(xí)技術(shù),對(duì)技術(shù)的學(xué)習(xí)幾近的癡迷,想掌握所有的技術(shù),以讓自己成為技術(shù)領(lǐng)域的權(quán)威和專家,以在必要的時(shí)候或是心里不暢快的時(shí)候到網(wǎng)上對(duì)著菜鳥說自己是前輩。
技術(shù)僅僅是一個(gè)工具,是你在人生一個(gè)階段生存的工具,你可以一輩子喜歡它,但最好不要一輩子靠它生存。
掌握技術(shù)的唯一目的就是拿它找工作(如果你不想把技術(shù)當(dāng)作你第二生命的話),就是干活。所以你在學(xué)習(xí)的時(shí)候千萬不要去做那些所謂的技術(shù)習(xí)題或是研究那些冒泡算法,最大數(shù)算法了,什么叫干活?
就是做一個(gè)東西讓別人用,別人用了,可以提高他們的工作效率。想象一下,你做1萬道技術(shù)習(xí)題有什么用?只會(huì)讓人覺得酸腐,還是在學(xué)習(xí)的時(shí)候,多培養(yǎng)些自己務(wù)實(shí)的態(tài)度吧,比如研究一下當(dāng)?shù)厥袌瞿壳坝心男┸浖居萌?,自己離他們的要求到底有多遠(yuǎn),自己具體應(yīng)該怎么做才可以達(dá)到他們的要求。等你分析完這些,你就會(huì)發(fā)現(xiàn),找工作成功,技術(shù)的貢獻(xiàn)率其實(shí)并沒有你原來想象的那么高。
不管你是學(xué)習(xí)技術(shù)為了找工作還是創(chuàng)業(yè),你都要對(duì)技術(shù)本身有個(gè)清醒的認(rèn)識(shí),在國內(nèi)不會(huì)出現(xiàn)比爾·蓋茨,因?yàn)?,國?nèi)目前還不是十分的尊重技術(shù)人才,還僅僅的停留在把軟件技術(shù)人才當(dāng)作人才機(jī)器來用的尷尬境地。(如果你不理解,一種可能是你目前僅僅從事過技術(shù)工作,你的朋友圈子里,技術(shù)類的朋友占了大多數(shù),一種可能是你還沒有工作,但喜歡讀比爾·蓋茨的傳記)。
五、理解
“千萬不要一輩子靠技術(shù)生存”,這是一句比較現(xiàn)實(shí)的話。很多人覺得自己現(xiàn)在20多歲,月入2~3W或者更多了,很OK呀。
理解這句話的前提是,你不滿足于現(xiàn)在的收入(如果是工作年限比較短的,你可以看看這個(gè)行業(yè)做的比較好的人的收入,你能否滿足),對(duì)自己的未來或者行業(yè)有感到擔(dān)憂,那么你才能很好的理解這句話。
這也是為什么能理解這句話的人,大多是到了35歲左右的。
誠然,對(duì)于一個(gè)工作七八年或不到七八年的程序員,這個(gè)階段技術(shù)是必須的,要深、要有一個(gè)今天被開,我可以保證明天找到工作的技術(shù)能力。
如果你足夠幸運(yùn),能有在某一個(gè)領(lǐng)域做到專家級(jí)的、后面的小輩無法替代你,那"千萬不要一輩子靠技術(shù)生存"這句話當(dāng)然也就不適合你了,大牛,請(qǐng)受我一拜。但是,對(duì)于大多數(shù)人,都無法做到在一個(gè)領(lǐng)域無可替代(機(jī)遇與天賦),那么就要想辦法保證在上了年紀(jì)、上有老下有下的時(shí)候不被公司裁掉、收入不減、生活質(zhì)量不降。
如果在這個(gè)階段你還在研究這個(gè)功能怎么實(shí)現(xiàn)、這個(gè)算法是多么的精妙,我覺得你不是太單純,就是在借技術(shù)之名在逃避現(xiàn)實(shí)。說一句庸俗的話,我滿腦子想得都是怎么搞錢,怎么讓家人生活的更好,做技術(shù)的在35歲之前沒達(dá)到這一點(diǎn)(且不論財(cái)務(wù)自由),你覺得35歲以后還有機(jī)會(huì)嗎?或者說捫心自問一下,你所做的事情有多少是你能做,別人不能做的,有多少技術(shù)含量自己心里應(yīng)該也有點(diǎn)數(shù)。所以,技術(shù)只是現(xiàn)階段謀生的一項(xiàng)技能。
每個(gè)人的技術(shù)都是有天花板的,你的技術(shù)到了天花板的時(shí)候,你的收入能夠滿足你,這個(gè)是需要考慮的。當(dāng)然,你家里有礦或者一線城市有幾套房,那你完全可以把技術(shù)當(dāng)愛好。
六、技術(shù)是你的第一桶金
程序員,本質(zhì)就是學(xué)習(xí),不斷學(xué)習(xí),不被淘汰!而年紀(jì),所謂高薪就是為第二產(chǎn)業(yè)打基礎(chǔ)吧!俗話說得好,有錢投資誰還親自動(dòng)手,創(chuàng)業(yè)風(fēng)險(xiǎn)大,還累,當(dāng)然你要是那種小的生意自然沒問題?;旧?5歲前好好存一筆錢,為以后轉(zhuǎn)行也好,做副業(yè)也好,做基礎(chǔ)吧,而怎么在這十幾年的時(shí)間里,賺到別人20-30年的錢,對(duì)程序員來說,最好的方法就是提升自己!
End