C:\_
portfolio.bat
cmd.exe
Microsoft Windows [Version 10.0]
C:\Users\tian> _
tian@portfolio:~
$ _
$ _
_
$ _
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
About Me
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
程式起源從我小六開始,為了解決家裡老電腦跑不動遊戲,
自己上網找了很多能最佳化遊戲的方法,不斷的嘗試。
從晚上八點開始不停止的爬文做功課,在凌晨五點的早上
終於被我完成人生中第一個程式碼。
是一個 CMD 的指令:
nba2k_optimize.bat
@echo off
:: 開始效能電源模式
powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61
powercfg /setactive e9a42b02-d5df-448d-aa00-03f14749eb61
:: 清除系統暫存
del /q /f /s "%TEMP%\*.*"
del /q /f /s "C:\Windows\Temp\*.*"
:: 清除 Cache
del /q /s /f "%AppData%\2K Sports\NBA 2K11\Cache\*.*"
:: 啟動nba2k11.exe 指令
start /high "" "nba2k11.exe"
exit
當腳本執行、遊戲再次開啟後,看著 FPS 從 30 左右提升到 50+,
那種「僅僅幾行程式碼就能讓體驗大幅改善」的衝擊感,
加上能馬上看到成果的回饋,讓我獲得了前所未有的成就感。
自此,我便慢慢踏入了 Coding 的這條「不歸路」,
這份對技術的純粹熱忱延續至今。
$ _
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Technical Expertise
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
backend/
├── Go (Golang)
├── C# (.NET)
└── TypeScript / Node.js
architecture/
├── Clean Architecture
├── 3-Tier Architecture
├── 物件導向設計
└── 微服務架構
database/
├── PostgreSQL
├── MS SQL Server
├── MySQL
├── MongoDB
├── SQLite
├── Redis
messaging/
├── RabbitMQ
└── ELK Stack
devops/
├── Docker / Docker Compose
├── GitHub Actions
├── Jenkins
├── AWS EC2
├── GCP CloudRun
├── Azure
├── Cloudflare
└── Nginx
other/
├── Telegram Bot API
├── LINE Bot API
├── Git / GitHub
├── RESTful API
└── JWT
$ _
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Projects
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
效能優化 - 主導高流量訊息系統重構,成功將系統效能提升 10 倍 [detail]
分析現有系統瓶頸,針對資料庫查詢、快取策略進行深度重構。
導入分散式系統架構,有效分流流量壓力,確保高負載下的系統穩定性。
架構設計能力 - 依據專案規模選用合適架構,具備 Clean Architecture 與 3-tier 的實戰設計經驗 [detail]
依據專案規模選用架構,小型專案採 3-tier 快速交付,複雜業務導入 Clean Architecture,嚴格遵守 SOLID 原則確保模組職責清晰。
透過清晰的模組分層與介面抽象,提升開發效率,使系統具備高度的可擴展性與可測試性。
技術債處理 - 優化累積多年的 ERP 核心系統,提升程式碼可維護性 [detail]
系統化梳理舊有代碼邏輯,導入現代化開發規範與單元測試。
顯著降低系統耦合度,縮短後續新功能開發的交付時間。
DevOps 實踐 - 建立完整的 CI/CD 自動化部署流程,提升團隊開發效率 [detail]
規範團隊 Git Flow 分支流程,建立統一的開發協作規範。
實作基於 Docker 的自動化部署流水線,整合 Unit Test 與 Build 流程,確保每次合併均通過驗證、專案能正確執行。
💡 「成就感來自於學習」- 持續精進技術能力,追求卓越的程式碼品質
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▸ 高流量訊息系統重構與優化
主導舊系統重構,解決高流量場景下的效能瓶頸
技術亮點:
• 採用 DDD 架構,並嚴格遵守 SOLID 原則
• 導入 Redis 取代 Memory Cache,讓多實例服務可共用快取資料
• 導入 ELK 作為集中式 Log 系統,提升除錯與問題追蹤效率
• 多實例、多服務同步運作
挑戰與解決方案:
• 專案間耦合性過高導致修改功能可能導致其他服務BUG → 引入DDD架構將功能模組化,減少專案間的關聯依賴
• 效能瓶頸難以定位 → 使用EXPLAIN分析資料庫查詢、程式碼加入Log紀錄執行時間,精準定位關鍵路徑瓶頸
• 主流程阻塞影響吞吐量 → 將同步執行流程改為非同步與多執行緒架構,避免主流程阻塞
• 單點吞吐量瓶頸 → 以 RabbitMQ 依訊息類型拆分任務,切分為多組獨立消費者程式並行處理
成果: 效能提升 10x (50-100 TPS → 1000+ TPS),系統穩定度大幅提升
Tech Stack: Go, MySQL, Redis, RabbitMQ, ELK, Docker
▸ 系統架構圖 (Architecture Diagram) [點擊展開/收合]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▸ 即時數據看板系統
採用微服務架構,實作即時資料串流與多端廣播
技術亮點:
• 採用 gRPC + Protobuf 取代 JSON,二進位序列化降低 Payload 體積與解析耗時
• 引入 Redis Pub/Sub 訊息一次發佈即同步分流,消除服務間點對點傳遞延遲
• 使用 WebSocket 連線取代輪詢機制造成的延遲
• 使用 Redis 與 PostgreSQL 依照需求選擇讀取路徑,減少單一服務負載
挑戰與解決方案:
• 高吞吐量訊息接收 → 使用 RabbitMQ 多 Exchange 並行消費,非同步接收大量即時訊息
• 前端即時性需求高 → 廣播服務訂閱 Redis 頻道後立即透過 WebSocket 推送至前端,省去輪詢,達到即時更新
Tech Stack: Go, RabbitMQ, gRPC, Redis, WebSocket, PostgreSQL, Docker
▸ 系統架構圖 (Architecture Diagram) [點擊展開/收合]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▸ 系統管理後台
從零建構系統管理後台
技術亮點:
• 從 0 開始獨自開發專案
• 使用 JWT + Middleware 驗證,確保 API 安全性
• 設計完整的 RBAC 權限系統,支援多層級角色與權限控制
• 使用 Docker Compose 統一開發、測試、正式環境
• 採用微服務架構,各模組獨立部署,降低變更風險
挑戰與解決方案:
• 需串聯不同系統間訊息傳遞 → 使用 RabbitMQ 實作訊息同步
成果: 完成系統從 MVP 到正式版的完整開發,成功上線並投入實際使用
Tech Stack: C# .NET 8, MS SQL, Redis, RabbitMQ, Docker, Jenkins
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▸ ERP 核心系統優化與重構
接手累積 5 年技術債的 ERP 系統
挑戰與解決方案:
• 核心查詢效能低落 → 重構 Stored Procedure,優化查詢邏輯(索引優化、執行計畫分析、Query Tuning),效能提升 300%
• 資料庫鎖定頻繁 → 解決多重關聯問題,使用 NOWAIT、優化 Cursor,減少 60% 鎖定時間
• MRP 計算邏輯長期錯誤 → 深入分析業務規則並修正判斷邏輯,協助公司有效降低呆滯庫存
• 缺乏系統文件 → 系統化梳理舊有代碼邏輯,建立完整技術文件,確保成員無須長時間摸索即可上手
• 程式碼可維護性差 → 導入現代化開發規範與單元測試,重構關鍵模組,顯著降低系統耦合度
成果: 系統回復可維護狀態,後續功能交付周期顯著縮短,MRP 修正直接改善庫存準確率,減少公司千萬呆滯庫存
Tech Stack: C# .NET 8, MS SQL AJAX, JavaScript
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▸ 企業應用系統開發
從需求了解、業務邏輯分析、系統開發到驗收交付的完整流程,開發多個企業應用系統
核心專案:
• CRM 客戶管理系統 - 實作權限控制、報表、操作日誌與自動化工作流程等核心功能
• 准考證套印系統 - 使用多執行緒優化,處理 50,000+ 張准考證
• 考試報到系統 - SQLite + 區網同步方案,支援離線作業,確保多台主機資料同步
• Delphi 舊系統重寫 - 將舊有 Delphi 系統以 C# 重寫,分析舊有系統功能與優化
Tech Stack: C# .NET 8, MS SQL, SQLite, EF, LINQ
$ _
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Side Projects
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[主要專案] stock-bot-golang ⭐ 1
台股查詢機器人 - 基於 Telegram/LINE 的即時股價、K線圖表、新聞訂閱系統
專案亮點:
• 採用 Clean Architecture 設計,確保程式碼可維護性
• 支援多平台整合 (Telegram + LINE)
• 即時股價查詢與訂閱功能
• K線圖表視覺化呈現
• 完整的 CI/CD 部署流程
• 使用 Zap 套件 搭配 Middleware 紀錄完整 Log 歷程
• 使用 Github Action 定時監控服務狀態,並設定主動通報機制
Tech Stack: Go 1.24, Clean Architecture, PostgreSQL, Docker
▸ 系統架構圖 (Architecture Diagram) [點擊展開/收合]
stock-bot-golang 系統架構圖
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
stock_bot_nodejs ⭐ 1
台股資訊查詢機器人 (Node.js 版本)
Tech Stack: TypeScript, Node.js, Telegram Bot, LINE Bot
▸ 系統架構圖 (Architecture Diagram) [點擊展開/收合]
架構圖待補充
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
tgbot_rssfeed ⭐ 1
Telegram RSS 訂閱服務機器人
Tech Stack: C#, .NET, Telegram Bot, RSS
▸ 系統架構圖 (Architecture Diagram) [點擊展開/收合]
架構圖待補充
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
fetch-sketchfab-data ⭐ 1
Sketchfab 排程 Demo 作品
Tech Stack: Go, Web Scraping, Scheduler
▸ 系統架構圖 (Architecture Diagram) [點擊展開/收合]
架構圖待補充
$ _
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Note
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
C#物件導向觀念
DRY原則
SOLID原則
資料庫觀念
Docker自動部署至EC2
Cloudflare設定HTTPS
$ _
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Statistics
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▸ GitHub 貢獻紀錄
GitHub Contributions
▸ LeetCode 解題紀錄
LeetCode Stats
$ _
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Contact
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
開放合作機會:
▸ 後端開發職位
▸ 系統架構設計
▸ 技術諮詢
▸ 開源專案協作
$ _