先說前言,好的軟體 PM 寫程式的能力不是絕對必需技能。這篇文章你可以直接跳過了(喂~)但如果你想要當個成功的軟體產品經理,懂得寫程式和技術能力,是個讓你能脫穎而出大加分的技能。這篇文章將分享軟體 PM 會寫程式有哪些好處,產品 PM 擁有哪些技術能力,能夠有效幫助你成為更好的軟體 PM,而 PM 真正重要的核心能力又是什麼呢?
軟體 PM 要有技術背景嗎?要會 coding 嗎?
很多人會問說,想當軟體 PM 需不需要有技術背景,到底該不該學寫程式?
其實你問多數的 PM 都會說寫程式不是必備的技能,不必要真的能自己寫程式開發產品,更重要的是能擁有基礎技術知識和系統如何運作,了解工程師軟體開發的分工和工作流程模式,對於 PM 工作會大有益處。
軟體 PM 會寫程式的好處
雖然對多數 PM 來說,會寫程式不是必備技能,但會寫程式畢竟還是對你有正面幫助,例如了解系統如何運作、了解軟體開發的相關流程,重要的是,讓工程師不會覺得你只出一張嘴討厭你(無誤)。
1. 了解技術的極限
在產品規劃時,你會更了解產品開發時會遇到的困難,其中所需的時間和成本,來判斷你對產品的要求程度應該推到哪;各種功能開發的取捨,壓死線該壓在技術上合理的時間之內,不會讓工程師覺得你在亂開需求、亂壓時間。
2. 有更高的自主性
如果所有的小修改都需要仰賴工程團隊,除了頻繁要求細項修改容易疲乏外,也會增加 PM 和工程師的溝通成本,讓 PM 在產品開發管理上更容易遭遇阻礙。
3. 與工程師更有效地溝通
學會程式等於你和工程師有「共通語言」,工程師常遇到根本不尊重他們專業的要求。但若你自己也懂得寫程式,工程師會知道你了解技術上的難點在哪,需要多少時間,需求是否合理。而不是只是上級的傳聲筒,信任感更高也能降低溝通阻礙,並能更具說服力地解釋產品商業邏輯給技術團隊。
4. 提升軟體 PM 的說服力和自信
軟體 PM 對產品/專案會需要對內部和外部的利害相關者(stakeholder)大量說服和協調,了解程式能幫助你做更合理的需求規劃,能更有自信展現出對產品和市場的認識程度,增加自己的說服力。
5. 善用程式能力持續進修學習
你不必擁有工程師實際開發的技術,但擁有程式能力可以幫助你吸收科技和技術的新知,拓寬你的視野和想像力,有助持續學習並加速你的成長。
軟體 PM 該學哪些技術能力?
哪些技術能力對軟體 PM 的工作有顯著的幫助呢?若 PM 能看懂基本技術文件,就能更合理地開出符合產品規格和規劃時程的需求,以下是一些 PM 可以進修的技術。
1. HTML/CSS/JavaScript
從學習最基礎的前端開發技術切入,快速了解什麼是程式開發,你可以自己架個 landing page 來認識 web dev 所需技術,對於技術和軟體開發的思維更有概念,與工程師擁有共同的語言和同理思考,能幫助你跟工程師溝通協作時更順利。
程式設計入門,從HTML/CSS/JavaScript 開啟coding 之路
2. 搜集用戶資料做數據分析
產品經理需要搜集使用者行為和市場相關數據,若你懂一點 SQL 對你處理資料的能力很有幫助,當你想要撈資料做數據分析時,可以自己撈資料來分析,不用需要特別麻煩工程師。
3. 網路運作原理與 API
認識網路運作原理:客戶端/伺服器架構,學習 API 的基礎知識,了解 API 能夠清楚各個系統間的資料如何流通,需求設計才能考慮更全面。
軟體 PM 若能夠閱讀 API 文件,能夠幫助你評估開發所需的工作量,而不會在毫無概念下亂壓了個不切實際的期限和預期,而能對產品開發的期程與成本效益做出更好的評估。
軟體 PM 產品經理真正重要的核心能力
前面提到軟體 PM 產品經理需不需要會寫程式,並分析了 PM 會寫程式的好處,我們也提到,
其實對多數 PM 來說,雖然會寫程式讓你能夠與工程師更有效率且更專業的合作,但實際上並非真正重要的必備技能。那麼對產品經理 PM 來說,什麼是真正重要的核心能力呢?分別有以下五點:
1. 溝通協調能力,管理利害關係者(stakeholder)
PM 會需要大量的內部溝通和說服包含老闆、工程師、設計師和行銷團隊等。他們各自有著自己在乎的事和優先順序,所以你要能夠換位思考,在相互信任和尊重的基礎上,建立與不同利害關係者的合作關係,才能達到更好的團隊協作,有效最大化整合利用不同資源。
2. 專案管理能力:計畫與排定優先順序
懂得分析需求的重要程度,設定合理的計畫期程和排定需求任務的優先順序,並能做好追蹤與適時回饋。如果總是「很急」壓很短的時間上線,開發和設計團隊只會越來越不信任你的能力,常會事倍功半、更難推進產品專案的進度。
PM 更要有能力能識別核心的功能是什麼,哪些需求是必要的,哪些能妥協哪些不行,排定好優先順序,讓專案能有效率並在符合成本效益的情況下完成。
3. 需求表達能力:邏輯清晰、思考規劃嚴謹
PM 在提出需求時,要做好的基本功就是寫好邏輯清晰的產品需求規劃文件 PRD(Product Requirement Document),讓不同單位像工程和設計團隊等能有共同的參照,同時顯示出 PM 對這個需求的規劃與思考,建立自己的可信度與嚴謹度。
而不是臨時想到一個需求就跑去跟工程師說,要其他團隊一起開發出來,但被挑戰「為什麼要做」時,卻說不出個所以然來。
4. 市場與資料分析能力:了解用戶需求,用數據說話
持續學習,保持好奇心來維持對市場的敏感度,大量閱讀和體驗與用戶 TA 相關的事物來培養觀察力和思考,才能幫助你做出更精準的判斷。
永遠以用戶需求為核心,能夠換位思考來找到他們的核心需求。在市場與產品分析時,能夠搜集到有效的資訊和數據來佐證你的假設,並從資料中獲得正確的回饋來提出解決方案與進行優化。
5. 主動積極,扛起驅動團隊的責任
作為產品的負責人,要主動設法去影響和驅動別人協助你完成任務。
PM 不只是「提需求」的人而已,也是產品開發的推進器。從工程、設計到行銷團隊都是產品成功缺一不可的元素,而 PM 要能夠積極主動溝通產品的價值,讓團隊知道跟認同要一起共同完成的目標,並適時能給予團隊用戶的反饋,讓團隊更了解做對什麼做錯什麼,並能夠獲得 PM 的尊重。
小結
謹記,PM 不是工程師,不要幫開發者想技術解決方案,軟體 PM 需要的是從「客戶」角度提出問題與需求,讓技術團隊來想解決方案。擁有基本的程式能力和技術知識,能夠大幅降低與工程師的溝通障礙,提高效率,成為更具備專業優勢的軟體 PM。