跳至主要內容
Gray Tsao
軟體工程師 · 什麼都試

Gray Tsao

什麼都試過一輪的軟體工程師:ERP 內核、YOLO 模型訓練、LLM 應用、上線部署,還有坐下來問清楚對方到底要什麼。

技能

我真正會動手用的東西

四年寫程式。範圍拉得開,是因為需求來了就得接。熟練度是自評,而且刻意保守。

領域正式環境用過的工具熟練度
程式語言Python · TypeScript / JavaScript · C / C++ · SQL
4 年以上
後端與網頁FastAPI · NestJS · Express · React · Zustand / Redux · REST 設計
每天在用
LLM 應用Pydantic AI · RAG 管線 · pgvector · 工具編排 · 結構化輸出
已上線
企業系統 / ERP訂單流程設計 · 資料模型 · 表單驗證 · Asana 整合
已上線
電腦視覺YOLO / YOLOv11s 微調 · Ultralytics · PyTorch · 資料標註
已上線
需求與交付需求訪談 · 流程盤點 · 規格撰寫 · UI/UX 取捨
已上線
資料PostgreSQL · MongoDB · MySQL · Redis · Firebase
可獨立作業
基礎設施與部署Git · Docker · GitHub Actions · GCP · Cloudflare · Linux
可獨立作業

熟練度分三級:每天在用 · 已交付上線 · 可獨立作業。這裡沒有一項是因為寫在投影片上好看才列的。

CPE 專業級 — 213 / 2,515 · 英文 IELTS 6.5 · 中文母語

經歷

四年,照順序

  1. 2026年1月 — 至今

    軟體工程師實習生 — ERP 與 AI 整合

    現職
    InstaVoxel · 台灣
    • 以唯一工程師身分設計並交付端到端的訂單建立模組 —— 資料模型、表單流程、驗證邏輯 —— 讓建單時間從數小時縮短到 10–15 分鐘。
    • 打造 Pydantic AI 檢索代理,串接向量搜尋、資料庫直接讀寫與 Asana 訂單查詢,並輸出型別安全的結構化結果。
    • 依照公司實際在跑的流程建立領域知識庫,而不是流程圖上希望它跑的那一套。
    ReactNestJSFastAPIPydantic AIGCP
  2. 2025年5月 — 2026年4月

    共同創辦人

    KindReach · 台灣
    • 共同創辦服務業餘運動社群的運動科技新創 —— 產品方向、技術架構、團隊執行。
    • 獨力完成羽球自動剪輯系統,從資料管線一路做到上線產品。
    • 共同開發運動揪團平台至 800+ 活躍使用者,在功能開發與基礎設施、CI/CD 之間取捨。
    ReactExpressYOLOMongoDBFirebase
  3. 2023年8月 — 2024年7月

    足球社社長

    逢甲大學 · 台中

    預算、行政文書、比賽日調度與社員招募。會列出來,是因為經營社團教我的需求訪談,比任何一堂課都多。

  4. 2022年9月 — 2026年6月

    資訊工程學系 學士

    逢甲大學 · GPA 3.5 / 4.3

    人工智慧、影像處理、資料結構與演算法、資料庫系統、軟體工程與軟體測試。

作品

八個專案,八種問題

整份清單一直留在畫面上,沒有人會滑過自己真正想看的那一個。

個人專案 · 2026年6月 — 至今

Paper Anchor

RAG

可自架的論文閱讀器,答案錨定引用:LLM 的每一句回答都能連回原始 PDF 中那一段被標記的原文。

15 / 15
引用完整性評測
EN / zh-TW
雙語介面
做了什麼
  • bbox 等級的引用錨定管線 —— PDF 切塊、嵌入、檢索 —— 全部不靠 LangChain 自己寫。
  • 雙欄閱讀器,選取即提問:任何一段都能要求解釋、翻譯或反駁。
  • 後端不綁供應商:任何 OpenAI 相容 API 都能接,embedding 還能全程跑在本機、不需要金鑰。
ReactTypeScriptPDF.jsFastAPIPostgreSQL + pgvectorPyMuPDFPydantic AIDocker
個人專案 · 2026年5月 — 至今

Orthoshot

CAD

在瀏覽器裡打開 STEP,量出尺寸與重量,一鍵匯出十張標準視角快照。沒有後端,零件幾何不離開使用者的機器。

10
一次匯出的標準視角
220 kB
首屏 JS(three 不在關鍵路徑)
0
檔案上傳
做了什麼
  • 快照走離屏正交相機、固定用模型原始姿態,並經 three 的 OutputPass 套上與畫面相同的 tone mapping 與色彩空間——否則每張匯出的 PNG 都會比畫面暗。
  • STEP 以 occt-import-js(OpenCascade WASM)在瀏覽器端解析,幾何一律是公釐,靠一行明確傳入的 linearUnit 而不是函式庫預設。
  • 改成 Vite MPA 後中英各是一份爬蟲讀得到的靜態文件;文案刻意放在 #root 之外,因為 createRoot() 會清空那棵子樹。
TypeScriptReact 19three.jsocct-import-js (WASM)ViteVitestCloudflare Pages
個人專案 · 2026年5月 — 至今

Enterprise RAG Assistant

RAG

企業知識庫的 RAG 後端:多租戶隔離做在 SQL 層,租戶身分只能來自 API key;為了中文,混合檢索的詞彙臂改用字元三連詞。

97.2%
混合檢索 recall@1
111
CI 上零外部相依的測試
做了什麼
  • 多租戶隔離寫在 SQL 裡:每張表都帶 tenant_id,租戶身分從 API key 推導,X-Tenant-Id 標頭完全被忽略。
  • 混合檢索:向量 kNN 與 pg_trgm 三連詞兩份排名用 RRF 融合,因為 tsvector 切不開中文。
  • 20 份文件 × 36 題的檢索評測,附上一份說清楚它目前還證明不了什麼的解讀。
PythonFastAPIPostgreSQL + pgvectorpydantic-aipsycopg 3DockerGitHub Actions
InstaVoxel · 2026年1月 — 至今

流程型 ERP 系統

ERP

用一條建單流程取代原本零碎的多段人工作業 —— 從需求訪談到上線,模組上只有我一個工程師。

約 15 分鐘
原本要數小時
1
模組上的工程師人數
做了什麼
  • 依照真實的下單流程重新設計資料模型、表單動線與驗證邏輯。
  • 一手包辦需求訪談、UI/UX、後端架構與正式環境部署。
  • 用 Claude Code 加速骨架搭建,架構決策仍然自己拿。
ReactZustandNestJSFastAPITypeScriptGCPGitHub Actions
KindReach · 2025年5月 — 2026年4月

羽球自動剪輯系統

Vision

輕量、以行動裝置為主的系統,會自己剪羽球影片:YOLO 追蹤羽球軌跡,只留下真正的來回。

行動優先
目標裝置
端到端
獨立完成
做了什麼
  • 以 YOLO 偵測羽球軌跡,判斷哪些片段值得保留。
  • 整條路自己走完:資料管線、模型整合、產品。
ReactExpressFastAPIYOLOMongoDB
KindReach · 2025年2月 — 2026年4月

運動揪團平台

Product

給業餘運動社群用的活動揪團工具 —— 這個產品先找到了使用者,接下來得想辦法留住他們。

800+
活躍使用者
CI/CD
自己維護的管線
做了什麼
  • 產品策略、系統架構與全端開發。
  • 建立整個團隊賴以出貨的 CI/CD 管線。
ReactReduxExpressFirebaseTypeScriptGitHub Actions
KindReach · 2025年2月 — 6月

特定車輛辨識

Vision

五百張影像逐一手工標註,再用遷移學習微調 YOLOv11s,直到每個解析度下的數字都站得住。

>90%
763 / 986 / 1024px 下的精確率
500
手工標註影像數
做了什麼
  • 資料集自己建:蒐集、標註、增強。
  • 以遷移學習微調 YOLOv11s,並跨輸入解析度驗證。
PythonPyTorchUltralytics YOLOv11
逢甲大學 專題 · 2025

Commit 摘要工具

LLM

讀取你在 GitHub 收藏的專案,讓 LLM 說明 commit 之間到底改了什麼。

LLM
差異摘要
專題
大學專題
做了什麼
  • 透過 GitHub API 取得收藏專案與 commit 差異。
  • 摘要快取在 Redis,讓重複閱讀成本很低。
ReactTypeScriptFastAPIRedis
聯絡

說點具體的

寄信最快。我會在一個工作天內回覆,通常帶著比答案更多的問題。

或直接在這裡留言
所在地
新北,台灣 · UTC+8
狀態
2026年6月畢業 · 軟體工程職缺洽談中
Gray Tsao© 2026 · 最後更新 2026年8月