就 3 點,提高工作效率
要想提高工作效率,不論你看什麼書,看什麼文章,用什麼工具,只有下面這三點最重要:
動力
剖析自己,找到改善的切入點
付諸行動並且堅持
>> 目標驅動
有目標才能高效。
我們爬山,山頂就是目標,心懷山頂,在登頂之前,總是充滿希望,縱有溝溝坎坎,也會克服困難,努力前行。
作為一個有追求的程序員,心中應該不只有一座山,更應該有一條綿延不斷的山脈,千峰錯落,峰巒疊起,終成峻岭。設立目標,付諸行動,不斷攀登,是自我成就的不二法門。
放到日常工作中,就這麼三點,就能讓你與眾不同:
每周一問自己:這周幹什麼,定下這周的目標
每天早上問自己一個問題:今天幹什麼,定下今天的目標
每天下班前花十分鐘:今天完成了什麼、有什麼問題,記錄下來
其實這是我從敏捷開發每日站會的三個問題延伸出來的。我的觀點是,敏捷不只是做某一個項目時的模式和手段,而應當是一個有追求的程序員的貫穿始終的工作習慣。
>> 從現在開始改變
抱歉,沒有銀彈,只有不起眼的小小經驗談。
作為軟體開發工程師,在工作時需要高度集中注意力,動員所有神經來解決問題,最怕受到干擾。我正寫代碼寫得HIGH呢,項目經理蹦過來問我進度怎麼樣,質管發郵件過來說過程檢查不合格,測試MM說某個需求理解不了,有個無聊的網友在QQ發消息撩撥你晚上去幻影凶間,產品經理蹭到身邊說不好意思兄弟需求又要改了……要知道保持速度與節奏很重要啊,我正突擊呢你來這麼一下子,看起來是幾秒鐘的事兒,可對程序員來講,也許半天功夫就白費了,要想再找回斷掉的思路,花費的時間可是那幾秒鐘的幾十倍幾百倍。
看看下面這張圖:
「樹欲靜而風不止」。這是我們在開發過程中必須要面對的現實,各種各樣的干擾會讓我們的工作效率大打折扣。如果你有同感,往下看吧,包你不失望。
1)郵件的打擾
領導會要求你關注郵件,每隔多少分鐘檢查一下郵箱,最好安裝一個郵箱客戶端,設置一個自動檢查新郵件。我原來也要求過部門的同事,現在想想這不大靠譜。關鍵的一點是:真正重要的事兒,真正緊急的事兒,不走郵件!所以,儘管關注郵件是必要的、必須要的,還是要給它設置一個限度。照下面這麼做就好了:
每天早上掃一下郵件標題,把重要的、緊急的標記出來
每天中午查看郵件,匯總重要的事兒
2)即時通信工具的打擾
這年頭,人都忙著在網上社交了,很多精力和時間都貢獻給網路上的虛擬圈子和對象了,其實,我要說的是,玩的是熱鬧也是寂寞,別上癮為好。
看張圖片:
這是我某個時刻的QQ通知截圖,同時和十四個人聊天,有的人比我還多,同時聊三五十個,要是筆記本沒有靜音,「嘀嘀嘀嘀」之聲就像農村河畔夜晚的蛙鳴,此起彼伏連綿不絕,真夠讓人忙活的,你要是每聽到一聲「嘀嘀」都看一下子,那完了,就算你開著Qt Creator /Eclipse/VS/Android Studio之類的IDE,也沒時間切換過去敲代碼了。這場景,基本上就變成聊天為主開發為輔,看來淘寶小二的工作更適合你了。
電腦上有QQ,手機上有手Q、微信、陌陌等,也是一會嘀一下、震一下,也許我們每天要看手機100次以上,重度手機依賴者在300次以上,看微信、看微博、各種通知、看簡訊、接電話、看時間、看天氣、看養的寵物、把玩遊戲、看小說、看漫畫……尼瑪,智能手機太富有侵略性了。假如你從口袋裡掏出手機的次數遠遠大於別人給你打電話的次數,那你可能就存在過度關注的傾向,得注意了,阿猿,你又沒那麼多女盆友,不會錯過晚上的約會的,擔心個什麼勁兒呢。
下面幾招就可以讓你擺脫或降低即時通信工具和手機對工作的干擾:
QQ,留給中午休息時間吧,或者下班前;關掉QQ,或者關掉消息提醒、設置提醒周期為很長很長;總之你別來煩我,我想你時去看看你。
微信,關掉提示音吧,把那些個不咸不淡的群,都設置為消息免打擾。
微博,關掉提示吧。
手機,調整為震動或者靜音。
陌陌,辦公室都是熟人,幹掉它吧。
智能手機上各種應用的通知,都使用安全軟體禁止掉吧,或者設置通知的提醒模式,不要提醒
斷網,給手機斷網,3G/4G/WIFI統統不要打開,看哪個軟體還發通知
一句話:不要讓手機和社交軟體不停地通知你干擾你,你一個小時去查看一下狀態即可。
3)張弛有度
工作一陣子(譬如45分鐘、30分鐘)就休息一下,有張有弛,活動下筋骨、站起來走走、活動脖子、腰、手,轉轉眼球看看遠方,總之,一個人能集中注意力的時間長度是有限的,你要說你能連續高效工作四個小時,那我表示佩服。
為了能夠張弛有度,程序員還需要做一些工作任務上的調整,把編碼、設計、殺蟲等工作的粒度細分,最好一個小任務能在幾十分鐘內完成,這樣節奏就配合上了。
這方面有個著名的方法:番茄工作法。可以試試。
4) 提升開發效率的小貼士
程序員要寫代碼,這裡有一些小貼士可供參考,也許能提高開發效率:
自測,每完成一個小功能都自測一下,看看這個功能自身是否正常,集成一下,看看有沒有影響其他模塊。開發人員的自測非常重要,編碼期間頻繁地測試、集成,會大大節省送測後回歸的時間。
一個小功能完成後,提交到svn或者github之類的代碼託管平台上,免得宕機、停電、誤修改造成重複工作,對心情產生惡劣影響,這種影響甚至比外來干擾還要大、持久。
多與產品經理、需求人員溝通,完成一個功能就給他們看看,一方面是看是否是他們期待的,以便及時調整,另一方面是讓他們對進度有所了解,降低他們因未知產生的焦慮,同時也能降低他們干擾你的頻率。
多與測試人員溝通,完成一個功能集就可以Build一個版本給他們看看,玩玩兒,讓測試人員熟悉產品,建立對產品的直觀感受,也給他們時間寫用例。
多與項目經理溝通,完成一部分功能,就可以給他們看看,讓他們知道你在keep moving,也許他們也有一些想法,可以就此交流,免得什麼都弄完了有人對結果不滿意,要推倒重來,浪費時間。
多與團隊成員溝通,很多功能都是要相互協作的,讓他們知道你前進到哪裡了,和與你有工作銜接的同事約定聯調時間,相互發布進度。如果不能在預期時間內聯調,提前告知。
多和UI及美工溝通,做出能看的東西就讓他們看,看看是不是他們要的效果,免得到後面了返工浪費工作量。
>> 知易行難
如果你發現自己的工作效率有待提高,並且擬定了一系列的措施,那就執行吧,堅持執行。想再多,落不到行動上,都是白瞎。
執行了,還要想辦法度量效果。比如你覺得QQ影響你的開發效率,那就關掉它,堅持一周,看看有什麼變化?要想度量效果也很簡單,找一個時間跟蹤軟體,看看你每天花費在QQ聊天上的時間,花在開發工作上的時間,記錄下來。然後在關閉QQ的情況下,再記錄你花在開發上的時間。對比一下,在時間投入這個維度的結果就出來了。而工作成果這個維度,就看你自己如何度量了,比如通過工作量、完成的任務數等都可以。
總而言之,如果你覺得某個因素使你效率低下,那就制定策略,落實到行動上來,一定有效果。可惜的是有時我們明知那麼做會有改善,可就是懶得動彈啊。
推薦閱讀:
※提高全要素生產率,中國經濟的核心所在
※只需七點,提高你的節奏感!
※如何提高乒乓球水平
※淺析如何提高教學質量
※「世界提高抗菌藥物認識周」之如何正確合理使用抗菌藥物