程式設計超過 30 年,我是如何避開倦怠期的?

小謝發表於2016-06-19

我讀了一些關於程式設計師的對程式設計感到倦怠的文章,讀完後我開始思考為什麼我在工作了這麼多年之後(從 1981 年開始),還依然對程式設計充滿興趣。為什麼我依然喜歡寫程式碼?

當然,在三年前我寫的《是的,56歲的時候我依然要繼續程式設計》的熱文中,我已經提到了一部分。但是那次提的是關於程式設計師的程式設計方面,而這次是關於如何堅持程式設計師工作,不僅僅是寫程式碼。想知道怎麼讓你在每天早晨興奮的開啟你的文字編輯器或者整合開發環境,而不是恐懼工作拖著你的屁股把你帶到辦公室嗎?

回想起那些我曾經經歷過的喜愛的和討厭的工作,它們的區別是什麼?我又做了什麼使它們之間的差距這麼大?

作為開始,我將以時間順序簡述一下我的老闆們(注意,除非需要,我極少會放真實名字)。漏掉的是一些我為自己工作的一些經歷,隨後我就會提到。

-> 國防專案承包公司 -> 我的創業公司 1 號 -> 我的創業公司 2 號 -> 技術服務檯軟體開發公司 -> 電子郵件公司 -> 蘋果公司(賈伯斯迴歸之前) -> 諮詢公司 -> 諮詢公司 -> 金融服務公司 -> 數碼印刷業 -> 醫療行業 -> 3D網路遊戲開發 -> 旅遊公司 -> 建築公司建築公司

值得注意的是,我從未在同一行業工作過兩次?諮詢公司的專案也是在兩個完全不同的領域。

我的兩個創業公司可能是唯一的有關聯的,都是在做 Mac 軟體,但在第一個公司我們充當自己的發行商,在第二個公司我們為別人寫軟體。為自己的公司做事情,既是幸福的也是苦惱的。當一切都在變好的時候,那感覺很棒、很美妙。但是第一個公司在明顯沒有足夠的資金和微軟競爭的情況下失敗了,第二個公司在經歷了 5 年的 Deltagragh( DeltaGraph 是一款適用於 Mac 作業系統的功能全面的統計工具和圖表繪製應用程式。)開發後也是一樣,發行商想要進軍另一個方向,同時 Mac 應用市場也開始不景氣。

在我創立那兩家公司的時候,我不僅是主程式設計師,同時我還是董事長,我必須做所有的業務,從一開始我就要做所有的新聞採訪、參加股東會議和為公司的福利煩惱。在這兩個公司之後,我決定再也不一個人做所有的事,以後只為別人打工。在那時(大概 21 年前)我只在一家不是我自己開辦的公司工作過。

在過去的二十年裡,我主要是給別人打工,無論是作為程式設計師,還是作為某種架構師/程式設計師,有時我不得不做其他的一些角色,但是我從來不做純粹的管理工作。所以在這麼多年之後為什麼我還能始終堅持程式設計工作呢?

(1)我從不加班,除了偶爾的專案快結項的時候。

當然我在熱帖《為什麼我從來不無償加班?你也不應該!》中提到過。一些老闆(通常是諮詢公司)堅持讓你幾乎無盡的加班,不在乎你是否已經厭倦。你沒有必須要為他們(繼續工作下去)。你以破壞自己對程式設計的熱愛為代價去加班,這根本不值得,這會讓你不再繼續熱愛程式設計。

(2)我試圖找到一個相容我喜歡的工作方式的公司。

問題在於,在一開始的時候,你並不知道這家公司是否滿足你認為重要的那些條件,工作的過程、專案的組織方式,甚至人們對其他人的期望。我更願意在這樣的地方工作,人們不會以命令的方式讓我去做事情,我可以最大化的利用我的技能作出貢獻。每個人都有自己的長處、經驗和想法,在一個可以做自己的地方工作是一件非常開心的事情。祕訣就是在開始之前找出它,或者至少在沒有陷入困境前找到一個合理的出路繼續前進。人生如此短暫,你不能被不合腳的鞋子束縛,因為你不喜歡它,也不能從它那獲得利益。

(3)不要總是在同一個行業一直重複的做同樣的事情,或者更糟糕的是你從未換過一份工作。

我知道很多人在一個公司待上 25 到 30 年是因為他們害怕離開他們的舒適區。所以你們意識不到其實有更好的工作。我離開一家公司,經常因為我想要新的嘗試,當然有時只是公司破產了。新的公司意味著新的機會、新的挑戰和新的可學的知識。新的不一定是好的,但固執的堅持舊的事情意味著永遠沒有變的更好的機會。

(4)有時你需要停下來然後去做些你喜歡的事情。

好幾次我所做的事情,完全是因為我感興趣或者想完全徹底的研究一下。在第二次創業結束後,因為興趣,我研究建立了一個期貨交易系統。我賺不到錢(在那些日子裡沒有足夠的交易)但是學習的過程很有趣。我玩一個線上 FP MMO(Fist-Preson Massive Multiplayer Online 第一人稱視角大型多人線上)遊戲玩了 10 年,但是對質量非常不滿(那個公司沒有足夠的錢去修復問題),因為當時我為他們工作了兩年多。那是我做過最難的工作,幾乎沒有報酬。但是那是一份非常有挑戰性且複雜的工作,我們需要修復跨雙平臺的龐大的 3D 程式碼庫和成噸的 OpenGL 問題,我當時就像在一個糖果屋中的孩子。遺憾的是最終因為收入問題,我不得不辭職。

(5)除非你擁有這家公司,或者手中有大量的股票或者期權,不然不要害怕離開。

你欠老闆的只有他支付了工資的工作(每週 40 小時!);你不是一個奴隸,除了忠誠的做好本職工作,你什麼都不虧欠。找到一個好的公司,然後待一段時間,如果感到這裡不好、工作沒有挑戰性、認為這裡很糟糕、這裡的人不友好、管理層無能,或者其他任何(不好的),那麼不要害怕去找其他的工作。我知道這並不容易(時間很珍貴),但是請開拓你的視野,不要害怕跟招聘人員或者朋友或者網路交流,告訴他們你現在開不開心。沒準很酷的事情就會發生。

(6)通常你並不會創立一家屬於自己的公司,但那真是一個從新角度瞭解事情的好方式,那時你不得不每天擔心你的生意。你會了解到老闆看待問題的角度。加上你會了解到很多平時錯過的新事物(如銷售和利潤)。我花了 9 年時間運作兩家公司,我喜歡那的大多部分(除了結局),我和了不起的人一起工作,做很實用的東西!我沒得到任何額外的可觀收入,但是那些經驗是無論如何也換不來的。你可以為其他人的創業公司工作,通常你會做很多不同的事情,但請牢記它並不值得你拼死去做。

7. 不要對新技術和行業的變化產生恐懼。

你必須要保持每天至少學習一些新東西(我喜歡每天被鋪天蓋地的新技術追著跑)。新的思想、新的程式語言、新的框架、新的平臺;你永遠不會知道新的技術會給你帶來什麼新的變化。當然新的東西不一定是更好的,有時新的技術出現的太快(很慶幸我不是一個 Javascript 程式設計師),但是新的技術帶來了新的機會。如果你不願意學習新的東西,最終你不僅會討厭你的工作,甚至連一份工作都都沒有了。

希望上述羅列的對你有幫助,至少這些東西幫助我規劃了一個很長但沒有結束的職業生涯。我必須補充說,這個部落格寫了近十年了,我去找大師們聊天(偶爾從別人那聽說),去發現那些明顯值得我去閱讀的,我當然會記下這些。

記住,你的職業生涯完全由你自己決定。職業生涯規劃是一件終身的事情,你會成為你想要的那樣。只要你還有選擇,絕不要去自己不喜歡的公司工作,開拓自己的眼界。這樣在某一天退休後,你會說:“我(的職業生涯)過的非常愉快!”。

打賞支援我翻譯更多好文章,謝謝!

打賞譯者

打賞支援我翻譯更多好文章,謝謝!

任選一種支付方式

程式設計超過 30 年,我是如何避開倦怠期的? 程式設計超過 30 年,我是如何避開倦怠期的?

相關文章