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