我覺得這問題答案是「有技術很好,但沒技術也沒差」
不管是產品經理、專案經理都是PM
他們專注的點本來就該是在產品功能跟需求本身
會技術當然有助於他們可以比較明確的評估「這做不做的到」「做這個要多久」
但沒技術就不能當好PM嗎?也未必
重點還是PM能不能幫忙擋需求
說服User天馬行空的幻想
懂得安撫RD
當起User跟RD之間的溝通橋樑
這才是PM該做的事
如果PM不能夠站在RD的立場
那PM會技術搞不好更糟
「我也以前(十年前)也是有寫過程式,這個應該很簡單」
「我以前也寫過類似的功能,給你一天的時間應該夠吧」
(但可能環境的不同時間要更多)
遇到本來就不懂技術的PM你可以安慰自己人家就是沒寫過程式
但遇到這種寫過又喜歡把以前經歷套用到現在的PM你拳頭才真的硬到不行
所以我認為PM應該還是專注在產品功能面上
當然可以去試著理解專案用到的架構與技術特性
但做這些事目的也是為了要在與User談判時
提高對於需求的可行性以及時程預估的準確性
但最重要的還是PM能否擔任與User之間的溝通橋樑
這才是PM在團隊中最重要的任務
※ 引述《annedoo (安安)》之銘言:
: 大家好,我本身是產品經理、專案經理都做過的PM,
: 大學念的科系名字裡有個「資」字但非本科生,
: 好奇身為軟體工程師的各位,認為PM到底需不需要是技術背景、甚至會寫程式呢?
: 我大學的時候也有程式設計的課,
: 但就是在那時候發現自己寫得不快、寫得不好、也沒興趣,所以很挫折,
: 因此覺得這輩子絕對不會做跟寫程式有關的工作!
: 最近突然看到一個粉專(我是PM,有興趣自己查,他們來板上發過文),
: 寫了篇文章說明為什麼PM需要有技術背景:
: (以下不完整節錄)
: 作為一個技術出身的 PM,我會建議產品經理們真的要懂一些技術。更準確來說,PM 要懂的不是技術,而是用技術解決問題的思維。這樣不僅可以幫助 PM 更好的和 RD 溝通,也幫助 PM 從更多面向思考如何解決用戶需求。
:
: 什麼是技術解決問題的思維,我們可以簡單理解為四個要素:前端、API、後端、資料庫。
:
: 舉一個最常見的需求:用戶註冊。以四個要素分別來看的話可能會拆解成如下步驟:
:
: 1. 前端:用戶輸入註冊資訊並送出
: 2. API:接收用戶資訊,傳遞到後端
: 3. 後端:驗證註冊資訊是否合規,處理資料格式
: 4. 資料庫:於 users table 寫入用戶資料
:
: 接著可能還會需要回傳對應的結果並展示在前端等等,我們這裏不作討論。這樣分解下來,每個技術環節分別要做什麼就十分明確了,RD 腦內也能開始把這樣的邏輯轉化成程式碼。
:
: 那 PM 對於技術該懂到什麼程度呢?越多越好。如果一個 PM 技術力越強,RD 就會對你越尊敬。一來他們知道你跟他們有共同語言,是跟他們站在一起的;二來他們也知道,若不接受你提出的需求,你完全可以跳過他們自己動手。
:
: 最後也是最重要的,PM 如何提高技術能力?
:
: 1. 向 RD 學習:回到開頭的情境,有的 PM 可能會在被 RD 拒絕後灰心喪氣,甚至直接怒言相向,但這其實是一個鍛鍊技術思維的好機會。這時候我們可以根據上面的四要素,來和 RD 溝通是哪些環節碰到問題。對於實現不了這件事情,是因為現有架構的限制,還是說超過了技術本身的能力。於是,RD 可能會如此回覆你:「因為資料庫裡沒有這個欄位,我們也就沒辦法展示在前端給用戶看」,這才是真正的原因。一次兩次後,你會發現問出笨問題的頻率越來越低,你越來越常幫 RD 們擋下技術上不合理的需求,團隊的關係也會變得更緊密。
:
: 2. 動手寫程式:要鍛鍊技術能力最好的方法莫過於自己動手寫程式了。其實寫簡單程式並沒有太難,不需要買很多書來看,不需要懂計算機概論,只需要在 Youtube 上找些簡單的教學來看,然後訂一個題目來實作就行。
:
: 簡單開始的幾個步驟:
: 1. 完成開發環境的建置
: 2. 瞭解變數宣告、if/else 判斷及 for/while 迴圈等基本語法
: 3. 完成一個「Hello world!」
: 4. 完成一個小題目:例如 To-Do-List
:
: (以上不完整節錄)
: 1. 不知道大家認不認同這個文章的想法呢?
: 2. 在自己的經驗中,PM有/沒有技術背景造成了多大的差異呢?
: 3. 在了解技術這方面,有什麼可以給軟體業產品經理、專案經理的建議XD
: 我身邊有/沒有技術背景的PM都有,
: 私心認為兩種都可以做得很棒,在團隊內部可能也會是不同的定位取向,
: 不過自己說不準,感覺還是要合作最密切的工程師大大來分享比較實際~