程式設計師這份工作給你的感覺,多半都是沒日沒夜的除錯、瘋狂加班,再不然就是技術狂人?本文作者以自身經歷說明,程式設計師也可以成為優秀的時間管理者。本文作者 Matthew Jones,原文標題 I Am a 9 to 5 Developer (And So Can You!)
我近來一直在思考 Safia Abdalla 所發的一條的推特——
一個可能不受歡迎的觀點(還有一點諷刺):
要成為一個偉大的工程師,你不需要寫部落格,也不需要致力OpenSource,更沒必要進行技術演講或者做任何其他事情。
你可以單純的成為一個上班族,把程式碼扔在辦公室,這完全沒問題。
——Safia Abdalla (@captainsafia), 2018年1月13日
這段文字讓我心頭一動,雖然我也認識到其中的諷刺意味。自從我因一次拒絕加班而被炒魷魚之後,我對往後未來潛在僱主說過的一件事就是:我不願意加班。至少,別是定期加班。
此後,我偶爾會經歷那麼幾次「地獄周」,這個時候我們會要麼進行特定的程式編寫,要麼修復特定的漏洞,問題解決了之後,我就拍拍屁股走人。
Abdalla 女士的推文比這更進一步,正因為如此,我突然更好地認知到了自己的思考過程。看,我選擇了這種心態(出現,搞定問題,拍屁股走人),主要的原因是為了保護我自己的理智。
界限與沮喪感
問題在於我們根本解決不完問題。對於像我這樣渴望思考的人來說,我一看一個程式碼專案上全都是尚待解決的問題,而我自己又的確可以找到讓人們心滿意足的解決方案。沒錯,我是解決了一個問題!嗯,太酷了!可......那又怎樣呢?
因此,我必須設定界限,我不得不離開工作崗位,我必須成為一個朝九晚五的程式設計師。
我知道有很多程式設計師都患上了「冒名頂替綜合症」。你可能在某個時候也有過這種症狀:它讓你感覺自己是個騙子,根本不知道自己在做什麼,只是「假裝」在做什麼而已。
所以,我必須設定界限,比如像「工作就是工作」和「休息就是休息」這樣的界限。設定界限可以使我幫助我保持清醒。很久以來我都覺得這樣的設定,導致我不像是一個「程式設計師」。我不能一連坐在電腦前面打上16個小時的程式碼,因為到最後我根本就沒法做任何事了,我還有心愛的妻子和三個孩子,他們需要我關心他們,愛護他們。現實就是,我們親手編寫的程式碼永遠不會愛我們的。
但是,我還是想做得更好,做一個更好的程式設計師,就像那些我尊敬的人一樣,我痛恨自己沒有能力做到這一點。
在這個問題上,推特和其他社群媒體可以說是最糟糕的。那些很聰明的程式設計師——說實話,我很欣賞他們的工作——會自豪地宣稱他們編寫程式只是花了「一整天」的時間而已,他們還宣稱這樣很有成就感。而我呢?我就只能坐下來,對我為什麼不能像他們那樣感到無比地絕望。為什麼我不能在這方面努力呢?該死的大腦!你為什麼不讓我像他們一樣有高效率呢?我可以做到像他們一樣好,只要你別擋我的道!
我花了很長時間才意識到我的大腦並不能這樣運作。我永遠也沒法進行連續16小時的編寫程式,我也永遠都不可能熬個通宵還能把事情做完,我永遠也不會像 Twitter 上那些人所說的那樣「高效率」。沒辦法,我就是做不到。
而且,作為一個工作了11年的專業的軟體開發人員,我發現其實這也沒什麼大不了的。
的確沒關係,因為每天工作八小時我仍然可以解決問題,我仍然可以完成我的工作,而且完成的相當出色,我仍然可以有效地領導我的團隊,我仍然可以用有趣的解決方案來解決有趣的問題。我只需要把一切都在我設定的時間之內擺平就行。關鍵是要意識到,這並沒有讓我比那些推特的程式程式師們黯然失色,反而會讓我更加與眾不同。
做「朝九晚五」的程式設計師
我敢打賭有一群可以被稱為「沉默的大多數」的程式設計師,他們只想幹自己的活,然後就拍屁股走人回家。這些人不會在晚上熬夜,以試圖解決困擾他們幾個星期的問題。這些人也不寫部落格,也不致力開源,更不會進行技術會談或者對寫程式以外的其他工作表現出一丁點兒興趣。這些人有時被戲謔地稱為「朝九晚五的程式設計師們」。我要在這裡告訴這些人,儘管我們是所謂的「朝九晚五的程式設計師」,但我們依然相當地出色。
如果你是一個朝九晚五的程式設計師,那麼這不僅不會使你成為一個糟糕的程式設計師,反而會使你成為一個優秀的時間管理者。
我不是來告訴你哪條路更好的,我只能告訴你怎麼做對我有效——很簡單,那就是成為一個朝九晚五的程式設計師。我只想做我的工作,而且想把工作做好,然後回家做其他事情(比如寫這篇文章)。我需要這樣做來保持頭腦清醒。你也可以,即使你的大腦和我的不一樣!你真的沒必要用數不勝數的程式碼來證明自己是一個好的程式設計師。你只需要深入思考問題,有一份想把工作做好的心就好。
你猜怎麼?如果你現在正在讀這篇文章,那你已經做得很好了。該回家就回家,沒事兒,我保證,明天活照樣幹,程式照樣寫。
請注意!留言要自負法律責任,相關案例層出不窮,請慎重發文!