search
程序員的顧慮

程序員的顧慮

導讀:軟體開發通常被認為是一個相當體面的工作,有很好的工資待遇,工作具有挑戰性,市場對程序員的需求量在增加,而且工作環境很安全。但這些都是表面的,真實的情況是,幹了多年開發后,會不自然的進入思維誤區,以為自己在做正確的事,其實所謂的正確早已變成了對立面。

軟體開發通常被認為是一個相當體面的工作,有很好的工資待遇,工作具有挑戰性,市場對程序員的需求量在增加,而且工作環境很安全。但這些都是表面的,真實的情況是,幹了多年開發后,會不自然的進入思維誤區,以為自己在做正確的事,其實所謂的正確早已變成了對立面。

在是很難快樂的做一輩子的程序員的,如果您立志於此,那麼,很抱歉,恐怕沒有太多公司會認同您的意志。首先要確定的一點是:代碼是廉價的。在國內程序屆很少有德藝雙馨的老程序員的(那些名氣很大的確實是很多都不寫代碼了,所以不能再稱為程序員了)。程序員不是藝術家,更不是醫生,您寫的代碼或許很快就被淘汰。前面是斷崖,後面是前仆後繼,說不定會在睡夢中突然驚醒,然後發現自己冒了一身冷汗。

那麼,程序員會恐懼什麼呢?大概有以下幾點:

代碼是廉價的

軟體行業快速的更新率

能力和工齡並不成正比(又稱為「逆水上揚」)

生活的壓力

不能做一輩子的程序員

但,我們的目的不是對職業的恐懼,而是建立在恐懼之上的邏輯。

代碼是廉價的

在從事這個行業時,首先需要確定的一點是:代碼是廉價的。在工作中,您所珍視的每一行代碼,在別人看來可能都是「垃圾」。或許在幾年後,重新審視當年的代碼,也會有很多不盡如人意。刪起代碼來,要像剪雜草一樣簡單。同時,從側面也說明了,您的工作也無非如此而已。所以,您所珍視的能力,也無非如此。

代碼就是這樣,一遍遍重構,一次次刪除,隨之而來的是一批批新人代替了舊人。沒有永恆的程序,也沒有永恆的程序員。所有的都不過是一個過客。有時,您會很自豪的說,某某軟體是自己的傑作,但是,過了一些年後,您還能說那些軟體是您寫的嗎?您所寫的部分早已經煙消雲散了。

代碼是廉價的,程序員也是廉價的。程序員無非是實現了他人的意志,扎克伯格的偉大是在他不再是程序員之後,所有想成為扎克伯格的程序員,他們的概率比中彩票還難。

軟體行業快速的更新率

軟體行業的更新率是在所有的行業中最快的,每天都有新技術出現,然後是新的概念,新的思維,新的方式。想想那些堅守在微軟陣營的老程序吧,他們可能感覺自己過的很好,但也未必。互聯網就是這樣,新老技術互相更替。永遠不可能指望一種語言永遠興盛。現在想想塞班系統,可能很多年輕人都沒聽過,但是它離開我們也才幾年而已,但我們感覺就像是過了幾個世紀。

在技術的更新換代中,程序員不得不逼不得已學習或使用一個特殊的技術。任何一個開發人員都有他偏愛的編程語言、工具和技術,同樣,他們也有不願意去觸碰的東西。每個人都知道這是一個誤區,但又有多少人勇敢的跨了過去?

軟體行業的另一個更新換代是人員的更新換代。現在由於互聯網的興盛,程序員基本上可以批量生產了。現在無數的職業培訓機構和線上教育,幾乎是任何人都可以在很短的時間內勝任開發工作。從業者在膨脹,行業呢?今年的形勢不容樂觀。

逆水上揚

不是所有的老程序員都比新程序員更好,就如一個寫了三年VB的人不一定在開始一項新技術的時候比一個在這項新技術上寫了一年的程序員更加優秀。工齡並不能代表一切,也就是所謂的「逆水上揚」理論。

一個寫了多年VB(只是做個示例,並不是說VB不行了)的程序員,在某一天忽然發現再也無法找到行業里的工作了,然後轉到了例如VR這樣技術,兩個完全不相干的技術,之前的工齡能說明什麼呢?我想大家都很清楚。但是,一個在新技術剛興起時就參與其中的新人,在隨著技術的成長中逐漸把握了核心的技術能力,他能不能替代那些之前有不相干程序經驗的老程序員呢?答案顯而易見。

所以,老程序員不要在為自己的經驗沾沾自喜了。後生可畏啊!還是那句話,互聯網行業,變化太快。

生活的壓力

純粹的程序員的工資是有上限的,因為很多公司是業務型的公司。實現功能,您會,他也會,但是您比他貴。而且,隨著年齡越來越大,會有很多事情分心,老程序員再也不能像毛頭小夥子一樣沒日沒夜的加班了,一是沒那麼大的精力了,二是家庭也不允許。由此說來,公司更喜歡哪些程序員呢?老的,還是年輕的?

不必驚訝,雖然市場對於開發人員的需求量很大,但仍有很多人仍會擔心丟掉飯碗。隨著年齡增大,承受的壓力也越來越大,再也不是一個人吃飽全家不餓的時候了。一個大齡程序員的失業是很可怕的一件事情。

不能做一輩子的程序員

廚師可以做一輩子的廚師,年紀越大的醫生越值錢。對於那些經驗型的行業,他們才是一技傍身。但是,程序員呢。我想沒有人會認為程序員是一輩子的吧,尤其是在。結合開頭的那句話,多水王,就是如此。

如果您在一個公司,您會發現您的領導或領導的領導,年齡並不是很大,但也只能稱為曾經的程序員了,他們不再編寫代碼,慢慢的他們就不會寫代碼了。他們的今天就是新人的明天。現實就是這樣。

程序員的最高境界是不寫代碼,那麼程序員的核心競爭力是什麼呢?

堅持學習

不只是在寫程序

視野和全局觀

影響力

堅持學習

技術人生如逆水行舟,不進則退。在一定深度之內成為一個「雜家」並沒有什麼不好。其關鍵在於所學的跨領域知識,能否成功的運用到工作中去。這裡的跨領域,並不是要求大家都成為每個領域的專家。最重要的是有一門敲門磚,學習的引子。要保持一種好奇心,觸類旁通就是這個道理。

但這隻能支撐您工作的前十年,可能十年也顯得太長。一個老程序員是要承擔起更多程序之外的東西的。

不只是在寫程序

程序員在職業發展中有兩個路子,一個是轉管理,一個是成為技術專家。但很多公司把兩者混為一談了。也就是做技術的不只是單純的研究技術,還要做些技術之外的工作,比如人員培養,需求分析,架構設計,部門交流等等。

在一件事上做久了就很容易進入思維誤區,寫程序本質上是解決問題,很容易陷入到具體之中而忽略了全局。在技術精進的同時,關注些需求和管理上的學問,不失是個很好的補益。

是一個人情社會,有人的地方就有江湖,江湖就是人情世故。

視野和全局觀

高手在編程效率方面可能並不比普通程序員快多少,因為他們會吝嗇自己敲下的每一行代碼。這種「吝嗇」有兩方面的含義,一是項目的架構性和整體性考量,二是從性能和優化的角度進行Coding。其實,這裡所映射的是一個開發者的技術視野。

在確定了整體之後,落實到具體的模塊實現,每一行代碼不但有上下文的考量與規劃,還要具備模塊間的整體布局。這是模塊內的技術視野,比如介面的定義、註釋的可讀性、代碼的執行效率等。當你寫下一行代碼前,要考慮它是否會對整個系統造成影響,是否方便其他介面進行調用,這些都是一個開發高手的「技術潛意識」。

不要拘泥於您現在的工作,每個人都是需要成長的。一個人能成為什麼樣,其實很多時候都在於他能看到多遠。

影響力

影響力與人際理解力、服務經神等素質的核心區別在於,影響力是為推動他人達成個人所期望的目標而服務;而人際理解力與服務精神更多是為幫助達成他人的目標而採取行動。在程序員的成長中需要建立自己的影響力和他人的認可度。我們所看重的成功人士不就是基於他的影響力而來的嗎?能量越大勢能越大。

最後,我想說的是,上面說的很可能都是錯的,事物總在發展的,沒有包治百病的良藥,世上也不會只有幾種疾病。我只能說,我所知的很少,最多是個借鑒,供大家一笑罷了。世上的路很多,方法也很多。歸於人生,有太多的未知和不確定。優秀的程序員都是聰明人,聰明人有很多捷徑。

熱門推薦

本文由 一點資訊 提供 原文連結

一點資訊
寫了5860316篇文章,獲得23306次喜歡
留言回覆
回覆
精彩推薦