[The Effective Engineer 筆記] Prioritize Regularly

Tzu-Chi Lin
5 min readJan 31, 2021

--

這是 Adopt the right mindset 下的第三章,也是這部分的最後一章,prioritize regularly,隨時對你要做的事情排序。如同前面提到的,時間是最寶貴、且有限的資源,我們要如何排序、先做high leverage 的事便是一件重要的事

把所有TODOs 記在一個方便讀寫的地方

要排序的第一步,便是知道所有要做的事。然而,人的大腦是用來處理資料、而不是用來儲存的,所以把所有的待辦事項記錄在一個地方就很重要。可以的話,最好在每個事項加上 leverage,或是加上所需時間和重要性(high, medium, low),這樣子可以讓排序更方便。話雖這麼說,但其實這是非常難的事情,要怎麼知道哪些事情有比較高的leverage 呢?作者在接下來的內容提供了一些建議

專注在可以直接產生價值的事情上

activity is not necessarily production

有很多事並不是會直接產生價值的,例如參加某些會議、回一些比較不重要的email。或許有些人會抱怨你為什麼不去參加會議、或是回email 回的很慢,假如這些事情不會 block 掉其他更有價值的事,只要你完成了更重要的事,這些小事沒做完也沒什麼關係。那什麼是更重要的事呢?例如說、做了哪些事讓產品可以 launch、或是獲得更多用戶、business metrics improved,這些都是更重要的事

再做完某個task 後,持續對剩下的事情排序,找出最有價值且花最少時間的事。一直持續練習這個動作,就會更容易找出下一個更值得做的事。記住,不要試著把所有事都做完(也不可能),而是只專注在最有價值的事

這邊另外一個重點是,要學著對一些比較不重要的事情說 no,這對於新人來說可能比較困難,我也在學習這件事

專注在重要但不緊急的事

這段有點老生常談,但是多了點見解,作者把每個task 根據重要性和緊急性分到四個象限

Partitioning of activities based on urgency and importance

先專注在第一象限,緊急且重要的事。譬如說某個deadline、或是系統掛掉要及時修復。接著應該要多花時間在第二象限,不緊急(通常沒有deadline)但是重要的事,這些事情是會提供長期價值的,例如學習新的技能。當你發現你很多事情都在第一象限,譬如太多pager duty alert 或是 high-priority bug,那可能代表你第二象限的事沒有做好。太多 page 可能代表你的 automated recovery procedures 沒有做好、high-priority bug 可能代表你的 test 不夠完整。這些都是重要但沒有 deadline 的事情,通常第一象限的root cause 都是第二象限來的,所以要多專注在第二象限的事情

另外,也可以在你的TODO list 裡面加上象限,譬如說這件事是在第二象限,便可以在前面加個 [2],可以讓排序更簡單

為你的 schedule 清出一段連續的時間

因為工程師需要一段時間進入所謂的zone (or flow),所以最好減少 context-switch。作者建議可以在你的calendar 加上一些 no meeting event or even fake meeting lol,可以的話,盡量把meeting 排在一天的早上、或是下午下班前,避免meeting 散落在各個時間。也可以安排一天當所謂的 no meeting day

不要一次做太多事

每個 project 的進度和context 都不一樣,當一次做很多project 跳來跳去的時候,很容易沒有效率,甚至更容易犯錯。專注在你能 handle 的數量,不要太貪心想全部都做完

用 if-else 的方式避免拖延

當沒有足夠動機去完成一件很難的事的時候,人們都會偏向拖延。作者建議用 if-else 的方式去暗示自己避免拖延。例如、if 三點前完成 meeting then 我就去解某個bug、if 吃完晚餐 then 去看個 Android development 的教學

另一個建議是,用 if-else 去填滿零碎的時間。例如、if 我下一個meeting 前還有 20 分鐘 then 我就做某個雜事,可以是回email 之類的。可以事先把雜事出分成 10 分鐘的雜事、20 分鐘的雜事,當你有零碎的時間便可以填上去

另一個我覺得 if-else 可以用在的地方是,用獎勵來增加動機。if 我今天做完某件事 then 我就可以去做一件我喜歡的事。例如、if 我今天寫了一篇 blog then 我就可以去看一部動畫。我發現這個方法也滿有用的,推薦給大家

把 Prioritize 當成習慣

剛開始練習 priortize 比較困難,需要花時間多練習和實驗,因為每個人習慣不一樣,priortize 的方式也會不同。可以用網路或app,或是可以用筆記本,都看個人習慣

作者是用一個叫 Asana 的軟體,創了一個 Current Priorities 的project,裡面放這一週想完成的事,在一週開始的時候把task 從 backlog 或從上週還沒完成的拉過去。在 Current Priorities 又分成 This Week, Today, Doing。每天早上把要完成的task 從 this week 拉到 today。並用了番茄鐘(25分鐘)的概念,在每個task 前面加上需要幾個蕃茄鐘,例如 [1] Code review

看完本章之後,我也試著用 Asana,目前體驗還不錯。我是用 Asana 加筆記本,把所有事情記在 Asana 上,並加上 priority 和時間,在每天剛開始的時候把當天要做的事寫在筆記本上,目前效果還不錯。市面上也有很多其他類似功能的軟體,大家可以多試試看哪個比較適合自己

本章小記

  1. 寫下 todo list
  2. 專注在有價值的事,學著對不重要的事說 No
  3. 專注在重要但不緊急的事
  4. 減少 context switch
  5. 用 if-then 的方式加強動機
  6. 把 prioritize 當成習慣

--

--