V7mvgzwzetsdtiafc1gc

Chiu Hao-Chien

四年前端經驗,主要接觸 TypeScript 與 React 生態系。近兩年開始學習後端,接觸過 Golang 與 NodeJS 生態系。

Software Engineer
Taipei,TW
[email protected]

技能


前端:JavaScript、TypeScript、React、Redux、redux-observable、React Router、React Hook Form、Apollo Client
            HTML/CSS、styled-components
後端:Golang、MySQL、BigQuery、PubSub、Docker、Kubernetes、NodeJS、GraphQL
工具:Git

工作經歷

Taiwan Public Television Service FoundationBackend Engineer, August 2023 ~ 

  • 在全端框架(NextJS + NestJS)下,以 GraphQL 串接資料,以 TypeORM 處理 PostgreSQL,維護 ptsplus.tv,並持續開發新功能
  • 調整首頁影片列表,於前端實作無限捲動功能,後端實作對應的 pagination,有效降低首頁載入時間
  • 優化 CMS 後台操作頁面,調整前端 component render 方式,並限制 api 僅存取必要的 table join,有效降低回應時間
  • 調整 GCP CloudCDN 之 signed url 時效,前端以 polling 方式更換,維持影片播放順暢
  • 導入 redis 作為 cache,解決 k8s 內多個 pod 的資源不同步問題
  • 導入 database migration,對 schema 進行版本控制
  • 導入結構化 logging,以利團隊在 GCP Cloud Logging 上有效排查錯誤
  • 協助 Google Tag Manager 導向 Google Analytics POC,定義 tracking 機制


Company@2x

iKala Interactive Media Inc, Senior Software Engineer, March 2020 ~ March 2023

(後端 2021/7 -2023/3)

  • 使用 Golang 以 async 方式實作 CDP 資料匯入模組,以 PubSub 進行 api server 與 worker 之溝通,以 CloudSQL 紀錄匯入資源,並將用戶匯入之資料(會員資料、事件資料)更新至 BigQuery,供應用層服務使用 
    • 同時可以處理 200 萬筆事件資料
  • 透過 pprof 做 profiling 確認匯入功能之 pod memory 瓶頸,並透過批次處理,限制單次匯入的最高 memory 使用量,避免 out of memory
    • 同時可以處理 10 個事件資料匯入任務
  • 擴充 metadata 模組,實作維度表功能,讓客戶能夠針對不同類型的資料(會員資料、事件資料)進行擴充
  • 參與 ai 部門跨部門合作,負責主要架構設計與實作 
    • 流程:從 metadata 模組建立商品維度表,資料匯入後篩選出「待建立」以及「待更新」的表,再將資料送至 ai 部門,並透過 webhook 取得針對商品之相關熱門標籤與推薦網紅,存入 CloudSQL,再將資料透過 api 顯示給前端呈現 
  • 實作資料匯出功能,對超過 BigQuery 資料匯出上限(1 Gb)的表進行分割,匯出成多份 csv,讓客戶能夠將資料進行其他第三方服務串接
  • 協助導入 Apiary 製作 CDP api 文件,並在所有對外 api 加上 rate limit


(前端 2020/3 - 2021/6)

  • 使用 Create React App 搭配 TypeScript、ESLint、Prettier 建置新專案,實作多語系(react-i18next),串接 RESTful API(redux-observable & axios) 開發多個 CRUD 功能,並使用 Material-UI 搭配 styled-components 進行 UI 元件開發
  • 開發行銷名單篩選編輯器,可建立至多三層 AND 與 OR 之巢狀條件,並有效減少 re-render 次數
  • 開發漏斗分析編輯器,以 RTK Query 串接 api,並以 ApexCharts 進行圖表繪製


Company@2x

91App, Inc, Software Engineer, May 2019 ~ Feb 2020

  • 協助團隊進行 React 生態系之套件升版(React、Redux、React Redux、redux-observable、RxJS)
  • 參與商品分類頁開發,串接 React Router 做 Client-Side Rendering 優化使用者體驗,以 React Hooks 和 styled-components 開發多個元件
  • 協助團隊導入 Redux Toolkit 優化開發流程,透過 TypeScript 保護型別,降低重構及維護成本


Company@2x

17 Media, Software Engineer, Mar 2018 ~ Jan 2019

  • 學習 React 生態系並參與多個內部系統開發
  • 參與製作與華視午間新聞合作之動態圓餅圖,即時顯示觀眾投票結果

Company@2x

Gamesofa Inc., Software Engineer, Oct 2016 ~ Feb 2018

  • 利用遊戲引擎 Cocos Creator 撰寫 JavaScript 製作網頁遊戲,如德州撲克、大老二、十三支、鬥地主
  • 撰寫大老二之牌型預測(順子、葫蘆提示)與十三支之牌型推薦演算法

Company@2x

學歷

交通大學, 科學碩士(MS), 光電工程學系, 2013 ~ 2016

交通大學, 學士學位, 電機資訊學士班, 2009 ~ 2013