做一个程序员,是不是“努力就会成功”?现实残酷但又必须面对!
做一個程序員,是不是“努力就會成功”?現實殘酷但又必須面對!下面說一下我自己的故事吧。
那一年,我加入了某知名公司的某知名部門,在辦公室中,我看到了到處都掛著——“努力就會成功”的條幅,這個部門中大多數員工的郵件簽名都會有“努力就會成功”,我感到一種熱血沸騰的氣氛,這是我在多年工作來都沒有感受到的,當時挺高興地能和這樣一群人工作,也沒多想。直到有一天,我看到這些高級的軟件工程師們把自己關在又擠又吵的會議室中,拼命地加班,真是拼命,周一到周日,每天早上10點到凌晨3點甚至凌晨5點,連國慶節都來上班,就在這樣的環境和狀態下,連續干了三個多月……上線前,QA找到了1000多個bug(你沒看錯,就是一千多個),最后這個項目用了1年多的時間來返工,本來一個6-8個月的項目,團隊被打了雞血想在3個月內完成,最終卻花了近兩年的時間來返工……
(要知道,我以前在外國公司工作,外國老板看到團隊在長時間加班會感到焦慮的,因為加班通常代表著有不好的事情正在發生……)
? ? ? ? ? ? ? ? ? ? ? ? ??
所以對此,我是有點看不懂的,看不懂的是,為什么這么一群聰明的人,放著明亮寬敞的辦公桌不用,硬要擠在一個又窄又小又吵又熱的小空間里工作,而且要這么透支地寫那么重要的很關鍵的系統級的代碼……這就好像,一架在一個小作坊里被人加班加點趕工出來的飛機,誰敢坐啊?!老實說,這群工程師真是很優秀的工程師,他們完全是可以做得更好的……但是卻做出了如此蹩腳和糟糕的系統……他們說,這樣坐在一起可以做到快速溝通,然而,我覺得這恰恰是一種沒有章法的表現。
也是在這家公司,在這個項目爛尾一年前,公司感到了危機,CEO號召全體996,舉全公司之力從董事長到下面基層員工對抗外部所謂的威脅,有的部門為了表現,甚至997,然而,在一年后,做出了一個爛得不能再爛的軟件,最終以失敗告終,很多人包括CEO也因此下課……
這是最讓我看不懂的一個事了,為什么這么如此成功的公司的高級管理層會做出這樣的事情,而且還制定這樣的政策……把這么優秀的員工以及公司大把把數以億計的鈔票投入到這種錯誤的路線上來,而且還拼命地加班…… 他們腦子里在想什么呢?難道他們真的以為,有足夠多的錢,足夠多的人,然后拼命加班,就能打敗對手嗎?……
你喜歡這句話嗎?
“努力就會成功”,“加班就會有成就”,“勤勞就會致富”……是這樣嗎?仔細思考一些,這些話存在嚴重的邏輯問題,我們在高中的時候學過“充分條件”,“必要條件”和“充要條件”!“努力就會成功”這句話,把“努力”說成了“成功”的充要條件,這不就是錯的嗎?努力只是成功的必要條件之一。你在錯誤的方向或是格局很小的方向上努力,能有用么?你努力地要飯,你努力地當搬運工,你努力地打騷擾電話銷賣保險…… 在錯誤和小格局的方向上努力,你還覺得努力還有用嗎?
但是很多人是很喜歡“努力就會成功”這句話,這類人也很喜歡看很多小人物通過自己的努力變成成功人士的勵志的故事,為什么這種故事會被很多人喜歡甚至感動。因為這很符合大眾的心理訴求,這種訴求其實就是一種只要使力只要拼命了就可以成功的心理訴求,因為這類人基本上都是能力有限,不知道怎么提升自己的人,當他們看到只要拼命使力就可以成功的觀點時,他們就會有共鳴,就會感到,不用學習那些晦澀難懂高級的知識,不用掌握和練習哪些高級技能,自己只需要在低級的事情上拼命和努力,加更多的班和干更多活,自己就會像電影中的那些小人物一樣,總有一天會成功的……
“努力就會成功,勤勞就會致富”,不但符合那些低級管理者的利益訴求,同樣符合那些能力不足不愿意學習和成長的人的訴求。因為,他們混淆了行動與進展,忙碌與多產,他們以為能靠蠻力可以彌補思維上的惰性,靠拼命可以彌補能力上的不足……
喜歡或認同這句話的人基本是能力上有問題的人,這類適合做勞動密集型的事。不信你可以試試看,當一件事的難度超過一定程度的時候,那些聰明的人會找到更省力的方法,而能力上有問題的,還是在那使蠻力。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
我成長的過程
回想我的過去,我在2001年那年被外包到了某銀行做開發,標準的9/10/6,封閉開發,就是用C語言在AIX系統里堆一些銀行的交易邏輯,老實說,這個過程并沒有讓我學到什么東西,也沒有什么成長,我每天想的就是我要離開這個地方,所以,我在晚上10點以后開始看書學習到11點半,并使用工作環境動手實踐書上的代碼,一年后,我精讀了《TCP/IP詳解》《Windows核心編程》《Java編程思想》等書。然后,我找到一份外企業的工作,月薪一下翻了三倍。
在外企不加班,但是當時的外企壓力也很大,對代碼的質量要求的也很高,來的第二個月,就因為代碼寫的太差,差點被開掉,所以,為了能夠達到更高的標準,我自然也是很努力的,在周末甚至黃金周節假日我哪里都不去,我就去公司,但我不是在公司上班,因為我沒有自己的電腦,所以,我只能蹭公司的電腦,這導致辦公樓的管理人員經常打電話給我讓我幫他在周末的時候管理物業……?在這家公司是我成長最快的時候,然而,并不是因為我的努力,而是因為有很多比我牛逼的人在Code Review上給我大量的幫助,在項目上幫助我,我的努力學習雖然也有作用,但更多的是高手對我的幫助。
再回想一下我以前在職場上的很多關鍵點,不是因為我加班了,而是因為在某些關鍵問題上,我跳出來解決了其它人都解決不了的問題,我解決了一個網絡通信莫名其妙的斷掉的問題,我把性能優化了很多倍,我解決了一個不能重現的一個困擾團隊3個星期的問題(其實就是大家沒有認真讀文檔),我在入職一個公司的第一天里就為這個公司解決了一個歷史遺留問題……在Platform,我每周解決了bug數是全公司的其它人的總和還要多(從不加班),在路透,我帶團隊優化的系統的性能是全球所有研發中心最高的,在亞馬遜,兩周打通美國和德國的訂單和商品列表系統……我也有失敗的時候,而我失敗的時候,總是因為我搞不定事,即便是加班拼命努力也無濟于事!是的,我的職業生涯的成長,最根本的不是你有多努力,有多勤奮,而是你能搞定很多人搞不定的事!
你不信你可以看看你們公司那些不用加班,就算什么也不干,公司也要花錢養的技術人員,他們的成功一定不是努力和加班加出來的,你會發現這些人拼的不是誰干的多,而是誰解決的問題更有難。
我加班996的時候,從來都不是我成長最快的時候,而我和一群牛人在解決難題的時才是我成長最快的時候。
Work Smart
2015年因為父親病危要動手術,所以我不能工作在家照顧父親。于是我就成為了一個自由職業者,幫很多公司解決一些技術問題,好多都是高并發和系統穩定性的問題,有一些是分布式架構的運維的問題,還有一些是工程管理和企業文化問題……有一些小公司的單體架構在業務上一推廣就宕機了,于是把我叫過去,我在生產線上直接re-arch,用一些非常規的手段,1-2天就把性能救過來了…… 還有就是解決一些點狀的技術問題,還幫用戶做一些design/code review……,有70%工作是真正的按勞取酬,也就是先把問題解決了再談要收多少錢,那段時間我出賣的不是我的勞動力,而是我的技能,所以,反而比打工掙得多多了,而且還比較輕閑……
有時候,我還調侃到,你在大公司里一天寫上萬行代碼,拼命地加班,你信不信,我只用寫幾百行代碼就掙得比你多?同樣是一個簡單的 for-loop 語句,有人寫的就值1萬元一行,而你寫的則一文不值。關鍵不在于誰寫的代碼多,關鍵在于我們解決了什么樣的問題。你千萬不要以為只要付你足夠的錢,你就可以996,讓你干什么都可以,然而當你自己把自己當成勞動力的時候,你也就只是一個像牲口一樣的行事了!
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
這就好像算法一樣,你那個O(n^2)的遞歸窮舉算法,再怎么樣也干不過我的O(n)的動態規劃的算法。
現在我拿了投資在創業,一開始幫助各大企業建高并發高可用云化架構的公司,現在還給企業提供金融和營銷能力,我跟客戶談業務的時候,基本不是因為我有多加班多努力地做方案,而是我能一針見血地指出用戶的問題,幫用戶解決問題。我在很多地方都見到阿里、螞蟻、華為、HP……,一個小創業公司跟他們競爭真的很難,但我知道,要能競爭過這些大公司,這根本就不是能夠通過加班996或是拼命努力就能搞定的,我必需要使用更好的方式,所以,除了更好地站在用戶的立場,能夠給用戶制定更符合用戶的技術方案之外,我必需做到我的技術方案不比這些大公司的差,而這一點,完全不是加班、努力或是勤奮能出來的,這是需要靠自己的經驗、學習能力、歸納思考、和與更多牛人交流才出的來的……當我給某銀行CIO介紹完我的分布式系統的方案后,CIO給我微微鞠躬說:“過去一兩年,我聽過幾乎所有國內外產商跟我講的分布式的方案,你的是我聽過的最好的方案!謝謝你!”,當我給某省電信行業公司講了一下DevOps的方案后,老總對我說:“你們真的是做事的人!”,當用戶來問我:“你們的API網關是怎么寫的?為什么運行的這么穩定?”……這些話都是讓我很心里很暖的話……當然,我也有被罵的時候,也有失敗的時候,但基本上來說,我無法通過努力工作改善我思維的不足……
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
我們學計算機當程序員最大的福氣不是可以到大公司里加班和996,而是我們生活在了第三次工業革命的信息化時代,這才是最大的福氣,所以,我們應該努力地提升自己,而不是把自己當勞動力一樣的賣了!在這樣的一個時代,你要做的不是通過加班和拼命來跪著掙錢,而是通過技能來躺著掙錢……
搜狐號:成功逐鹿
學習C/C++編程知識,想要成為一個更加優秀的程序員,或者你學習C/C++的時候有難度,可以來C++編程學習,交流討論會成長更快。
總結
以上是生活随笔為你收集整理的做一个程序员,是不是“努力就会成功”?现实残酷但又必须面对!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ADOQuery 的几个事件
- 下一篇: 关于硬盘运行在不同模式下的疑难解答