馬斯克談產品研發過程可能犯的錯誤

馬斯克談產品研發過程可能犯的錯誤

今天下午看到一個 2021 年 Elon Musk 接受專訪的影片:https://www.youtube.com/watch?v=t705r8ICkRw

裡頭提到蠻多產品開發的觀念,包含需求、分工,以及工程師的職責,我個人認為非常值得一看,以下我幫大家摘要了部分我有感觸的內容。

讓你的需求更簡潔

簡化需求,而非複雜化需求,許多工程師會傾向於增加需求或規格,但真正好的做法應該是減法。這個減法理論從 Steve Jobs 到 Elon Musk 都非常推崇,我個人也認為是很關鍵的議題。

在一個產品中,增加東西是容易的,但往往會增加複雜度,當我們總想著增加時,思考解決問題方法時,我們往往只有「增加」這個方向,而不會想著「減少」與「重新設計」。這其實也是所有技術債的成因之一。

而習慣用加法的產品,很容易模糊了產品的焦點。

當產品核心功能不具備競爭力時,很多產品團隊會開始想給客戶更多,而更多經常意味著失焦,A 客群需要的主要功能沒法滿足,卻老想著用其他次要功能來填補,卻沒想過,即便次要功能再怎麼多,也很難讓客戶滿意。

給更多,這是一種人性在面對批評與挑戰時的慣性,但卻不利於產品發展。

別複雜化問題

過去碰過許多工程師,老喜歡將自己置身於複雜問題之中,舉個例子來說。

當今天要改技術債問題時,他可能會告訴你,要解決這個問題,需要改 10 個地方,而且會改到底層,而這些底層元件目前是由 N 個部門負責,然後這些部門的 PM 有好幾個都是直接對業務主管匯報。然後會順帶一提,這個問題以前也改過,但失敗了,失敗的原因是沒有任何業務主管支持。

我們可以看到,一個簡單的技術問題,到最後演變成一個複雜的問題。如果這時候我們立刻跳進來解決這問題,你就得處理一大堆政治問題、優先級問題與真正要處理的技術問題。

但過去我的經驗,我通常是要工程師告訴我 - 技術問題怎麼處理,剩下的問題我來解決。

當我今天只討論技術面的議題時,解法是什麼通常很明確,我們先針對技術面的議題做討論,就能明確所需要的資源與可能的風險。而當資源跟風險明確了,要去找人討論自然就簡單許多

可當我們被一堆非技術問題卡住時,我們連仔細評估技術問題的時間都沒花,那還談什麼解決問題呢。

別花力氣解決不存在的問題

這個段落很短,但我覺得很有趣,在馬斯克眼中,有很多問題根本不存在。而他所謂的不存在指的並不是沒這問題,而是這問題根本不值得討論跟花時間。

什麼樣的問題不值得討論呢?就是當你選擇減法時,當條件改變,原先的問題就不再重要了,所以解決問題時,應該先思考能否透過減法來讓問題變簡單,我們應該專注於解決更簡單、更單純的問題,而非複雜的問題。

如果本來我們要又快、又好、又便宜,那我們要在一個高科技產品的早期同時滿足以上三項條件,那解法肯定非常難。但如果今天老闆認為便宜這個條件不必存在,他只要又快、又好,那你完全可以想出一個成本較高,但能解決問題的方法。

所以馬斯克有特別提到,不要在一開始就跳進問題中,然後開始做最佳化,而是先做減法,刪到只剩必要的部分,此時才開始解決問題,才開始進行最佳化

先減法,解決問題,而後最佳化,而非立即跳入最佳化的思考。最佳化之後,則是自動化。

他舉了幾個 SpaceX 跟 Tesla 的例子:

開發 SpaceX 的火箭時,決定不折疊翼面(grid fin),因為這是一個不必要的機制。

開發特斯拉 Model 3 時,發現車身底部的玻璃纖維墊是多餘的,因此將其刪除,節省了成本和時間。

在生產線上進行過多的流程中測試也是一個錯誤,因為這會降低生產效率。

你會發現,他解決問題的本質,一直都是簡化與減法。

這一段他還提到學校教育,他說學校教育老是要我們去解一個不存在,假設出來的問題。甚至不允許你去反駁教授或老師,如果你跟教授說:「你這個問題沒有意義,根本不會發生。」你可能會被當掉。

這超級寫實,其實在公司也是如此。

對基礎問題提出質疑

馬斯克提到,早期他的專業能力不如那些在火箭領域浸淫許久的專家,但他還是針對「翼面(grid fin)需要可折疊的假設」提出了質疑。

也就是當專家們陷入過往經驗的陷阱時,他提出了一個專家不再考慮的問題,但最後火箭卻因此拆除了折疊機制而簡化了設計。

這問題我也超有感,過往每次在跨領域或進到一個新環境時,總會有人說「這件事就是如此」、「你過去不是這領域的可能不懂」、「這是行業的常態」。

但我也經常問這些人:「如果這是一個必然的事實,那請問其他人是怎麼解決的?」

如果其他人都能解決,這就代表這件事不是必然,既然不是必然,那肯定我們過往的假設出了問題

責任必須到人而非部門

提到工程需求必須對應到個人而非部門,是因為他認為這樣才能確保需求的合理性和責任歸屬

這個段落他隨口帶到,有時需求可能是很久以前某位實習生的隨口提議,但這個實習生早已離開公司,但現在部門裡也沒有人認可或支持這個需求。

如果需求來自於部門,接收需求的也是部門而非人,那可能會出現沒有人真正為這個需求負責的情況。

而如果工程師不質疑需求的來源,也沒有人負責解釋這個需求,最後就會盲目地執行,浪費時間和資源在不必要的優化上

透過將需求與個人連結,可以確保每個需求都有明確的負責人,這個人必須能夠解釋需求的必要性,並為其負責。這樣可以避免工程師陷入「優化不該存在的東西」的陷阱。

工程師需要有「總工程師」的思維

工程師常陷入一種迷思,就是專注於優化單一零件或步驟,而忽略了系統層級的問題。

舉例來說,SpaceX 的工程師花了很多心力降低引擎重量,卻沒有花太多心思減少推進劑殘留。結果火箭降落時,仍然攜帶著大量未使用的燃料。

雖然一噸燃料看似不多,但相較於工程師為減輕引擎重量所付出的努力,或許直接優化燃料會比優化引擎更容易。這是局部最佳化常見的問題。

也是為何我們常說,開發系統要能看見全貌,要能掌握脈絡。

如果每個人都能像「總工程師」一樣,從系統層級去理解問題,就能避免這種見樹不見林的錯誤。唯有每個工程師都了解系統的全貌,才能做出對整體最佳的決策,而不是只顧著優化自己負責的那一小部分。


很多時候,解決問題的方法遠比想像的更簡單,可我們經常被技術之外的問題給困住了,因此複雜化了問題。

當我們願意回歸基礎,挑戰基本假設,對問題進行減法,解決問題或許就沒那麼困難了。

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

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

Read more

我讀麥肯錫的《注意力方程式》報告

我讀麥肯錫的《注意力方程式》報告

近期花了點時間閱讀麥肯錫的《注意力方程式》(The Attention Equation)報告,從中獲得了一些不錯的啟發,也跟大家分享這篇報告所提到的內容,以及我獲得的收穫。 報告背景 報告的內容大約是 20 多頁的原文,核心放在談論注意力方程式(Attention Equation)這個概念,那什麼是注意力方程式,為什麼麥肯錫要特別談論這個概念呢?首先我們得回到近幾年大家經常在談論的幾個概念: 1. 流量愈來愈貴,數位廣告的 ROI 持續下探。 2. 演算法愈來愈迷,多數的數位廣告媒介都被演算法給操控,不容易破解之虞,還經常更動。 3. 傳統的文字內容不再受到流量青睞,長影音也愈來愈沒人想看,反而短影音似乎成為新的流量王者。 過往我們在看待廣告或其他行銷媒介,或者進一步探討企業獲客(Customer Acquisition)的方式時,我們大多會談論自有媒體(Owned media)、付費媒體(Paid media)與贏來的媒體(Earned media)三者的比例,以及企業應該強化的重點。

By gipi
普通人悖論

普通人悖論

今天跑步時聽了一本書,書中提到一個「普通人悖論」。聽著有趣,因為似乎解答了我這幾年的一些自我認知的疑問。 「我們一般人....」 「對普通家庭來說....」 我們總看著成功人士的故事,閱讀那些不平凡的案例,可到最後,我們還是會回過頭來告訴自己「我們就是個普通人」。 我們渴望不凡,渴望能活出屬於自我的人生,但我們卻又認為自己無法脫離普通人的路徑。20 多歲出社會,謀得一份工作,接著兢兢業業數十年,從基層爬到高層,一輩子在職場上與人競爭。當我們看到那些跳脫這種路徑的人時,我們又說服自己「那是別人」、「那是獨特個案」。 我們心理渴望自己也能是獨特個案,但又不斷說服自己「我只是個普通人」。 這種心境,讓我們沒有勇氣去追求屬於自己的人生。 在聆聽這段時,為什麼我會特別有感觸呢? 在我今年撰寫的新書《用商業思維優化你的人生選擇》中我提到,每個人的人生都是獨一無二的。你不見得要像他人一樣功成名就才算非凡,你能做自己喜歡的是,成為自己想要成為的樣子,活出自己的人生,那你就是個非凡的人。 因為其他人很難活得像你這樣。 我內心是堅定相信這件事的。但我卻又經常在一些時刻,會將「我們一般人」

By gipi
如何快速熟悉一個產業?

如何快速熟悉一個產業?

什麼是產業,什麼又是行業? 有人會說電子業、食品業,也有人會說製造業、零售業、服務業,這兩者指的是相同的概念嗎?其實這邊隱含了兩個概念,也就是業種跟業態。 業種,是行業種類,以販售的「商品種類」區分所屬行業。例如賣建材的建材行、賣文具的文具店、賣水果的水果店或賣米的米店等。這些業種店看招牌名稱就可得知該商店販賣哪種商品。 業態,是行業型態,則是以該店家的「經營型態」區分所屬行業。例如提供即時、方便服務的便利商店;提供專櫃及流行品的百貨公司;提供量大、低價的開架式民生消費品的量販店等。這類商店,無法從其名稱辨別產品。通常是提供「一站式購買服務」為訴求,並提供其他相關的附加服務。 典型的業態,其實分兩大類,製造與流通。製造商負責製造產品,流通商負責將貨物流通到消費者手上,並因應消費者的需求,擴大產品品項,增加服務,而大家常講的零售與批發,其實也歸屬於流通範疇中。 舉例來說,生鮮食品經生鮮處理中心,將生鮮品分類分裝,這是製造的範疇,大盤商集中所有產品,

By gipi
當 vibe coding 已成必然,軟體開發會有什麼變化?

當 vibe coding 已成必然,軟體開發會有什麼變化?

當 Vibe coding 興起後,有愈來愈多的資深工程師的工作重點轉換到修復 AI 寫出的各種 bug。因這個現象,有些資深工程師們打趣地說,他們現在的任務像是專門處理這些 vibe coder 寫出來的爛 code。而這個職務稱為 Vibe Coding Cleanup Specialist。 我個人絕對支持 vibe coding,因為這是軟體開發的典範轉移,用得好的話可以大幅提升生產力,加上 AI 顛覆職場的趨勢幾乎不可逆。擁抱變化會比抗拒變化更明智。 這讓我回想起 2005 年剛出社會時,因為我起步的程式領域是 C#.net,使用的開發工具是 Visual Studio。C# 的好與壞我就不提了,但在當年,Visual Studio 這工具被稱為地表最強 IDE 應該是沒問題的。 它有多方便呢?所見即所得,元件直接拉到畫面上,出來的畫面就長那樣,

By gipi