Gbkrdzl2aafggc1wspua

李和益 Steven Li

軟體開發經理
Taipei,TW
[email protected]

個人總結

  • 具有超過 12 年的軟體開發經驗,目前擔任雲服務架構師兼產品負責人。
  • 擔任開發經理和產品負責人超過 3 年,管理一個 7 人團隊 (1 位前端、4 位後端、1 位 QA 和 1 位技術支援工程師),成員來自台灣和大陸。 
  • 熟悉雲原生應用程式架構設計、開發、持續交付和 SaaS 解決方案。 
  • 成功打造出可以運用在各種 AIoT 場景的 B2B SaaS 產品,像是智慧工廠、智慧醫療和智慧建築。 
  • 熱愛學習新技術並應用於工作中,喜歡與團隊分享和協作。 
  • 具備工程領導和商業思維的解決問題能力。

工作經歷

開發經理,研華科技,2022 年 1 月 - 至今

  • 擔任三個產品的主要負責人和技術團隊領導者,管理一個 7 人團隊 (1 位前端、4 位後端、1 位 QA 和 1 位技術支援工程師),成員來自台灣和大陸。產品使用雲原生的微服務架構,運行在基於 K8s 所搭建的研華工業雲平台
  • 規劃產品功能、架構設計、技術可行性驗證和專案進度追蹤,打造符合用戶需求、兼顧商業價值的產品
  • 與內部或外部夥伴合作,使用自家產品進行 POC 驗證和替客戶打造完整解決方案,在各領域皆有成功落地,包含:智慧工廠、智慧醫療、智慧建築/城市等
  • 實際將產品落地於研華內部工廠(昆山和林口),幫助工廠實現異質性資料整合和資料治理的目標,並成功替換原有外購系統,節省每年數百萬元的系統外購費用

副理,研華科技,2018 年 1 月 - 2021 年 12 月

  • 擔任資料中樞和訊息通知產品主要負責人,使用雲原生的微服務架構,運行在基於 K8s 所搭建的研華工業雲平台
  • 帶領和指導技術團隊研究、開發和部署,且負責審查程式碼質量和提供改進方案
  • 制定團隊開發、CI/CD 流程以及 Coding Style 標準,確保開發流程順利且兼顧程式碼品質
  • 產品的整體系統架構設計和統籌規劃,以及後端 API 和資料處理模組開發,主要使用 Node.js
  • 規劃與開發資料中樞 Edge SDK 給多個內部設備部門以及外部設備商和系統整合商使用,替每個團隊省下至少 70% 的開發時間成本

資深工程師,研華科技,2014 年 6 月 - 2017 年 12 月

  • 開發 SCADA 圖控軟體並替客戶設計和開發解決方案,像是生產追蹤系統和 CNC 機聯網解決方案,使用 ASP.NET MVC
  • 使用 C/C++ 開發 SCADA 圖控軟體的設備協議模組,像是 Modbus, OPC UA 或 MQTT

軟體工程師,旺矽科技,2012 年 5 月 - 2014 年 3 月

  • LED 測試機台應用程式元件開發,使用 C# 和 C/C++ 為主要開發語言
  • 機台與客戶端 MES 溝通介面開發,使用 SECS/GEM 通訊協定
  • 小規模客製化 MES 開發,從需求訪談、系統設計、開發到驗收與教育訓練一手包辦
  • 機台報表系統開發,使用 C# 和 JavaScript

軟體工程師,友達光電,2010 年 9 月 - 2012 年 5 月

  • SA (System Analyst) - 使用者需求分析和資料流設計,並根據需求規劃整體操作流程。
  • SD (System Designer) - 維護既有的 MES 系統和開發新的功能模組,使用 VB.NET 為開發語言,Oracle 和MySQL 為後端資料庫
  • 根據開發項目執行系統測試。
  • 回覆使用者諮詢和系統異常排除 。
  • 根據 AUO CMMI 規範撰寫技術文件和報告。

學歷

資訊工程研究所,國立高雄大學,2007 年 9 月 - 2009 年 6 月

主修:資料探勘、資料倉儲、線上分析處理

畢業論文:藥物不良反應成因的分析與偵測之知識發掘平台

發表論文:1. Wen-Yang Lin, Ko-Wei Huang, He-Yi Li, Chang-Long Jiang, “Mining Frequent Patterns with Item, Aggregation, and Cardinality Constraints, ” in Proceedings of the International Conference on Innovative Computing Information and Control, 2008. 2. 林文揚,李和益,”藥物不良反應成因的分析與偵測之知識發掘平台”,第十三屆人工智慧與應用研討會,2008.

資訊工程學系,大葉大學,2002 年 9 月 - 2007 年 6 月

主修:物件導向設計開發、視窗程式設計、計算機網路、軟體工程、資料庫設計、資料結構


產品/專案經驗

資料整合與分析服務 (DataInsight)       研華科技, 2021.09~至今

使用 Apache Spark 作為計算引擎,可串接多種異質性資料來源,並提供圖形化操作介面,可對資料進行過濾、計算和合併等 ETL 操作。處理後的資料使用列式儲存格式持久化管理並提供基於 SQL 的 Ad-Hoc 查詢功能。也支援使用者使用 Python 開發 UDF/UDAF 擴充函式,可以幫助企業解決數據孤島問題,構建數據服務平台。

開發技術:Apache Spark, Apache Parquet, Apache Livy, React.js, Golang, Java, Scala, Python, PostgreSQL, Redis, K8s

負責工作:

  • 整體系統架構設計和統籌規劃 (微服務架構)
  • 使用 Golang , Gin, GORM 開發後端 API,資料庫使用 PostgreSQL
  • 使用 Redis 快取使用者 token、︀存取權限、︀SQL 查詢結果等資料,提升 API 和 Thrift Server 響應速度
  • 修改 Apache Livy 開源專案以實現身分和權限驗證、︀SQL 解析器等功能, 使用 Java 和 Scala

產品介紹

Paragraph image 00 00@2x

多管道訊息通知服務 (Notification)       研華科技, 2017.01~至今

它是一個多管道的訊息通知服務主要是提供給內部產品與客戶整合使用,此服務整合了 Email, LINE, WeChat, WhatsApp, Telegram, Voicecall 等主流的通訊管道也提供 Webhook 功能可以呼叫第三方 API。使用者只需要實作單一接口就可以推播通知到各種管道,另外也有提供排程發送和訊息範本功能。 

開發技術:Node.js, Vue.js, PostgreSQL, RabbitMQ, K8s

負責工作:

  • 整體系統架構設計和統籌規劃 (微服務架構)
  • 使用 Node.js 開發後端 API ,並使用工廠模式 (Factory Pattern) 設計模式開發各種通知管道提升程式碼擴展性

產品介紹

Paragraph image 00 00@2x

資料中樞服務 (DataHub)                        研華科技, 2017.01~至今

針對時間序列 (Time-Series) 資料的處理服務,提供資料蒐集、資料聚合、資料監控 與警報通知的功能。基於此服務能夠輕鬆建立出 IoT 情境的應用,可適用於智慧工廠、智慧城市或車聯網等物聯網情境,幫助企業應用快速落地。並提供六種主流語言的 Edge SDK 供用戶整合,廣泛支援各種物聯網設備、閘道器和系統軟體,且可以應用於各種作業系統和硬體環境。

開發技術(Cloud):Node.js, Vue.js, PostgreSQL, MongoDB, InfluxDB, Redis, RabbitMQ, K8s

開發技術(設備端 SDK):C, C#, Java, Python, Golang, Node.js, SQLite

負責工作:
  • 整體系統架構設計和統籌規劃 (微服務架構)
  • 使用 Node.js 開發後端資料處理模組(Dataworker) ,功能包含資料處理、設備管理、警報觸發、規則引擎等,具備管理上萬台設備的經驗
  • 使用 Node.js 開發共用組件 (Utility),功能包含:
    • 使用 Redis 快取設備相關資料,提升資料查詢速度
    • 支援 MongoDB 或 InfluxDB 作為設備資料的儲存體選項,開發對應的資料查詢功能,並使用工廠模式 (Factory Pattern) 設計模式提升程式碼擴展性
  • 設備端 SDK (C#, Python, Node.js, Golang) 開發

產品介紹

Paragraph image 00 00@2x

CNC 工具機設備管理系統                   研華科技, 2016.01~2016.12

電腦數值控制 CNC 工具機是相當重要的機器設備,為了能有效地掌握廠內為數眾多的 CNC 工具機,管理者必須要充分了解各機台的現況,以便能在異常狀況發生時儘快恢復設備的正常運作,而此系統整合了各大廠牌的 CNC 工具機,可以提供管理者透過瀏覽器進行遠端監控。 系統是由 ASP.NET MVC 所開發的網頁應用程式,並結合了研華的自有產品 HMI/SCADA 圖控軟體,一方面透過此圖控軟體進行 CNC 工具機的資料收集,另一方面提供 Web 介面讓管理者容易地遠端管理 CNC 工具機。

開發技術:ASP.NET MVC, JavaScript, jQuery, Bootstrap

負責工作 (個人獨立完成):

  • 系統整體架構設計
  • 網頁前、後端各模組開發
  • 底層 CNC 通訊協定模組開發,使用 C/C++

Paragraph image 00 00@2x

SFT 生產追蹤系統                                研華科技, 2015.06~2015.12

生產現場資訊即時回饋並追蹤是此系統最主要的目的,系統是由 ASP.NET MVC 所開發的網頁應用程式,並結合了研華的自有產品 HMI/SCADA 圖控軟體,透過此軟體接收機台的生產數據,並介接鼎新的 SFT 後台系統,透過 API 進行資料交換。

開發技術:ASP.NET MVC, JavaScript, jQuery, Bootstrap

負責工作 (個人獨立完成):
  • 系統整體架構設計
  • 網頁前、後端各模組功能開發 

Paragraph image 00 00@2x

圖控軟體 Node-RED Editor                研華科技, 2015.10~2016.06

Node-RED 為一在瀏覽器上使用簡易拖拉與配置即可將各 IoT 裝置連結起來並做進一步應用的開源軟體,而 HMI/SCADA 圖控軟體希望藉由 Node-RED 的整合,使得使用者能夠簡易的拖拉 Node-RED 節點即可輕鬆使用圖控軟體 Web Services 的各項功能,輕易完成資料串接的工作,最後可以在前端 Dashboard 作資料視覺化呈現。

開發技術:Node-RED

負責工作:Node-RED 節點功能開發,使用 Node.js

Paragraph image 00 00@2x

自動化報表分析系統                            旺矽科技, 2012.05~2014.03

系統利用 File Watch 機制,即時監控機台報表產生,並自動進行報表轉檔、良率分析、資料紀錄或其他客製化功能,例如:自動化 Binning、機台報警郵件通知等。使用者可透過查詢功能,即時查詢感興趣的統計圖表。統計圖表是利用 HTML5 和JavaScript 實作,顯示於 WebKit 元件上,比起傳統 C#.NET 控制元件能夠達到更美觀更有效率的圖表功能。也因為如此,在 Wafer Map 圖表繪製功能,採用 HTML5 Canvas 繪圖功能來處理。首先使用 DOM API 讀取報表,再透過 JavaScript 繪製於Canvas 中。因為一個 Wafe r上 Chip 動輒幾十萬顆,又需要根據每顆 Chip 等級繪製不同顏色,因為 HTML5 繪圖功能有使用 GPU 加速處理,所以採用此作法,實驗結果也證明此方法比傳統方法速度上快了約 3 倍。

開發技術:C#.NET, JavaScript, SQLite, HTML5, AJAX, XSLT檔案轉換

負責工作:系統整體架構設計,各模組功能開發 

Paragraph image 00 00@2x

製造執行系統(MES)                             友達光電, 2010.09~2012.05

友達光電 TFT-LCD 模組段所有工廠(約 20 個)所使用,目的是收集現場資料及控制現場製造流程,提供企業改善製程、提高生產效益的工具,達到掌握產品在每一個生產階段的即時資訊。前端 UI 層專注於操作流程和資料顯示,後端 AP 層負責接收請求執行交易邏輯 (Transaction) 和與資料庫層連線存取資料,UI 層與 AP 層則透過Message Queue 方式溝通。前段製程和過帳後入庫資料皆會透過 Web Services 方式傳遞給其他系統。另外,一些歷史資料轉換和搬移備份動作會由 ETL 程式負責,以達到資料庫效能的最佳化。

開發技術:VB.NET, ASP.NET, Oracle, MySQL, Web Services, Crystal Report 

負責工作:
  • SA (System Analyst) - 使用者需求分析和資料流設計,並根據需求規劃操作流程。
  • SD (System Designer) - 維護現有系統以及開發新的功能模組。 

Paragraph image 00 00@2x