從職涯故事到產品思維:第六屆曼陀號工程組月會心得

從職涯故事到產品思維:第六屆曼陀號工程組月會心得

身為轉職人,步入軟體業整體時間還不是太長,在職涯面向、產品面向、技術面向覺得都還有很多地方可以探索。由於平常只有跟自己公司內的同事接觸,總覺得自己對於行業的理解還不夠廣泛,基於這個原因,我開始尋找能夠讓我接觸更多不同觀點的機會,最終我找到了曼陀號計畫。

曼陀號領航計劃是什麼?

本計畫所有人員皆以志工形式參與,為期約六個月,邀請各領域知名專家擔任小組船長 (Mentor),分組舉行實體聚會。透過船長的專業分享與經驗傳承,幫助水手 (Mentee) 縮短摸索的成本,突破職涯上的瓶頸與挑戰,成為科技領袖人才。 (參考於曼陀號官網)

參加這個計畫後,每個月有一次的月會討論,也會在月間安排小組線上會議,做月會事前討論,可以在月會前有更多了解相關知識。也可以跨組參加其他組別月會,吸收不同觀點。參加的成員都非常積極主動,來自各種背景,包括大公司、外商及新創公司。這樣的多元化環境讓我有機會聽到大公司的內部趣事,也可以聽到有人安排數位遊牧的生活,大家的公司文化都大不相同,非常多樣化。

第一次 egineer 組月會,船長 Jalex 深入解析了身為軟體工程師,我們的影響力、我們的角色定位以及職涯發展方向。轉職後,我一直專注於提升技術知識,但漸漸意識到從單一視角學習似乎無法延伸到其他職涯面向,這次的月會為我開啟了多種不同的觀點和探索方向,因為內容眾多,我這邊挑選「職涯發展故事」、「產品思維」這兩個主題,並結合自己目前的工作經驗來說明。


在剛進入公司時,我無法選擇任務,總是將眼光聚焦在短期目標上:「完成手頭的任務」。公司要我做什麼,我就接。但隨著現在已經在公司一段時間,我注意到同期的朋友開始換工作,也開始跟我討論履歷怎麼寫的問題,我發現了一個共同的困境:大家在列自己履歷上的成就時拿不出亮眼的具體事蹟,要修改也很難改!
因為大家前期在投入任務的時候,沒有想過這個任務的成果跟發展,只有聚焦在問題解決,因此也錯失一些好的任務機會。我認為努力了很久但沒辦法在履歷上呈現成果很可惜,這也是我選擇分享「職涯發展故事」的原因,我們其實可以從進入公司後就開始聚焦並累積我們的職涯故事的。

職涯發展要怎麼寫出好故事?

職涯發展的本質就是故事接龍

每一份工作都在累積我們的經歷,這些經歷其實是可以自己設計並且串連起來,變成精彩的故事。那麼要怎麼開始計畫跟設計呢?

找到什麼是有價值且能發揮影響力的事情

船長 Jalex 提出可以用影響力作為指標,這邊舉例其中一個思考面向:

什麼樣的事情是我離開公司之後,還可以持續為公司/同事帶來價值的?

但光有這個方向還是很難知道這是什麼樣的事情,以下舉實際例子來說明會有影響力的事情:

  • 調整了 CICD 流程,整體流程時間降了 50%,在進行部署時能更迅速地推送到 production 環境
  • 改善團隊開發流程,開發前期導入編寫工程 spec,讓 reviewer 可以在開發前期就知道開發方向並在前期討論,減少進到 PR review 階段才砍掉重練的狀況
  • 利用 openAI 優化新聞產出內容,使新聞編輯在編寫新聞耗費時間從 1 篇 1 小時縮短成 1 篇 8 分鐘

要怎麼在工作中找到這些可能有影響力的事情做?

以我觀察我們公司,我認為可以思考目前團隊遇到的痛點是什麼(工程面向、團隊面向、流程面向),把平常工作中遇到不順的事情都寫下來,並做以下評估,來看看這個是否是有價值解決的問題:

💡
What - 痛點是什麼?帶來什麼影響(程度/範圍/頻率)?
Why - 為什麼有這個痛點?
How - 可能的處理方向

如何在選擇中確保成果的最大價值?

船長 Jalex 提供了這樣的觀點:

先想好故事再實現

如果有好幾個可以完成的選項擺在前面,需要思考哪一個是最有價值的再開始動手,因為事情做下去就開始耗費資源(時間),資源是最寶貴的,我們的資源有限!而想要在一定時間內有好的成果,也必須要挑選到可以成長為好的成果的事。

如果以上一個觀點來看,也可以思考「這個痛點真的痛嗎?」來衡量這件事情被解決得價值有多高。

關於累積職涯故事,實際上作為 junior 工程師會碰到的問題是?

junior 很多時候做的事比較沒亮點,也沒有什麼影響力,但是如果不做就沒人做了,這些事情已經佔滿自己的時間,不曉得應該怎麼辦

  • 建議:可以跟主管提出需求,明確表達你需要有挑戰的工作,請主管派發這樣的工作給你。(私下傳訊息表達也是一種方式)如果公司不能給你這樣的任務,也可以聽聽公司的看法是什麼,再想下一步。
曼陀號活動照片

在產品面向上發揮影響力 - 關於培養產品思維

為什麼工程師除了技術之外也要從產品的角度學習?

作為一名軟體工程師,我們的專業影響力不僅在於解決技術問題,也能在產品上發揮影響力!透過深入理解產品的核心需求及其商業背景,我們能在產品設計的早期階段提供實質性的建議,從而協助創造更好的產品

這種能力的需求隨著職業生涯從初階到資深的發展而逐漸增加。初階工程師可能著重於清晰的需求和準時的程式碼交付 (Deliver),中階工程師開始做系統設計 (Develop),而資深工程師則深入參與產品策略的討論 (Discover),定義真正需要解決的問題 (Define)。這不僅可以提升產品的技術可行性和用戶體驗,也為產品創新帶來關鍵的貢獻。

參考雙鑽石模型圖( Double Diamond model ):這個模型強調了在設計過程中不斷的擴展和收斂。菱形越寬,想法和研究就應該越開放,考慮多種可能性。

但產品思維在工程師的初期職業生涯中可能較少被重視,隨著發展成為一名資深工程師,這個能力變得越發重要,下面是我從這次月會中綜合目前經驗和心得,認知的產品思維整理。

什麼是產品思維?

產品思維(Product Thinking)在軟體工程師的角度來說,是一種專注於產品價值和用戶需求的思考方式,這種思維不僅關注技術實現,還深入考慮產品如何滿足市場需求、提升用戶體驗以及達成商業目標。以上是我查到的,但這樣的說明太抽象了,什麼是可以幫助我具體思考,提升產品思維的問題?以下問題先聚焦於當前需求和短期目標,因為跟我們切身相關,也比較容易想像。

  • 今天一個用戶需求來,最初始要解決的問題(痛點)是什麼?
  • 這個產品為什麼要這樣做?我們的目標是什麼?
  • 要達到這個目標,我們需要解決的真正問題是什麼?
  • 如果原始目標為出發,我還可以怎麼解決?有滿足現有需求或更好的作法嗎?
  • 如果考量產品的取捨,評估工程影響,假設開發一個完全不同的功能,但是花費時間更少,是不是也可以解決問題?

舉一個例子:
很多新聞網站都有推薦新聞的區塊,而 A 公司也想做這樣的功能!

  • 目標:
    • 推薦用戶感興趣的新聞,豐富新聞版面並提升用戶體驗
    • SEO 考量,需要增加站內連結

PM 提出有很多 recommender system 服務可以串接,但是這個任務有點趕,PM 要求一週時間就要上線。如果要研究外部服務、做比較,可能就會花費大量時間,怎麼辦?

工程師文文考量到最初始的目標是上面兩項,他提出可以先內部自己寫簡單演算法,或許可以按照點擊率跟發佈時間做排序,先上線功能。這個作法能夠滿足上面兩個目標。考量到時程壓力為最優先,這個作法被採用。

延伸思考:可以用公司的目標去考量我們還可以怎麼做,參考以下範例

  • 公司做這個功能的目標是什麼? 剛剛前面的需求是怎麼產生的?
    • 為了要成為數一數二新聞觀點平台
  • 怎樣算是數一數二的新聞觀點平台?有基準點參考嗎?
    • 先上網找到台灣最大流量平台排行(可以參考 google 到的資訊)
  • 這些前幾名的新聞網站做了什麼?哪些可以當基準?
    • 以發新聞的量作為基準參考/ 新聞版位安排參考…等等,參考知名平台作法
  • 優先做什麼可能可以更快達到我們的目標?….

用這樣的方式向下追問自己問題,就會對達到這個目標作法有概念,也可以跟 PM 討論作法可行性,同時也加深對這個產品的了解。順便再討論的時候可以提出工程觀點,說明功能好不好做。可以用以上提問的方式慢慢培養起產品思維。

具有產品思維且有產品發想的能力,要怎麼在面試中表現出來?

  • 你不是只是會交付功能,你知道為什麼要做這個功能,而且你了解公司產品跟價值,以下舉例:
    • 初階工程師:
      • 我做了某個功能,他裡面用了某個技術…(開發與解決具體問題)
    • 資深工程師:
      • 因為什麼「背景」,我們需要某個產品,這個產品是因為某個「需求」而要開發某個功能
  • 回到前面講的流程:理解用戶需求和商業價值 → 理解產品目標 → 理解產品需求 → 設計並評估解決方案(技術上選擇知道對產品的影響是什麼)
    可以用這種方式設計的你回答

月會提供的延伸閱讀文章:


最後,曼陀號月會真的辦的很用心,整個活動從開始到結束都安排得很妥當,最重要的是真的有吸收新知識!還可以跟不同公司的人交流公司狀況、也有認真的問題討論活動環節安排,可以彼此分享知識,已經期待第二次的活動到來~~~