The Effective Engineer 卓有成效的工程師 — Ch. 1 聚焦高槓桿率工作

Tony Yeh
Oct 31, 2024

--

複利效應

我們都清楚複利效應:如果你把錢存在日利率4%的帳戶,跟存在日利率5%的帳戶,一年後的結果會相差多少?

答案是:日息5%會比4%在一年後多出32.8倍

利用這個觀念,我們必須將我們最寶貴的資產 == 時間,投資在槓桿率最高的項目上面。

學習跟投資很像,也會產生複利效應:學習符合指數增長曲線,我們的基礎知識越深厚,就能更快學習更多知識。越早對學習進行優化,就有越長的時間產生複利。即使每天只有微小的變化,長遠來看也會造成巨大的差異。

如果我們朝九晚五的工作,都在做著一成不變的項目,代表著你沒有成長,沒有機會從工作中學習,公司雖然給你優渥的薪水,但你最終也是成為安於現狀的廢人。所以我們應該時刻想著,我今天應該學習什麼,來讓自己提高1%的槓桿率,這就會讓你跟其他人在長遠的時間維度上產上巨大的差異。

那什麼樣是適合快速學習的職場呢?

  1. 快速增長:在快速發展的團隊或公司中,需要解決的問題往往超過可用的資源,這就提供了產生巨大影響和增加責任的機會。你也可以觀察團隊中最優秀的成員成長為領導者的速度有多快?
  2. 開放:一個成長中的組織不會一開始就找到最有成效的產品路徑、工程設計或組織流程。但如果能從過去的錯誤中學習與調整,那麼他的成功概率會越高。要追求一種充滿好奇心的組織文化,鼓勵每個人提出問題,再結合一種開放的文化,讓人們積極反饋和分享資訊。
  3. 節奏:冗長的發佈週期、複雜的產品發佈審核流程和優柔寡斷的主管都會拖慢迭代速度;而自動化工具、輕量級審批流程以及勇於實驗的意願則會加快項目進展。比起大企業,新創公司的流程較少,其激進的冒險精神跟時常加班都有助於提高學習效率 — 但要注意別讓自己身心俱疲。
  4. 人員:與那些比自己更聰明、更有才華、更有創造力的一起工作,這意味著我們身邊有很多潛在的老師,就職業成長和幸福感而言,和誰一起工作比實際做什麼工作更為重要。
  5. 自治:選擇工作內容和工作方式的自由驅動著我們的學習能力。在規模較小的公司,員工對產品功能和自身職責擁有更多的自主權。你不一定只能做主管指派給你的工作,只要你感知到自己能做什麼能讓產品更好,節省其他人的時間,那就去做。

在更換工作或團隊時,要始終思考這些問題,看看這份工作是否適合你,以及能否為你提供了充足的學習機會。

將時間投到培養新技能的任務上

借鑑Google的20%自主時間,我們應該抽出20%的時間對自己的成長投資。每天抽出1–2小時要比每週抽出一整天來得更有效,因為這樣可以養成每天學習新技能的習慣。

這20%的時間應該用來做什麼?可以試著在相鄰學科 (adjacent disciplines) 中獲得提升。相鄰學科指的是與我們在工作中的核心職責相關的技能。如果你是一名產品工程師,相鄰學科可能包括產品管理、用戶研究。如果你是一名增長工程師,相鄰學科可能包括數據科學、市場營銷或行為心理學。

以下10條建議都可以幫助你充分利用工作中的資源:

  1. 學習公司裡最優秀的工程師編寫的核心代碼。問問自己能否寫出類似的代碼,以及能從中學到哪些精髓。你也可以對公司正在使用、設計良好的開源代碼採用同樣的學習方式
  2. 編寫更多的代碼。如果編程是你的弱項,那就把時間從會議跟產品設計等工作中抽出來,花更多時間在構建與編寫代碼上。人們從記憶中提取知識時,花費的精力越多,學會並記住這些知識的效果就越好。寫代碼比看來得累,因此編程練習對於提高編程技能來說是一項高槓桿率的工作。
  3. 研讀內部可獲取的任何技術和學習資料
  4. 掌握你所使用的編程語言。讀一兩本關於你所使用的編程語言的優秀著作,重點在於牢固掌握該語言的先進特性,並熟悉其設計原則。
  5. 請公司裡最嚴格的人審核你的代碼。
  6. 參加專業技能培訓課程。現在線上課程相當容易取得,所以你可以輕鬆在家學習頂尖大學的教課內容,或是最先進的技術。
  7. 主動參與感興趣項目的設計討論,不要被動等待。直接詢問負責人是否介意你在會議中旁聽,不要害羞。
  8. 在不同類型的項目上工作。如果你發現自己總是在用相同的方法完成相似的工作,那麼你就很難掌握新的技能。交叉參與不同類型的項目,可以讓你了解不同項目的特性與相同之處。另外科學研究也表明,交叉練習不同技能比重複練習單一技能更有效。
  9. 確保團隊中有比你更資深的,可以請教的工程師。這將有助於提高你剩餘80%時間內的學習速率
  10. 勇於學習自己不熟悉的代碼。軟件工程師的成功與 “敢於學習不熟悉的代碼” 高度相關。在鑽研未知事物的實踐中,你可以提升編程技能。

持續學習

利用20%的時間創造學習機會,你的技能和工作效率就會穩步提高。另外對積極心理學的研究表明:

持續的學習與幸福感的提升密不可分

以下9個起點可以幫助你養成在工作之外學習的習慣:

  1. 學習新的編程語言及開發框架。如果不持續學習,你的技能可能會變得陳舊與過時,此外,新技能可以拓展思維,教你以不同的方式思考。
  2. 學習市場需求旺盛的技能。如果不確定該學什麼技能,可以看看你感興趣的工作,它們需要什麼樣的技術棧。
  3. 閱讀。書籍為我們提供了一種存別人的教訓和錯誤中學習的方法:你可以重新應用這些知識,而不必從頭開始,這是一項高槓桿率的投資。
  4. 加入討論小組。參加一些例行的讀書小組或興趣團體。
  5. 參加講座、行業會議和線下聚會。遇到的人越多,就越有可能遇到對他們的生活有積極影響的人。
  6. 關注那些傳授技能的博客
  7. 為教學而寫作。通過寫作向他人傳授知識與技能時,我們會對已經熟悉的內容產生更深刻的理解,並發現之前沒有完全理解的細節。寫作也為我們提供對所學知識進行反思與整理的機會,有利於產生個人洞見。
  8. 拓展興趣項目。即使那些跟軟體工程無關的興趣項目也會為我們提供進一步磨練技能的機會,用新的方式將現有的、截然不同的想法結合起來時,創造力就產生了。
  9. 培養業餘愛好。將漫無目的上網追劇的消極時間替換成培養業餘愛好的積極時間。請把時間花在健康的愛好上,讓這種愛好成為激發你學習和成長的動力。

總結

  1. 掌控你自己的經歷。關注在你影響範圍內的變化,而不是浪費精力去指責你無法控制的部分
  2. 不要降低你的學習速率。優化學習方式,特別是在你的職業生涯早期。
  3. 尋找能夠讓你不斷成長的工作環境
  4. 利用工作中的機會來提高你的技能
  5. 尋找工作之外的學習機會。向自己挑戰,爭取每天進步1%。並不是所有學習都跟軟體工程有關,但從長遠來看,成為更快樂、更好的學習者將幫助你成為更有成效的工程師

--

--

Tony Yeh
Tony Yeh

No responses yet