effectiveEngineer

Effective Engineer - Focus on High-Leverage Activities

這篇是Effective Engineer - Focus on High-Leverage Activities章節的讀書筆記

本書的第一章第一節 講了作者在Quora負責mentoring跟on boarding program(就是幫助新進工程師快速上手的program) 作者認為這是個投資報酬率非常高的工作 因為之前資深工程師花在訓練新進工程師的時間 應該需要更好的運用 接下來會定義投資報酬率 也就是本書的靈魂(Leverage)

Leverage是衡量效率的尺

Alt text

其實這就是ROI(Return on Investment) 投資報酬率 Effective Engineer不是工作很久做了很多事 而是他們做事很有效 因為對於每個人來說 時間是最有限的資源

舉幾個例子 像剛剛提到的mentoring program 一個工程師一年工作大概1880-2820小時 只需要花資深工程師一年中的20小時 就可以有另外一個工程師多了1880-2820的生產價值 所以mentoring是個leverage非常高的工作

其他例子還有寫library或tool 都是一勞永逸的Task 或是學習debug的工具 或是review其他人的code 可以省去未來de production bug的時間

增加Leverage的三個方式

1.減少你完成某個活動的時間

2.增加這個活動的impact

3.轉換到高leverage的task

上面三點都是廢話 會看公式的人都懂 我們要轉換成另外三個問題

1.我要怎麼利用少一點的時間完成這個工作

2.我要怎麼增加這件事的impact

3.有沒有什麼高leverage的事值得我去做

身為工程師 評量我們表現的方式不外乎就是 上線多少feature 修多少bug 增加多少user 面試多少人 程式碼品質等等 但我們的daily job有許多沒什麼產值的事情 比如收發mail 或是沒用的meeting 你需要想辦法把你的daily task產值提高

舉個例子 假設你有一個1小時的meeting要review進度 你可以:

1.meeting時間砍半 變成半小時完成

2.準備議程跟列出會議目標 讓與會者開會前都看過

3.如果不一定要見面談 也可以用email update

第二個例子 如果你是Product engineer 你要開發一個新feature直接面對使用者 你可以:

1.自動化你的開發跟測試 這樣可以加速iterate

2.為你的tasks排優先順序 對於product launch越重要的越優先

3.跟客服聊天 瞭解客戶的pain point

第三個例子 如果你是performance engineer 在評估網站的bottleneck 如果網站效能低會影響開發 你可以:

1.學習高效率的分析工具 減少辨識出bottleneck的時間

2.測量每個網頁的效能和瀏覽頻率 越多人瀏覽而且越慢的 先開始修

3.應該在一開始就要跟product team合作 把performance當作重要的metric 而不是當作bug來修

增加產值 減少時間 就會增加leverage 變得更effective

應該把時間花在high leverage的事

作者在這段落舉了facebook招人的例子來做總結 因為facebook把招人當成high priority的事在做 所以才招來很多猛人 沒什麼重點的一個段落

之後的篇章會從心態開始介紹 然後給一些撇步跟實際建議 讓你的產值更高