staffEngineer

To lead, you have to follow

一個好的leader 應該要適時的follow

作者認為領導者應該有兩個重要的屬性

1.領導者應該充分的了解 how things ought to work 這樣領導者才可以清楚的分辨 “how things are” 跟 “how things ought to work”之間的差距 並且提出proactive的action去把兩者之間的gap給填補

2.領導者必須真的在乎那些gap 並試著去親自嘗試填補 gap

如果你只是看到gap而不親自填補 那你就只是個懶惰的夢想家 如果你不清楚gap就想一直做事情去填補gap 大家也許會認同你是個領導者 但你的impact就會很隨機 且沒有效率

把這兩點都做好 會讓你的職涯走得更長更遠 作者認識的 把這兩者都做好的人 通常都能很好的把自己從senior engineer轉換到Staff-plus的職缺

講完了入門 作者認為做到剛剛提到的兩點也不夠讓你走得太遠 隨著時間過去 作者慢慢地學到

You cannot be an effective long-term leader until you learn how to follow

作者發現好的leader會花更多的時間在follow than leading 當然要領導還是追隨不是只是二分法 而是偶爾當leader 偶爾當follower

作者再給出了幾個建議

1.清楚你自己的priority

不要每件事發生了都要參一腳 如果有些事你雖然不同意 但也影響不大 那就讓其他人去lead

試試這麼想 “現在我們做的這些事會不會在六個月內影響到我” 如果答案是否定的話 你就讓別人去領導 你follow就好

2.Support其他的leader

即使你不同意他們一開始的approach 但只要一個專案是由值得信任的人來lead 那基本上都會有好結果

如果一個領導者在領導的時候 你覺得問題很大 對這個專案沒有信心 那你要回頭想想 為什麼你對於你影響別人的能力沒有信心 想想你是不是個很差的feedback giver

3.讓你的feedback explicitly non-blocking

盡量不要讓你的feedback block到別人 這事情可以小到 在code review上留說”optional nit” 也可以是給別人feedback的時候 說只是share my perspective, not to necessarily change your approach

如果你也在為做到上述的事情而掙扎的話 作者同情你 因為作者也曾經同樣掙扎

當你有個足夠的世界觀去領導專案 你會集合周遭需要依賴你的人 並且忍受或忽略那些跟你想法不一樣的人 你會感覺好像你讓其他人失望了 但你想要往上爬的話 你必須要學會合併你的世界觀跟你周圍的人的世界觀

有時候為了讓專案加速進行 你必須要承受你世界觀中的一些想法被改變

你自己能夠獨立完成的事情 比起你創造許多其他領導者之後能夠完成的事情 實在差太多了 所以要成為一個好的領導者 有時候你必須要學習如何follow 也就是去鼓勵其他的領導者