Tech Lead跟我想的不一樣,但跟我在做的一樣
我本來以為「獨立貢獻者(Individual Contributor)」和「技術負責人(Tech Lead)」是同一回事,結果在閱讀了一些資料後才發現,原來自己不是「技術經理人(Tech Manager)」,其實是「技術負責人(Tech Lead)」,而且還是做得不是很好的那個…😅 儘管如此,我還是覺得自己有必要好好的把Tech Lead這個角色摸清楚點,以後才能順利的培養下一個真正的Tech Lead。
Tech Lead在技術上的定義,與其說是一個「職位」,還不如說這是一個「培訓課程」。
只想跟電腦打交道,推崇自由及關注程式精細度的工程師,並不適合成為Tech Lead(連IC可能都有點吃力)。他們必須是工程師,而且需要有些實務經驗,但這些能力是為了成就這個角色最重要的任務:幫助這個團隊發揮更大的影響力和戰力。Tech Lead可能需要是系統架構師或商業分析師,需要瞭解怎麼挖堀出客戶真正的痛點,回頭來規劃哪些規格是重點功能,哪些是不必要花過多時間實作的部分。而且在開發的過程,也要能擔任專案管理師,要能將一個滿足用戶需求的「功能」,拆解成一塊一塊能讓開發團隊各個擊破的目標。要讓團隊可以”平行處理”的最優執行效率運作,最後還要能拼裝的起來。最後還得充當一點點「張老師」的角色,跟團員一對一面談,幫忙釐清一些職涯方向,或是自身的經驗分享。在「釐清目標 → 指引方向 → 推行前進」這個流程中,Tech Lead都扮演著重要的決策者和執行者雙重的角色。不僅要影響同組的伙伴,還要想辦法影響直屬的主管。最重要的是,要忍住別成為展現自己技術實作能力的老師。技術能力是規劃,決策,甚至是溝通的基底,是做這些事情能「有所本」的理由,若自己變成實作的角色,很容易就陷入「見樹不見林」的視野限制。永遠要記得,「團隊需要什麼」,「客戶想要什麼」永遠比「自己想玩什麼」還重要。
Tech Lead的職務中,可能就屬「規劃」這件事是最困難,最苦的差事吧。
在實作領域,我們很清楚一個「處理(process)」怎麼拆成一步步完成。可一放大到「功能(feature)」的時候,就不是很確定裡面有多少事情要處理,而且我們也不會知道實作的人會遇到什麼bug。一但碰上要瞭解怎麼滿足用戶的「需求(requirements)」時,那基本上就跟看偵探小說差不多。Tech Lead要有耐心,也要有決心,去抽絲剝繭出一個個能排上工項追蹤系統(Issue Tracking System)的項目。
這個過程充滿了太多不確定性,滿是無法掌握的變數,因此常會導入敏捷(Agile)開發法。但不能誤解的是,敏捷開發法是「開發」的一種規劃方法,使其趨向用戶真正的需求。Tech Lead在「規劃」上需要的深度觀察和分析,都是需要自己認真投入心力和時間思考的。「規劃」的價值並不是輸出完美的計劃,不是要求有預測未來的能力,真正的目標就是要Tech Lead在整個專案歷程都能不斷的「思考」,這個行為本身才是規劃的目標。
誰是適合成為Tech Lead的人?最重要的是搞清楚IC和Tech Lead的扮演的角色及服務的對象差異。
回想起當時,經過了10幾年的專案研發歷程,也經過了幾個世代的遊戲製程技術,雖不敢說自己對技術是駕輕就熟,但確實是有一定程度洞悉能力的。也因為如此,我確定在研發工作上,我確實無法在再感到有夠強的挑戰性。不是說技術的本身沒有,而是我想要讓有更好的槓桿來發揮影響力。當然,團隊和組織裡都是「人」,那就是我該扮演的角色,因此我踏上了Tech Lead的道路。
如果要走IC這條路的話,最重要的是要很習慣「個人」這個角色。組織或團隊最在意的是你的「貢獻」,而不一定是你的意見。因此就算你知道有什麼技術很讚,有什麼方法很值得導入,你仍然很難避免經過「推銷」這個過程,要向大家展示運作的流程和細節,解釋優缺點,然後”期待”這些keyman嘗試去說服主管,才有機會可以導入在實務上使用。很多時候,人或是組織都是傾向「穩定優先」的,對新的技術不會有足夠的動力去研究,所以大多數的時間,你真的都會是一個人,會有點孤獨,但也很自由。
如果真的要走上Tech Lead這條路的話,就要有心理準備,「推銷」將會是你的主要工作項目之一。要推銷的項目可能是規劃,流程,決策,甚至是自己和主管。對內是推銷這些,而對外是要推銷自己團隊的能力,產品,甚至是做事的文化。抽象來看是「推銷」,但具象化後來看,其實就是許多的規劃,修正及執行。當然,會有許多會需要召開及討論,會有許多和技術無關的細節需要記錄,然後透過不斷的重組及思考,找出或修正此時該前進的方向。然後會再需要吸收或瞭解更多執行時的細節,才能在真正要執行的時候,成為背後的那隻「推手」,Make Things Happened.
Tech Lead這個詞容易讓人誤解的是「Tech」,因為真正的重點是「Lead」。
帶領技術成員的一個很大的困難是,要讓你的領導有”技術感”,讓成員能放心的把自己該做什麼,該往哪裡前進,該培養什麼文化這些煩心事交給你。你的決策和規劃不但要有所本,還要能有足夠的細節來自圓其說。你會需要一些表達演說的能力需求,需要有寫作文案的需求,甚至有一些應用心理學的需求,有這些「技術」,才能讓你的領導更具說服力。