工程與產品之間的資料孤島
PM 與工程師用不同工具、不同語言、不同節奏。這些孤島怎麼形成,又該怎麼真正解掉。
By Ellis Keane · 2026-03-16
不知從什麼時候開始,「產品與工程對齊」變成了一個職稱,而不是一群能力很強的人一起工作時自然就會發生的事。公司現在會特地聘一個人,唯一的工作就是確保兩群聰明的人 – 他們在同一個 Slack workspace、開同樣的 standup、理論上朝同一個目標前進 – 真的能理解對方在做什麼。讓這一切成為必要的工程與產品之間的資料孤島,不是人的問題,而是工具問題。
PM 和工程師的溝通已經夠多了。真正的問題是他們在完全不同的系統裡工作,而系統之間形成的孤島是結構性的 – 從現代團隊選用工具的架構就已經寫死。再怎麼說「我們多對齊一點」,也解不了工具本身彼此互不感知的問題。 The result is a gap in cross-tool project visibility that no amount of extra syncs can close.
兩個平行宇宙
這段我直接用我們打造 Sugarbug 的實戰經驗來講,因為我們每天都在經歷,而且具體細節比抽象版本有用得多。
PM 這一側(我們團隊主要是我)活在 Notion。規格寫在那裡、優先順序在那裡追、客戶對話記在那裡、功能需求也在每週持續增長的清單裡歸類。Notion 是「為什麼」存在的地方 – 為什麼要做這個、客戶到底說了什麼、某個決策背後的策略脈絡是什麼。它很雜、很大,而且大部分關鍵思考在第一行程式碼出現前就發生在這裡。
同時,我們工程師活在 Linear 和 GitHub。Linear 裡有任務、sprint 週期、相依鏈和阻塞 issue。GitHub 有程式碼、pull request,以及大家(希望是建設性地)針對實作細節進行辯論的 review thread。這裡是「怎麼做」和「什麼時候上線」的世界。
兩邊都正確、都必要,但彼此完全斷開。需求開始過時、重工開始累積,都是在這個落差裡發生的。
工程與產品的資料孤島到底怎麼形成的
很容易以為這是某個人的刻意決策,故意把資訊分開。實際上,孤島通常是由一連串完全合理、沒有人想造成傷害的行為慢慢堆出來的。
PM 在 Notion 寫了規格,在 Slack 工程頻道貼了連結,認為交接完成。工程師讀完規格,拆成三張 Linear issue,開始開發。到這裡都很順。
但接著規格變了 – 客戶對話改變了優先順序,或是商業脈絡演進了。PM 更新 Notion 文件,在 Slack 補一則變更通知。正在深度寫程式的工程師幾個小時後才看到訊息。那時候他已經照舊規格做完三個功能裡的兩個,而 Linear 裡的第三張 issue 還掛著已經不存在的需求。
這裡沒有人粗心。沒有人「溝通不良」。資訊住在一個系統,工作發生在另一個系統,中間的連接紐帶只是一則 Slack 訊息,而它在對的人看到之前就被其他 thread 淹沒了。
這件事會反覆發生 – 在每份規格、每個 sprint、每一季 – 然後漂移持續疊加。產品以為正在發生的事和工程實際在做的事之間的落差,隨著每一次靠「人要剛好在正確時間看到訊息」的交接,就再拉大一點。
為什麼「加強溝通」解決不了
我參加過不少 retro,最後 action item 是「更主動同步變更」。坦白說(帶著善意地講),這就是組織層面的「你只要更有條理就好」。聽起來可以執行,Confluence 頁面看起來也很有產出,但對造成問題的系統本身毫無改變。我們同一組 retro action item 已經跑過三輪了 – 我還特地去確認過。
為什麼加強溝通解不了工程與產品的資料孤島?因為溝通本來就在發生 – 資料存在、決策也有被做出和記錄。只是記錄在彼此互不感知的工具裡。
Notion 不知道一份規格已經被拆成三張 Linear issue。Linear 不知道某張 issue 背後的需求在兩小時前於 Notion 被改過。GitHub 完全不知道正在被 review 的 PR,實作的是一個剛在 PM Notion board 被降權重的功能。每個工具都照設計正常運作 – 它們只是一開始就不是為了彼此協作而設計。
「每週一早上還得花時間確認你付費使用的工具有沒有在週末悄悄偏離現實,這件事裡有某種黑色幽默。」 – Ellis Keane
所以實際發生的是:規格一改,PM 就手動把 Notion 的變更抄到 Linear;工程師在 Slack 問 PM「這還是目前的計畫嗎?」;tech lead 週一早上把不同 board 拉出來比對看有沒有漂移。我們親眼看著自己每週燒掉好幾小時,在做本質上就是手動資料同步,而這些工具理論上本該彼此了解。
系統級修正到底長什麼樣
你看到兩個工具中間有落差,直覺是搭一座橋 – Zapier 自動化、webhook、同步腳本。對簡單且可預期的流程(例如 Linear issue 移到「Done」時同步更新 Notion 狀態),這樣很夠用。
但工程與產品之間的資料孤島牽涉的是脈絡,不只是狀態。PM 不只是改了一個 status 欄位,而是重寫了規格裡的一段內容,讓三張 Linear issue 中有兩張的「done 定義」都變了。單純的狀態 webhook 會漏掉需求層級的變更,除非你再疊上 diff 邏輯和語意對映,而多數團隊最後不會真的做完那些東西。
你真正需要的是能理解跨工具資料關係的系統 – 不只知道「這頁 Notion 連到這張 Linear issue」,而是知道「規格這一段在描述這張 issue 的需求,而那一段剛被改過」。目標是自動把規格變更對映到受影響的 issue,而不是靠人注意到再傳播。
這就是同步層和知識圖譜的差異。同步層是在工具間複製資料。知識圖譜則追蹤資料之間怎麼關聯、偵測那些關係何時改變,並把變更送到需要知道的人手上。
我們打造 Sugarbug 的方向就是這樣 – 把 PM 和工程師已經在用的工具(Notion、Linear、GitHub、Slack、Figma)接成一張知識圖譜,維持規格、任務、程式碼、對話之間的關聯。我們還很早期(老實說,關於怎麼在大規模場景下把語意 diff 偵測做穩,還有很多沒弄清楚的),但核心圖譜已經運作,也已經抓到幾個本來會變成重工的規格漂移情境。
工程與產品的資料孤島會形成,是因為工具在結構上彼此斷開,不是因為人不會溝通。真正的修正是在關係層把資料接起來,不是再加更多溝通管道。
這週就能做的事
我不會假裝唯一答案是「用 Sugarbug」。就算沿用你現在的工具組合,還是有一些立刻可做的方式,先降低產品與工程資料孤島最痛的影響。
讓交叉引用明確、雙向、且有 owner。 每份 Notion 規格底部都放一段「Linear Issues」,連到它衍生出的 issue;每張 Linear issue 也要反向連回來源規格。每份規格指定一個人負責維護交叉引用 – 不是整個團隊,一個人,名字寫在上面。我們試過「大家都有責任」的版本,結果(很可預期地)等於沒人負責。連結一定會隨時間漂移,但有具名 owner,至少漂移被發現時知道該找誰。
建立有觸發條件的「規格變更儀式」,不是靠提醒。 當規格有實質變更(不是 typo – 而是需求真的改了),PM 必須在關掉 Notion 分頁之前先更新對應的 Linear issue。不是之後、不是「有空再補」 – 而是在關分頁之前。每張受影響 issue 留一行註解:改了什麼、更新段落連結、acceptance criteria 是否仍然有效。我們發現把動作綁在具體行為(關分頁)上,比靠任何人的記憶都有效,因為孤島本來就是靠遺忘長出來的。
每週五跑一次 15 分鐘優先順序對照。 一個人(每週輪換),把 PM 在 Notion 的前 5 優先和工程 sprint 在 Linear 的前 5 並排列出。問題不是「兩邊要不要一模一樣」 – 不會一樣,也沒關係。真正要問的是「有沒有正在互相衝突的?」如果 PM 的第 1 優先在 sprint 裡完全找不到,這應該是週一要先討論的事,不是狀態更新。
這些都是手動流程,有保存期限。5 位工程師加 2 位 PM 時,麻煩但可行。到 15 位工程師、3 位 PM、再加設計團隊把 Figma 拉進來時,跨工具關係的數量增長速度會超過任何人手動追蹤的能力。但它們至少能幫你找出產品工程對齊最嚴重的斷點在哪 – 就算未來把所有事情自動化,這段診斷價值也值得先做。
不管長期解法是 Sugarbug 還是其他方案(我們當然覺得方向是對的,但我有立場),產品管理與工程協作的問題,只有在工具本身於語意層面連接起來、讓人專注做決策而不是在 app 之間搬運脈絡時,才會真正解決。 That means investing in shared cross-tool visibility for product and engineering and knowing what the team is doing without daily check-ins – both of which depend on connecting the data rather than adding more communication overhead.
如果你的手動交叉引用還撐得住,就盡量用到它撐不住為止。如果你的 retro 一直在重複同一組溝通 action item,問題不是你的人,而是你的資料架構。
把 Notion、Linear、GitHub、Slack 連成一張知識圖譜 – 讓規格變更自動送到正確的工程師手上。
Q: 為產品與工程團隊設定 Sugarbug 需要多久? A: 初始連線每個工具只要幾分鐘 – 你透過 OAuth 驗證 Linear、GitHub、Notion、Slack、Figma,Sugarbug 就會立刻開始建立知識圖譜。隨著既有資料被匯入、規格與 issue 與對話之間的關聯逐步建立,通常一兩天內就能明顯有感。我們還在持續優化 onboarding 流程,但目標是除了連好帳號之外,不需要額外設定。
Q: Sugarbug 會取代 Linear、Notion 或我們現有的工具嗎? A: 不會。Sugarbug 是疊在既有工具旁邊做整合,不會取代任何一個。PM 照樣在 Notion 寫規格,工程師照樣在 Linear 和 GitHub 開發,Sugarbug 負責維持它們之間的關聯,確保脈絡不會在傳遞途中遺失。你可以把它想成既有工具之間的連接組織。
Q: Sugarbug 能偵測 Notion 規格變更並通知正確的工程師嗎? A: 這是我們正在打造的核心能力。當 Notion 規格改動時,Sugarbug 會辨識哪些 Linear issue 與它有關聯,並把變更帶給正在處理那些 issue 的工程師。語意偵測這塊我們仍在快速迭代(要分出哪些是實質變更、哪些只是表面調整),但跨工具連結與基礎變更偵測已經可用。
Q: 針對這個問題,同步工具和知識圖譜差在哪? A: 同步工具是在 app 之間複製狀態變更 – 例如 Linear issue 變成「Done」,就去更新 Notion checkbox。知識圖譜則追蹤資料之間怎麼關聯:這份規格描述了這三張 issue 的需求,而 acceptance criteria 改了,會影響其中兩張尚未上線的 issue。當變更是語意層而不只是狀態層時,這個差異就非常關鍵。
Q: 產品與工程的對齊是溝通問題,還是資料問題? A: 依我們經驗,幾乎都是資料問題被誤判成溝通問題。團隊有在溝通 – 只是透過彼此互不感知的工具。把這些工具之間的資料流接起來後,很多 retro 或 sync 會議一直解不掉的對齊問題,通常就會開始消失。