同樣的坑,為什麼每半年都要再踩一次?

有些工作上的問題很奇怪。你第一次遇到的時候,大家忙得要死,開會、找原因、問人、翻紀錄、找廠商、改設定,最後終於解掉。當下每個人都會有一種感覺:

「這次真的學到了,下次一定不會再發生。」

結果半年後,差不多的問題又出現,然後所有人又開始:

「這個以前是不是有遇過?」

「我記得好像有。」

「是不是某次上線有發生?」

「那時候是誰處理的?」

「以前好像有一份文件……」

最後還是重新調查一次。

這種時候我常常會想:

我們到底是真的學到了,還是只是當下把事情解掉了?


問題被解決,不代表經驗有被留下

這兩件事情其實差很多,一個 Bug 修好,代表問題解決了;一個版本順利上線,代表這次專案完成了;一個客戶抱怨被處理,代表事件告一段落。

但這些事情結束之後,真正有沒有留下:

  • 為什麼會發生

  • 當時怎麼判斷

  • 哪一條路試過沒用

  • 最後怎麼解決

  • 哪個地方最容易漏

  • 下次應該提前做什麼

這就不一定了。

大部分時候,我們留下的是「結果」,卻沒有留下「經驗」。


系統裡常常只剩下最後一個狀態

例如一張 Bug 最後會變成:Closed

一張 Task 最後會變成:Done

一個 Release 最後會變成:Released

這些狀態都沒有錯。

但它們幾乎沒有告訴下一個人:

「這件事情為什麼值得注意?」

假設半年後又有一個類似的第三方 API 專案。

你搜尋到以前的 Task。

上面寫:串接 Vendor A API

狀態:Done

你還是很難知道:

這個專案其實曾經因為正式環境 whitelist 晚了兩天,差點延期、QA 當初還漏測 timeout、Production YAML 也曾經少改一個欄位。

這些才是真正對下一次有幫助的東西。

可是通常,它們都留在人的腦袋裡。


我們很常把「經驗」誤會成「文件」

這也是一個很常見的情況。

有人會說:「我們有文件啊。」

確實有,SOP 有、需求文件有、技術文件有、Release note 也有,但文件不一定等於經驗。

文件比較像是在描述:「正常情況應該怎麼做。」

經驗則比較像:「實際做的時候,哪裡最容易出問題。」

例如 SOP 可能寫:

  1. 確認正式環境設定

  2. 確認 API credential

  3. 確認 callback URL

  4. 執行 QA

看起來都很合理,但真正的經驗可能是:

        Vendor A 的 Production credential 通常比 QA 晚提供,至少要提前三天追。

或者:

        這個遊戲商文件裡寫的 timeout 值和正式環境實際不同。

又或者:

        上次不是 API 本身有問題,而是代理層多了一個 cache。

這些才是團隊真正花時間換來的東西。


可惜的是,這些東西最容易消失

因為它們通常不是正式欄位,它可能出現在:

  • 某個 Slack thread

  • LINE 群裡的一段對話

  • 某個人的私人筆記

  • 會議最後一句話

  • Bug 裡的一則 comment

  • PM 腦袋裡

  • RD 的記憶裡

事情剛發生時,大家都記得。一個月後,只剩部分人記得,半年後,就變成:

「我記得以前好像有發生過。」

再過一年,如果當初的人已經不在團隊裡,這件事情可能就完全消失。


團隊真正流失的,很多時候不是人,而是人的判斷

我們常常會說:「某某很資深。」

資深的人厲害在哪裡?

很多時候不是因為他記得所有文件。

而是他看到一個狀況時,會說:

        「這個你先不要急著做,我覺得可能不是這裡。」

或者:

        「這家廠商你最好提早問正式環境。」

又或者:

        「這種 Bug 如果只在 iOS Safari 出現,先看 Cookie。」

這些判斷看起來很快。

但背後其實是很多次踩坑累積出來的,所以一個資深同事離開團隊時,真正帶走的往往不是文件,而是:

很多沒有被寫下來的判斷方式。


新人真正缺的,也不是更多 SOP

新人進來,大家通常會丟很多東西給他,文件、SOP、流程、系統帳號、歷史紀錄,這些當然都需要,但新人最常卡住的不是:「流程怎麼走?」

而是:

「什麼情況要特別小心?」

「這個供應商是不是比較麻煩?」

「這種問題通常要先找誰?」

「這個看起來很急,實際上重要嗎?」

「這個流程哪一步最容易漏?」

這些內容,很少會完整出現在正式文件裡。

它們通常叫做:經驗。


我後來開始覺得,每一個「事件」都可能是一筆資產

這也是我做 PMORY 時,慢慢改變的一個想法。

以前我會把 Task、Bug、Release 當成工作紀錄,做完就結束。

後來我開始覺得:

每一件事情其實都可能是未來的教材。

例如:

一個 Bug,不只是 Bug,它可能告訴我們:

        某種裝置在某個條件下特別容易失敗。

一個 Release Delay,不只是延期,它可能告訴我們:

        某類型外部依賴平均需要比原本預估多三天。

一個需求被退回,不只是返工,它可能告訴我們:

    這類需求如果一開始沒有先確認營運規則,後面很容易重做。

所以我會很喜歡一句話:

事件是一次性的,但經驗可以重複使用。


但也不是什麼東西都要進知識庫

這一點我反而很保守。

如果什麼都存,什麼都叫經驗,最後一定會變成另一個垃圾場。

例如:

        「今天 PM 說晚點再看。」

這不是經驗。

        「RD 說這個先改一下。」

也不是。

真正值得留下的,應該是那些:

未來遇到類似情況時,會幫助我們做出更好判斷的內容。

例如:

  • 為什麼失敗

  • 怎麼修正

  • 哪個方法有效

  • 哪個方法沒效

  • 哪裡容易漏

  • 有什麼前兆

  • 下次應該提前做什麼

這些才值得沉澱。


所以我會希望「經驗」是事件之後的一個小動作

不是要大家每次結案都寫一篇三千字心得,那一定不會有人做。

而是像這樣:

某個 Bug 關閉。

系統問:

這次有值得留下的經驗嗎?

你可能只寫三行:

原因:
Production whitelist 與 QA 不一致

影響:
正式上線延後半天

下次:
Release 前一天再次確認正式環境 whitelist

就夠了。

或者一個 Release 做完,PM 補一句:

        這次 QA 太晚介入,下次這種類型至少提前三天送測。

這些小小的紀錄,長期其實非常有價值。


我覺得真正重要的不是「有沒有寫 Retro」

很多團隊也會做 Retro。

這很好,但 Retro 有一個常見問題:

當下講得很好、白板上寫得很好、最後大家拍張照,然後下一個專案開始。半年後誰還記得那張照片?

所以 Retro 真正重要的不是:

「我們有沒有開這場會。」

而是:

這次學到的東西,下一次有沒有真的被用到。

如果沒有,那 Retro 很可能只完成了反省,沒有完成學習。


這就是為什麼我後來很在意 Memory

我做 PMORY 的時候,真正開始覺得有意思的,不是 Task 越做越多。

而是:

如果這些 Task、Bug、Release、SOP、文件,最後都可以慢慢累積出一個團隊自己的 Memory,會發生什麼?

假設你下一次新增:

        串接第三方 Payment API

系統不是只看到一張新的 Task。

而是可以回頭找到:

  • 以前做過的類似 Task

  • 當時發生過哪些 Bug

  • 哪一個 Release 曾延期

  • 哪份 SOP 曾經補過

  • 哪一筆經驗提過 whitelist

  • 哪個供應商曾經出過相同問題

然後提醒你:

這類工作過去曾經在正式環境設定上出現問題,建議這次提前確認。

這時候,我才會覺得 AI 真的開始有點像「經驗傳承」。

而不是一個比較會說話的搜尋框。


AI 真正需要的,其實不是更多 Prompt

很多人談 AI,會一直研究 Prompt。

Prompt 當然重要。

但如果 AI 根本不知道你們團隊以前發生過什麼,再漂亮的 Prompt 也只是請它用一般常識回答。

例如你問:

        這次上線有什麼風險?

沒有歷史資料的 AI,只能回答:

  • 記得測試

  • 記得備份

  • 記得 rollback

  • 記得確認設定

這些都沒有錯,但也很普通,真正有用的是:

你們團隊過去五次類似 Release,有三次都在 Production config 出問題。

這才是團隊自己的智慧。


所以「AI 越用越聰明」之前,要先做到「團隊越做越有記憶」

我覺得這個順序很重要。

不是:

先買 AI
↓
AI 自己變聰明

而是:

事情發生
↓
留下結果
↓
整理經驗
↓
累積 Memory
↓
下次 AI 才有東西可以參考

如果前面這幾步沒有做,AI 就沒有真正的養分。


這件事情長期最有價值的地方,其實是「人可以換,但經驗不一定要歸零」

團隊一定會有人來,也會有人走,PM 會換、RD 會換、QA 會換、供應商也會換。

如果所有經驗都綁在人身上,那每次人員變動,團隊都要重新付一次學費。

但如果重要經驗有被留下,新人接手時就不是:

        「從零開始。」

而是:

        「從前人的經驗開始。」

這兩者差非常多。


最後

我現在越來越覺得,專案管理真正值得留下的,不只是:

做了什麼。

更重要的是:

做完之後,我們知道了什麼。

Task 可以完成。

Bug 可以關閉。

Release 可以上線。

SOP 可以勾完。

但如果事情結束後,所有判斷、踩坑、修正方式也跟著消失,那下一次遇到類似問題,我們還是得重新來一次。

所以我覺得一個團隊真正變成熟的指標,不一定是:

「做得越來越快。」

有時候反而是:

同樣的錯誤,越來越少需要重學。

這也是我開始做 PMORY 之後,很想留下來的一件事情:

不是讓系統只記得工作做完了。

而是讓它慢慢記得:

我們是怎麼把工作做好的。


下一篇,我想接著聊:

AI 專案管理,真的不是多一個 Chatbot 就叫 AI。

https://pmory.com/




留言