軟體工程師的修煉與成長 (6) — 換團隊 x 2

vgod's blog
Mar 14, 2022
Photo by Ross Findon on Unsplash

換團隊

跟manager直球對決過後,他就開始積極的幫我找機會。這時團隊擴張的很快,一直有新人加入,我很快就有機會可以帶一個新加入的L3一起做個新的專案。

這專案進行的很順利,比起實作,我放了更多心力在寫設計文件,把系統切割成小任務讓別人實作,管理進度和任務的優先權。正當我覺得我終於開始有更多機會在這個團隊展現領導能力時,公司這時突然決定要開發一個新產品,並從我在的團隊裡挑了幾個人出去組成一個新團隊來開發。因為我熟悉的區域剛好適合這個新團隊,我就被選到了。

被強迫換團隊這件事讓我挺不高興的。一來是沒人先問過我的意見,我不喜歡被決定我應該要做什麼。二來是我才剛覺得已經在這個團隊站穩了腳步,可以有效提高自己的「爆炸半徑」。這時讓我換到一個新的團隊,我就得重頭開始了。

這次我是認真想離開了,於是我一到新的團隊就直接跟新的manager S直球對決,表達我的不滿。S很快安撫我,保證會讓我有足夠大的scope和機會能做L5的工作,對於我的職涯目標不會有影響。他甚至還讓我做Tech Lead (TL),負責這個新產品的基礎建設工作。

這次談完後我雖然還是有點不爽,但至少決定先留下來等幾個月,看下一個半年績效考核結果再決定。

Tech Lead

我在這個新產品團隊,如願地把我的重心移往下層,專注在產品背後的基礎建設。這也是我第一次扮演TL這個角色,雖說這個只是專案範圍內的TL,但也是個不錯的機會讓我有機會展現一直缺少的領導能力。

在大多數的科技公司中,TL只是一個role,不是一個title或等級。意思就是說,當TL不是升職也當然不會有加薪,只是多了一些額外的責任和機會。TL的scope可大可小,最小的就是專案層級,只負責專案內的技術方向和細節,可以決定要怎麼設計系統、採用什麼技術、還有整體需要的時間。因為scope是在專案內,所以這個TL的生命週期也是到專案結束而已。這個層級的TL大多是L5的資深工程師,除了自己也要參與實作外,另外也還要管理專案本身的進度,和其他專案參與者溝通和合作,等於是身兼專案經理 (project manager)的工作。

如果是L6的工程師(也就是一般的staff engineer等級)做TL,大概就是負責一個團隊(5–10人)的技術方面的方向、決策、還有願景。在團隊層級,產品團隊大多會有專屬的產品經理 (product manager)來管產品方面的願景和優先權,而底層的基礎建設團隊很常就是TL或是EM (engineering manager) 來管進度和日常的流程(主持每週會議之類的事情)。

團隊層級的TL通常也是出面跟其他團隊的TL協調和溝通的人,這樣才能確保大家的方向和時程都有一致。這時因為團隊通常會有多個專案同時進行,TL就不會管太多專案的實作細節了(可以交給專案的TL或是工程師決定),甚至也不一定…

--

--