iT邦幫忙

2024 iThome 鐵人賽

DAY 21
1
佛心分享-IT 人自學之術

洞察十倍工程師的內心世界系列 第 21

決策選擇:用最小的力氣,達到最大的成果

  • 分享至 

  • xImage
  •  

學習要點

解決方案不僅要技術上可行,還要考慮商業效益,找到能夠用最少資源解決大部分問題的方式。

故事描述

在我之前的一份工作中,我負責的事一個電子商務類型的產品,該產品串接了第三方的金流服務。如果你有類似的經驗,你一定能了解這些服務有多麼不穩定。

有時候,明明使用者刷卡成功,但金流服務回傳的訊息卻顯示失敗;過了半個小時,或甚至隔天,才回傳刷卡成功的訊息,有時則完全沒有回應。

由於金流不穩定,公司會計兼客服人員每天都得手動對帳,以避免日後接到客戶投訴。每次她被客戶罵完後,就會轉頭來找我,要求我立刻從資料庫撈取交易資料。由於她剛被罵,情緒未平復,這些負面情緒也自然傳遞到我身上。老實說,這份工作壓力並不算大,但這種充滿負面情緒的工作環境,讓我多次想要離職。

為了解決這個問題,我研究了多個方案,希望能將這部分能夠完全的自動化,並向主管(十倍工程師)提出了我的解決方案。

方案一:我的解決方案

我建議:「我們可以爬取第三方金流服務的網站資料,將這些資料整合到我們的後台,並新增一個查詢頁面,讓會計能自行查詢。」

然而,我的主管否決了我的提案。

補充:之所以考慮使用爬蟲,是因為這個第三方金流服務沒有提供即時查詢的 API,只有每月底會發送一次 CSV 月報表。如果想查詢即時交易資料,必須手動登入他們的網站。

方案二:十倍工程師的方案

他說:「表面上看,這方案可行,但實際上經濟效益不高。現在公司交易量不大,沒必要花這麼多心力在這上面。」

我說:「那有沒有其他方法可以解決呢?每天這樣真的很煩。」

他說:「我們可以寫一個排程程式,讓系統每天早上自動從資料庫中取得所需資料,然後透過 Email 自動發送 CSV 檔案給她。我們的 Codebase 已經有寫好的排程和寄信的功能,這樣只需請會計告訴我們她需要的格式,讓她能簡單地複製貼上使用即可。」

雖然這個方案沒有完全解決所有問題,但它解決了大約 80% 的問題,並且用了最少的時間和精力。一年後,這家金流公司終於推出了可以查詢即時交易的 API,於是這個功能也自然廢棄了。

啟發

我重新檢討了我的設計,缺點如下:

  • 外部依賴:爬取對方網站的資料風險太大,如果他們的網站一旦改版,爬蟲邏輯也要跟著維護,這會增加工作量。

  • 實際解決掉的問題有限:這仍然只是我們多個金流服務中的一部分,不管如何,還是得手動對帳。

這段經驗讓我深刻體會到,解決問題不一定需要寫大量程式碼。有時候,找出符合商業上更實際、有效率的解決方案,才是最佳選擇。

業界有句話:「最危險的工程師不是平庸的工程師,而是那些過於熱衷寫程式的工程師。」他們容易憑空創造需求,撰寫過多不必要的功能。而真正的十倍工程師,具備商業思維,知道何時該寫程式,何時不該。

尤其是進入國際級公司後,給我的最大的文化衝擊來自於:國際級公司將工程師視為產品工程師,而在國內工作所累積的經驗,多數是專案工程師思維,要轉變思維模式,著實不易。

  • 產品工程師(Product Engineer):不僅關注技術實現,也關心產品是否符合用戶需求、市場需求和商業目標。

  • 專案工程師(Project Engineer):主要考慮如何在有限的資源、時間和成本內,完成特定目標。

理論:精實生產

精實生產(Lean Manufacturing / Production),是一種系統化的生產方法,目標在於減少生產過程中的無益浪費,為最終消費者創造價值,產生為他們願意付費的行為。

實踐指南

  • 簡化解決方案:選擇能解決大多數問題的方案,而非一次解決所有問題。

  • 持續改善:初步解決方案不需完美,先解決主要問題,後續再逐步優化。


上一篇
決策選擇:你真的遵守了「殺雞不用牛刀」嗎?
下一篇
學習策略:透過曼陀羅計劃表,幫自己開訓練菜單
系列文
洞察十倍工程師的內心世界34
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言