1. 程式人生 > >別工作太長時間,這對你和公司都有好處

別工作太長時間,這對你和公司都有好處

減少些壓力,提高些效率:每天別工作太長時間,對你和公司都有好處

在軟體公司,永遠都有做不完的工作:太多新功能要實現,太多bug要修補。有時候你就是沒法快速完成積壓的工作,寫不夠程式碼量,花太多時間在一個看上去不可能修復的bug上。更糟糕的是,你還要把時間浪費在毫無重點的會議上,而不是用在工作上。

當情況足夠糟糕的時候你會發現你總是苦苦掙扎著加班來保持進度。然後你就會發現大家期待你時時刻刻都在回覆郵件,即使並沒有什麼要緊事。你累成狗燃成灰待處理的工作卻一點都沒有減少。

其實真正有效的解決方法並不是努力加班加點,而正好相反:工作更少的時間

先來點預防針:

  • 你越有經驗,這個方法會越有效。如果這是你畢業後的第一份工作,也許你只能耗著攢經驗直到你找到下一份工作,當然你應該儘快找下一份工作。
  • 工作更少的時間也需要你跟你的老闆溝通。當然了,如果你是月光族你就沒有可供談判的資格,所以你要做的第一件事就是:銀行賬戶上要有存款!

更少的工作時間,更高的工作效率

為什麼加班無法改善這個情況呢?因為加班讓你效率降低,同時也助長了你老闆不正確的管理之風。減少工作時間有相反的效用。

1. 每週更短的工作時間,能提高專注力

我之前提過,疲勞的時候工作讓你產出值降低。你需要花越來越多的時間來解決問題,然後很快你就會發現你完全在浪費時間。持續長時間的工作會讓你難以集中注意,因為你很快就精疲力盡了。

長時間工作:“5點應該下班了,但是我需要完成這個,再嘗試一次”。你這樣對自己說。但疲憊不堪的你花了三個小時才解決這個問題。第二天上班的時候你很累,也無法集中精力。

短工作時間:“五點了我希望我搞定了這個,不過還是明天早上繼續吧。”第二天精神抖擻的你只用了十分鐘就解決了問題。

2. 每週更短的工作時間,能促成更有效的解決方案

長時間工作會導致不好的程式設計習慣:你開始覺得解決問題的辦法就是強迫自己杵在那裡直到完成工作。但是程式設計是自動化,是搭建構架來減少工作量。如果你能想出一個更好的API實現方法,或者發覺某個功能並不必要,這往往可以節省大量的時間。

讓我們試想一下你老闆給你一個兩週要交工的任務,但是你估計你至少需要三週來完成。

長時間工作:“這個要兩週交工,但是我覺得我需要120小時。只好晚上和週末加班了。”結果你完全精疲力盡,並且很有可能無法按時交工。

短時間工作:“對於兩週的期限來說這個工作量太大了。怎樣可以減少工作量?讓我花幾個小時好好想想這個問題。”

不久之後:“如果我重構的話我可以一週完成80%的工作,這應該會讓客戶很開心的等我完成剩下的部分。就算我低估了工作量我也還有一週來完成它。”

3. 每週更短的工作時間,能避免糟糕的管理

如果對於任何問題,你的反應都是加班的話,那你其實在推廣不好的管理方式。你在用你的行動告訴你的經理,你的時間不值錢,他們並不需要考慮事情的優先順序。

長時間工作:如果你的經理不是很清楚你應不應該參加一個會議,他也許會對自己說:“這也許會浪費一個小時,但是反正他們會加班補上的。”如果他無法決定應該實現哪個功能,他會直接把兩個都交給你。

短工作時間:你的時間成了稀缺資源而更加寶貴了。如果你經理還有管理常識的話不重要的會議會被忽略,重要的功能會被優先處理。

短工作時間的深入探討

一個短的周工作時間對不同的人來說意義不同。我知道的一個在創業公司工作的程式設計師一週工作40到45小時。其他人工作時間都比她的長,但是那個時間是他/她個人的極限。我為自己爭取到了每週35小時的工作時間。

不管對於你來說那個最佳時間是多少,你都要明確表達你的效率極限然後堅守原則。告訴你的經理:“如果不是火燒眉毛,我一週只會工作40小時。”一旦你表明了你的工作時間上線,你需要堅持原則,在工作時間以外不回覆郵件,在週末不能同意多做任何一點工作。

然後你要證明自己很高產(效率高),並保證工作時間一心一意地工作。花幾個小時看喵星人視訊,是無法讓你保證在工作時間裡做好工作的。

當然對於一些公司這些都是天方夜譚。如果管理層很糟糕或者公司有加班文化,連40小時的正常工作時間都無法接受的話,你應該考慮跳槽。面試的時候儘量弄清楚公司文化以及管理手段。大家的工作時間一般很長或者較短?是不是時刻都是緊繃狀態,產品是不是都按時釋出?

如果你是很有經驗或技術過硬的程式設計師,你會在工時談判中佔據優勢。目前我有足夠的技能資本,所以在談判的時候我做得還不錯。不過我也是踏著 bug 和錯誤的「屍首」才走到今天。如果你想快速提高你的技能,你可以到 Software Clown 看看我以前犯過的錯誤,這樣你就不會重蹈覆轍。