沒有「限制」,意味著沒有目標與計畫

沒有「限制」,意味著沒有目標與計畫

限制,對許多人來說都是一個負面詞彙,因為限制代表著約束,代表著邊界,代表著有許多事不能做。

有本書叫《美麗的限制》,書中作者希望人們正面地去看待限制,他在書中舉了一個簡單的例子,我覺得蠻貼切的,這也算是生活中的洞察。

如果在一個遊樂園裡,幅員廣闊,四週都沒有任何的籬笆或圍牆,你會發現多數人都會聚集在特定的位置上,但當你把人規範在特定的範圍內時,你會發現人們往往會在這個範圍的四處探索,籬笆跟圍牆其實就是限制,他限制了你的行動範圍,但可能反而讓你探索了更大的區域,這是一種有限制與無限制狀況下可能發生的現象,以下我從專案管理來敘說我的觀點,在無限制的狀況下你不見得能做出好的東西,反而當我們把一些條件限制住,你更能找出最好的解決方案,

沒有時程限制,你不會思考最有效率的方法;
沒有經費限制,你不會思考最佳而非最貴的解決方案;
沒有人力限制,你可能不會思考什麼樣的團隊組成與人數才是對的,你不相信人月神話,但你可能反落入人月神話的陷阱。

造一艘太空船

想像一下,老闆有一天跑來跟你說:「Gipi,你去做一艘太空船出來。」

身為專業的 PM,你一定會這樣問:「老闆,請問你製作這艘太空船的目的是什麼?你想解決什麼問題嗎?」

老闆說:「沒有,你就是把太空船做出來。」

你還會接著問:「有沒有什麼樣的功能是一定要做的?」

老闆說:「你就去研究一下別人的太空船有什麼你就跟著做就對了。」

你不死心,還想追問:「老闆,那你希望我什麼時候交貨?我大概可以動用多少費用?」

老闆說:「你看你什麼時候做好就什麼時候給我,經費的事情不用擔心,老子有的是錢。」

這個案例中,你會發現你似乎完全沒有限制,範疇、時間、成本都沒有明確的規範,完全的自由,想怎麼搞就怎麼搞,乍看之下很棒,但這其實是最糟糕的狀態

聰明的 PM 在此時會給自己先設定一些限制,例如兩年,20 億,弄一艘跟 SpaceX 一樣的太空船,然後去跟老闆說明你的計劃,只有把老闆的期待給釐清了你才會比較安心的往下做

缺乏限制,其實是沒有明確的需求

我曾經歷過幾個在無限制條件下所發生的錯誤結果:

第一個案例就是老闆跟主管說,人你儘管找,我不限制你 headcount,你把事情做好做到最重要,這主管聽了如獲至寶,開始大量的招兵買馬,人數大幅的增長了 3 倍,但 3 倍人力很理所當然的被要求要有更多的產出,此時這位主管才發現自己團隊的人力組成是有問題的

首先,原先應該是 50% senior 配 50% junior,但卻發現自己手下 junior 占了 80%,所以那些 senior 必須要花更多的時間指導 junior成員。

其次,做規劃的人力竟然多於開發的人力,導致一堆東西規劃好但沒有足夠的 PG 來開發,帳面上人數很多,但其實完全無法發揮應有的戰力,盲目招人的後果肯定就是要開始砍人了。

回過頭來想想,如果一開始老闆就設定了一個 headcount,這位主管理當會比較審慎的去確認每個晉用的成員是否符合團隊編制的需求,又假設老闆並沒有限制,這位主管自己盤點了工作量,幫自己設定了一個人力編制計畫,並依此計畫去招聘,那結果也會完全的不同。

第二個案例,老闆跟研發主管說想要搞一個社交平台,他的要求是「跟 facebook 很像就好,不用太複雜。」。

這位研發主管也很有種的接下來了,於是團隊就開始研究 facebook 的各項功能,探討功能性需求與非功能性需求,初步排了一個計畫是 20 人做半年可以推出第一個版本。

歷經半年,終於弄了一個跟 facebook 操作介面很像,功能性也幾乎相同的系統出來,demo 給老闆看,老闆問說:「好像少了廣告功能,然後這可以乘載 100 萬人同時上線嗎?」。

團隊緊接著又花了 3.4 個月的時間把廣告功能跟高併發的架構實現,再次端到老闆面前,老闆說:「好像比上次好一些了,壓力測試報告也有了,但我本來是想要把這東西做成企業跟個人都能用,可以把企業用的功能加上去嗎?」

再次接獲任務,團隊很快的又去研究了市面上 Enterprise Social Network 的功能特性,又花了半年多的時間把功能也做了上去,做好之後發現企業用的跟個人用的之間有很多的功能會發生衝突,所以再花了半年調整設計,終於才把企業功能與個人功能給清楚分開。

這個故事最後的結果是可以猜想的,一年多的時間,facebook 跟 ESN 的功能又有很大的進步,團隊又要開始追趕,而這個系統正式上線的時間始終未知,這是一個很典型的範疇蔓延,也可以說是初期並沒有設定清晰的目標,其實目標本身就是一種限制,告訴你我要的是這個,在這個時間發生

合適的做法應該是先確認老闆的目的,包含要解決的問題,需要滿足的需求,以及在企業經營上所處的戰略位置,何時要讓這產品上市等等,否則所有的投入可能都會有極大的誤差

上述兩個都是在我身邊發生過的真實案例,文章最後我們再拿專案金三角:範疇、時間、成本來結尾。

假設正三角形代表的是專案的最佳狀態,當我們沒有做任何限制時,你的時間可能會無限的延長、成本會不斷墊高、範疇會不停膨脹,這樣的專案多半收不了尾,要不就是最終長成了一個三邊極長的正三角形,這是很多大型專案的寫照。

但當我限制了其中一項,你雖然仍有可能會在其他兩項上無限制膨脹,但基本上你會受限於第三邊,會讓專案在一個比較可控的範圍。但當我限制了其中兩者時,第三個就被限制在一個特定範圍下了,此時你就必然要在這個限制下搞定專案;最好的是三項都定義的非常清楚,那案子就非常漂亮。

沒有限制,是所有人夢寐以求的,但這是對你最大的考驗,你必須要給自己設定清楚的目標,有計畫性的去把目標實現,而實際上,計畫也是一種限制,計畫讓你知道自己現在正在什麼位置上,接下來又要往什麼方向去。

用正面的角度看待限制,限制過多綁手綁腳,沒有限制則代表需求不明確,我們必須從中找到一個合理的平衡點。

如果你覺得我內容寫得還不錯,歡迎訂閱我的電子報,我每雙週會發送一封電子報到你的信箱。訂閱連結在這,過往的電子報也在這:Gipi電子報

也鼓勵你可以將我的電子報分享給你認為有需要的朋友們,也許你的舉手之勞,將會改變另一個人的思維與習慣。

Read more

大語言模型對軟體開發的影響

大語言模型對軟體開發的影響

近期閱讀了一份文件,內容是關於大語言模型對軟體開發工作的影響,文件的連結在這:Assessing and Advancing Benchmarks for Evaluating Large Language Models in Software Engineering Tasks 這份文件聚焦於大型語言模型(LLMs)應用於軟體工程(SE)領域的效能評估。這是個有趣的題目,所謂的效能,簡單的說就是能直接在該工作任務中大幅增進效能的比例。 大家都知道現在的 AI 寫 code 已經不是什麼大不了的事,但透過 vibe coding 寫出來的 code 真的可以用嗎?符合需求嗎?品質可以嗎?能被維護嗎? 關於這些問題,我們要如何衡量 AI 的有效性呢?目前的答案是透過 Benchmark(基準)。 舉例來說,之前有的 benchmark 叫 SWE-bench,

By gipi
溝通,不是把能說服自己的話拿來說服他人

溝通,不是把能說服自己的話拿來說服他人

還記得幾年前有個朋友私訊給我說了一段趣事。 他說公司有個同事援引了我在演講中提到的一句話:「敏捷走不出研發,就不能真正敏捷。」 他試圖用這句話來告訴業務團隊們「業務必須要參與到敏捷中,開發團隊必須要更了解業務狀態,我們才能真正發揮敏捷的效益。」 我那句話的本質跟他說出來的話,在意義上其實毫無分歧。 但他獲得的結果卻是被業務部門修理了一頓。業務部門告訴他:「這不是你該管的範圍,你應該專注把你的任務搞定。」 這邊姑且不論誰的想法才是對的,但我想跟大家分享一個我在溝通過程很重要的體悟。 「所謂的溝通,不是把能說服自己的話拿來說服他人。」 「所謂的溝通,不是把能說服自己的話拿來說服他人。」 「所謂的溝通,不是把能說服自己的話拿來說服他人。」 很重要,所以得說三遍。 我們讀書總會讀到很多很有道理的話,並且被這句話說服了。但千萬要記得,這句話能說服自己,不意味著能說服他人。因為我們的立場不同,遭遇的挑戰不同,先備知識也不同。所以一段自己覺得非常有道理的話,我們必須加以轉換後,才有可能說服他人。 舉個例子來說,做研發的會希望根本的理解一個需求背後的商務價值,因為這

By gipi
Meta 高薪挖來的 AI 人才,一個月後紛紛離職 - 論薪資公平性

Meta 高薪挖來的 AI 人才,一個月後紛紛離職 - 論薪資公平性

最近兩天看到好幾個談論 Meta 人才跳槽的消息,甚至連七月份從 OpenAI 高薪挖角的高手,也在入職一個月後決定離開 Meta 重回 OpenAI。當時的高薪挖角引起了眾多同業 CEO 的抨擊,覺得這種以錢為誘因的做法對 AI 的推進沒有幫助,終將會失敗。 Sam Altman:「用金錢驅動招聘,這會破壞以使命為中心的工作文化,真正的長期回報在於共同願景而非一次性高額薪資。」Dario Amodei:「極高的薪資策略可能破壞組織文化,雖然能吸引人才,但未必能吸引與其價值觀一致、長期投入願景工作的員工。」我相 信願景真的很重要,那是凝聚一群優秀人才的關鍵因素之一。但高額薪資背後的問題是什麼? 除了 Dario Amodei 提到的,會破壞組織文化外,我覺得 Michael Dell 的詮釋更直接。 Michael Dell:「這種高額薪資極有可能引發內部員工的不滿與文化上的緊張感。」 一樣從事 AI 研發工作,我在公司內已經是頂天的存在,但我的年薪不過就 1,

By gipi
對情緒控管能力的反思

對情緒控管能力的反思

前陣子跟大家分享了我自己對「情緒管理」與「承壓能力」的反思。 假設我們試著量化一個人的情緒承載能力,如果這個數值是 100,只要超過這個數字時,人的情緒就會崩潰。 而多數時候,我們會將自己的情緒壓力控制在 100 分以下,如果要自在一點的話,可能在 60 分以下是比較輕鬆自在的狀態。而那些工作壓力較大,或者內耗特別嚴重的人,很可能長期處在 80-90 分的狀態。 如果一個人的情緒壓力愈接近 100,那情緒就愈難自控,很容易沒耐性、暴躁、坐立難安。 過往我總認為自己是將情緒壓力控制在 80 分以下,所以自己在高壓工作下其實有許多的餘裕。 但最近發現,我可能只是為自己上了 buff。 所謂的 buff 是個遊戲用語,在遊戲中,有時我們可能會拿到道具,或者被施了魔法,讓我們的能力項注射了腎上腺素一般有個很明確的提升。 例如提升力量 5 點,增加 30% 血量,實體攻擊無效等等。

By gipi