Skip to main content

Command Palette

Search for a command to run...

如何有效地與主管進行 1:1 對話

Updated
•2 min read•View as Markdown
Z

Machine Learning Engineer, interest in MLOps, Recommendation System, Deep Learning, Large Language Model, Natural Language Processing, Distributed System, Kubernetes, Databases, Data Engineering and all the Engineering Best Practices.

Disclaimer

  1. 我開始認真思考 1:1 的契機是來自 vgod 的這篇文章,而本文內提到的許多可行方法也是由這篇文章延伸而來,並依我的實際情況做些改動。

  2. 我的主管以及我所在的組織文化都影響我實際執行這篇文章所提到的內容很多。因此如果換一間公司我可能就也不會採取這樣的行為方式了。

TLDR

  1. 我們應該主動規劃 1:1 的時候要討論什麼

  2. 寫文件分享給主管

  3. 不要報告工作進度

Intro

在軟體公司中,我們經常需要進行與主管的一對一會議。在我尚未明白一對一會議的意義之前,我一直認為這不需要事先準備,只是與主管閒聊一下,類似於小時候被老師叫到辦公室關心。直到我看了 vgod 所寫的《軟體工程師的修煉與成長 (5) — 1:1該談什麼才能讓職涯起飛?》,我才突然意識到我一直以來都在浪費一對一會議的時間。因此,在這篇文章中,我將分享我對一對一會議的實際看法以及我如何進行一對一會議。

What is 1:1

然而,在進一步探討之前,我想先談談一對一對於主管和下屬而言的重要性。我之前擔任過主管,也曾與其他主管交流過這個議題,而現在我回到了開發者的角色,因此我可以分享一些在這兩個角色之間的經驗。

對主管來說 1:1 是幫助他知道...

我通常遇過沒有準備的 1:1 通常以以下方式展開::

主管:「嗨,Z,你最近過得如何?」
我:「還不錯,我最近在進行xxx專案。」

主管:「那你最近有遇到什麼困擾嗎?」
...
主管:「你有什麼想學習的領域嗎?」
...
主管:「有什麼我可以幫助你的地方嗎?」

然而,當我成為主管後,我作為主管在沒有明確目的的 1:1 中我所關心的事情可以歸納為以下三點:

  1. 確保下屬沒有離開的意圖;

  2. 了解下屬的工作狀況和心情;

  3. 掌握是否有任何需要提前知道的危機。

我認為上述對話對於推動事情的進展其實沒有太大幫助,因為這些對話也可以在其他場合進行。此外,我參與的 1:1 中,超過百分之九十的時間我都無特別不滿意的事情可分享。

對員工來說 1:1 應該是...

我認為 1:1 對員工則有以下幾個目的:

  1. 確認主管對我的期望與要求

  2. 了解主管對我最近表現的評價

  3. 爭取發展機會

  4. 討論在我負責的職務範圍內難以解決的問題,或者可能需要上級主管參與的事項

確認主管對我的期望與要求

我認為了解主管對我的期待是很重要的,這裡的期待指的是以我的現職角色,在各個面向裡面主管期待我做到什麼事情。舉例來說,如果我是一名 junior level 的工程師,主管對我的期待可能會是:

  • 在開發方面,期望我能寫出乾淨的程式碼,並與資深工程師進行 Code Review

  • 在專案執行方面,期望我能制定可執行的任務,例如明確定義的 Key Result(如果我們公司使用 OKR 系統),並在 daily 會議中向團隊分享進度和可能的障礙。

我們必須理解的是,主管在評估下屬時通常會著重考慮各個方面是否符合期望,而不僅僅專注於單一方面的表現。所以如果今天有兩個 junior-level 的工程師

  • A 的 coding 能力超級強,熟知各種 design pattern 並且甚至能夠幫忙 review 大型系統的架構,但他的專案規劃一團糟,無法拆 subtask,且 daily 的時候大家也都不知道他在做什麼。

  • B 則剛好達成上述兩項期待,可以穩定的寫出不錯的 code,且在 daily 會議分享進度,讓團隊提出建議

如果我是主管的話,我可能會認為 B 的表現比 A 更好,或是我可能就會轉移對 A 的期望,嘗試找到一個可以發揮其長處並彌補短處短的角色。但是我們畢竟無法控制主管的想法,所以在 1:1 的時候我會試著了解主管在各個面向對我的期待是什麼,並進一步詢問在這樣的期望下,我目前的評價如何。

了解主管對我最近表現的評價

從上述的了解主管對我的期待延伸,接下來我會想要了解主管對我在這些方面的評價。雖然如果清楚知道期待在哪邊,在平時的工作中我們應該是可以自己判斷自己有沒有做到的,但事實上主管對每個 level 的期待可能不是能夠非常精確的定義的,例如寫出怎樣的 code 算是不錯就是一個模糊的敘述。此外,自我評價與他人的評價也可能存在差距,,而最常見的可能是因為冒牌者症候群,使我們覺得自己永遠達不到目標。例如你的 code 其實已經不錯了,對主管來說其實有滿足他的期待,但實際上我們往往覺得自己的 coding 能力還有改進的空間。

另外,在 1:1 的時候,除了當前 level 的評價以外,我試著問主管如果以下一個 level 來評斷我,那在各個方面哪些是我已經達標的,哪些則還有些落差。同時我也會試著問出這些落差具體體現在什麼方面,譬如我可能會問主管:「是不是在某個專案的時候,因為我沒有做到 xxx,而讓你覺得我在這部分還沒有達到嗎?」

在 1:1 的時候問下一個 level 的評價,一方面是讓主管知道我有想要晉升的想法,另一方面,藉由討論過去的表現,我們也實際上同時討論了如果未來有類似的機會我該如何處理,以及如果可能的話,主管也能夠留心幫我安排相關的機會。

爭取發展機會

有一些事情的達成條件需要特定的機會。例如,如果你希望晉升為 senior-level,你可能需要一個能夠證明你能夠帶領跨團隊專案的機會。同樣地,如果你希望成為 manager-level,你需要一個 mentoring 的機會來證明你有能力管理團隊。具體的條件可能因不同的公司和時空背景而有所不同,但共同的是這些機會可能並非永久存在,團隊不一定總是有新人可以讓你 mentor,也不一定總是有跨團隊專案的需求存在。因此,在 1:1 會議中,我們應該與主管討論可見的未來是否存在相關機會,以及是否有可能將這些機會交給我們。

這種討論可以幫助我們確定自己在職涯發展中的方向,並向主管表明我們對個人成長和晉升的渴望。同時,這也讓主管了解到我們對工作的投入和願意承擔更多責任的意願。

透過和主管的溝通,我們可以瞭解到目前的職位是否提供了相應的機會,或者是否有其他可能性可以探索。此外,我們還可以請求主管給予我們建議或指導,以便我們更好地準備和迎接未來的機會。

討論在我負責的職務範圍內難以解決的問題,或者可能需要上級主管參與的事項

有時在工作中會出現我們的職責範圍內無法解決的問題,尤其是那些可能需要上升到主管層級才能處理的事情,而這些事情也可以在 1:1 的時候討論。對我來說這樣的討論在 1:1 中發生的頻率較低,但在需要時是非常有用的。

這樣的問題通常發生在跨團隊合作,或是受到組織從上而下的影響。透過在 1:1 中與主管討論,我們可以共同探討解決這些問題的方法,或是將其 escalate 到主管層級來處理。但如果我們在日常的其他時間就能與主管討論這些事情,我其實認為並不需要等到 1:1 才進行討論。


Action Items

寫了這麼多,如果這整篇文章只能濃縮成一句話,我想說的其實是:

我們應該主動規劃 1:1 的時候要討論什麼

而接下來我將分享一些實際上我在規劃 1:1 的時候會做的事情

寫文件分享給主管

我隨時都會有一份私人的文件,只與我的主管分享。這份文件裡面記載了每一次我們 1:1 的時候討論的 summary(在 1:1 結束的時候整理),以及下一次 1:1 我打算討論什麼。我認為這份文件帶來了幾個好處:

  1. 在 1:1 當下其實沒辦法好好回想過去發生什麼。因此在事件發生的當下隨時有地方紀錄是重要的

  2. 主管可以在會議開始之前先大致看過文件內容,並好好考慮這些主題,這樣我們可以獲得更高品質的討論。

  3. 在每次的 1:1 留下紀錄,可以避免我們討論重複的內容,並且也讓我們清楚知道自己在每件事情上的進度如何

在 1:1 到來前一天,提醒主管先看看文件

在會議即將到來前我會提醒主管文件有更新,並且簡述我想討論的事情。這裡會這樣做的原因除了主管基本上不可能時時回來看文件有沒有更新以外,也因為有時候 1:1 其實是有不同的目的的,譬如平時的 regular 1:1 跟做 performance reveiw 結束後的 1:1 就不能一概而論,因此如果在進入會議之前可以先對齊這次 1:1 的目的也會很有幫助。

在一開始花點時間閒聊

這部分源自於 vgod 大大的文章,在 1:1 最一開始花五分鐘左右的時間閒聊可以幫助雙方建立信任。而我認為這點其實跟我跟主管的相熟程度很有關,如果已經合作很久的話我可能會選擇跳過這部分。

我可能會問的問題

我注意到在每次的1:1會議中,我幾乎總是會問到以下幾個問題:

  • 在 xxx 專案上,如果你是我,你會採取不同的作法嗎?那你會怎麼做?

  • 在過去一段時間,有哪件事情是你覺得我做得不錯/不夠好/不該花時間做的?

  • 在團隊中,你認為有哪些方面是我可以向某位成員學習的?

我相信這些問題對我的個人成長非常有幫助。因為主管通常是由很強的開發者晉升而來(至少我的情況是這樣 :P),因此「在 xxx 專案上,如果你是我,你會採取不同的作法嗎?那你會怎麼做?」就等於在幫助我覆盤我在過去這段時間做的決定。而在第二個問題「在過去一段時間,有哪件事情是你覺得我做得不錯/不夠好/不該花時間做的?」中我特別會在意不該做的部分,因為每個人的時間精力其實都是有限的,因此若有件事情其實是被認為我「不該花時間做」,那我就必須要好好想想做那件事情的原因。最後一個問題「團隊內有沒有誰的哪個面向,是你覺得我可以學習的?」則是因為以主管的面向他能從更高的角度看到整個團隊的成員在做什麼,並且該成員的某個行為是他欣賞的,因此這等於是更具體的回答了主管對我在某個面向的期待。

1:1 的時候不要做什麼

以下是我非常主觀的想法,我認為這些事情在 1:1 的時候儘量不要發生:

不要報告工作進度

工作進度在平常的 daily meeting 或是任務管理工具(e.g. jira/clickup)上面同步就夠了,1:1 用在彙報進度非常浪費,基本上也是我一開始所犯的錯。

避免過多閒聊

與主管或是任何同事建立信任都很重要,但完全都在閒聊對我來說也是在浪費 1:1 的機會。

不要講別人壞話

因為 1:1 是個隱私的空間,因此有些人可能將他視為一個討論別人壞話或是批評他人工作表現的好機會。但我覺得這首先是一個危險的行為,這可能會破壞你與其他同事之間的合作關係,同時被認為是一個喜歡抱怨的人我覺得是沒有好處的。

如果遇到工作上的困難情況,我覺得比較好的做法是嘗試針對問題而非人提出意見。例如,我可能會提出說某個專案執行的狀況有點卡,或是提出一些資源以及時間分配上的顧慮等等。老實說這點我也不確定該怎麼做比較好。

不要說謊

因為信任的累積是很珍貴的,因此無論如何我都希望不要在工作中說謊。如果碰到不能回答的問題,我目前認為最佳做法是告訴對方「我可能知道或不知道答案,但無論如何,我認為我不應該回答這個問題」。但實際上,作為主管和下屬,我還沒有遇到過無法回答的問題的情況。

反思

最後在 1:1 這件事情上我現在也有以下兩點反思:

這樣會不會太激進

我目前覺得還好,主要是我並不是每次 1:1 都會把上面提到的都做一遍,而通常 1:1 也可能會有不同的主題,因此在討論各種主題之間穿插上面的點子,在我看來是不會在激進的。另外這點我也經常在 1:1 與主管確認過,同時也因為一開頭有說的,我認為我所在的組織是鼓勵這樣的行為以及文化,因此我得以放心的這麼做。

為什麼不是主管要負責 1:1

身為主管的我可能會幫下屬分擔一些規劃 1:1 的責任,但如一開始所說主管在意的點可能跟下屬不同,同時我也相信我們應該儘量掌控自己能控制的事情。

結論

我認為身為下屬的我們應該主動管理 1:1 談什麼,並且分享了我認為對我有幫助的 1:1 的做法。我認為主動管理 1:1 提供了我一個良好的機會與主管分享我對於個人發展和職業目標的想法,確保 1:1 的時間被最有效地利用,並且確保與上級的溝通順暢,使其更有價值。

Acknowledge

  1. vgod 的這篇文章

  2. ChatGPT,結論以及文章內的許多段落都是 ChatGPT 幫助我潤稿而完成的

More from this blog

Hashnode Pro

這三天因為覺得自己會比較頻繁的寫作的關係,因此開始了 Hashnode Pro 的試用。這篇文章想紀錄試用 hashnode pro 的一些心得。 Pro (可能)會有更多曝光 這點是我從 hashnode 的 Feed 上觀察到的,似乎我的 personalized feed 上出現不少 hashnode pro 訂閱的作者。但也可能是倒因為果,因為有訂閱 pro 的人也可能比較認真的在寫文章。 title generation 在 Title 的旁邊有自動生成更好的標題的功能,這點我覺得滿...

May 29, 20231 min read

Rye: 另一個 Python 的套件管理工具

Rye 是 Armin Ronacher (Flask 的作者)在 2023 年 5 月發佈的一套 Python 套件管理工具。市面上已經有非常多 Python 套件管理工具,例如:Pipenv, Poetry。Armin Ronacher 本人並沒有,似乎也抗拒將 rey 與現存的工具做比較,然而他還是寫了個 issue(https://github.com/mitsuhiko/rye/discussions/6) 分享他為什麼想要開發 rye。 我自己試用 rye 一小段時間,並且應用在幾個...

May 25, 20231 min read

Continuously Descend

9 posts