近期經驗
電子郵件歸檔平台
CTO 與資深全端開發者
負責一套完整、企業級的電子郵件歸檔與合規平台,服務多個全球客戶。該平台在 AWS 雲端基礎設施與地端部署上每日處理數百萬封電子郵件。
主要技術: TypeScript, Node.js, Go, Java 21, Spring Boot 3.5, React, Next.js, MongoDB, MySQL, Kafka, Kubernetes, Helm, Ansible ELK, Prometheus, Grafana, AWS, Docker, Cypress, Redis, Prisma, SAML 2.0, OAuth2
Infrastructure & DevOps
Kubernetes Deployments: 為所有平台服務建立 50+ 份 Helm chart 設定。實作自動擴縮政策、pod disruption budgets 與 network policies,以確保服務間通訊安全。
AWS Infrastructure: 使用 CloudFormation templates 與 Ansible playbooks 在多個 AWS 區域建立自動化部署管線。管理 VPN gateways、IAM roles、security groups 與 Route53 DNS 設定。
CI/CD: 導入 Azure Pipelines 進行自動化測試與容器建置。包含使用 Jest 與 Mocha 的平行化測試執行、程式碼覆蓋率報告,以及多階段部署管線。
Monitoring: 整合 Prometheus 指標蒐集、Grafana 儀表板與 ELK stack 進行日誌彙整。實作服務健康檢查與告警政策。
Docker Development Environments: 設計完整的 docker-compose 設定用於本機開發,包括:
- 具備 mongosh health checks 的 MongoDB replica sets
- 具備自訂 collation 設定的 MySQL/Percona 資料庫
- 具備 topic initialisation 的 Kafka/Zookeeper clusters
- 具備 bucket 建立的 MinIO(S3 相容)伺服器
- 具備相依性協調的多服務架構
- 開發工具:kubectl proxy、mongo-express、kafdrop、MySQL clients
Docker Container Images: 使用 multi-stage builds 建置並最佳化以下容器映像:
- Node.js services: 基於 Alpine 的映像,包含 TypeScript 編譯、使用
node-prune進行容量最佳化,並以 distroless runners 將執行期 footprint 降到最低 - Go services: 基於 Devcontainer 的映像,包含 librdkafka 相依套件以支援 Kafka 連線
- Ubuntu base images: 預先設定 Node.js、Java JDK、AWS CLI 與開發工具的自訂映像
Ubuntu Base Container: 建置並維護一個 Ubuntu 22.04 base image,內含 Node.js、Java JDK 24、AWS CLI、ZooKeeper、etcd、Kafka 及開發工具,以提供一致的建置環境。
CloudShell Container: 建置 Azure Cloud Shell base 與 tools 容器,內含 PowerShell 7 與多種 Azure SDK,用於 Microsoft 雲端管理工作流程。
VS Code Dev Containers: 為多個服務設定開發容器環境,支援遠端開發、SSH passthrough 與擴充套件管理。
Database & Data Management
MongoDB: 以 replica sets 提供高可用性的文件型資料庫。使用 mongodump/mongorestore 實作自動備份與災難復原流程。
MySQL/Percona: 用於結構化資料的關聯式資料庫,具備使用 myloader/mydumper 的 Percona 備份與還原流程,以支援高效率資料遷移。
CouchDB: 用於分散式資料儲存的叢集化文件型資料庫,採多節點部署。
Database Migration: 開發 MySQL 與 MongoDB clusters 之間的資料遷移工具,支援大規模資料傳輸,並可針對類生產資料集進行整合測試。
Claude Code 開發環境(ralph-agent)
個人專案 - AI 開發環境
建立一套以 Docker 為基礎、針對使用 Claude Code 的長時間執行 AI agent 任務而最佳化的開發環境。具備 non-root 使用者設定、SSH 與 Git passthrough、透過 NVM 自動管理 Node.js 版本,以及與 VS Code Remote Development 相容。
主要技術: Docker, Ubuntu 24.04, Node.js, VS Code Remote
摘要
具備建置可擴展、多租戶企業級 SaaS 平台的豐富經驗,並在完整技術棧上擁有專業能力。已證實能夠規劃微服務架構、實作穩健的 CI/CD 管線,並管理複雜的雲端基礎設施部署。在驗證系統、事件驅動架構與現代前端框架方面有深厚背景,並專注於可維護、測試完善的程式碼基底。
技術摘要
| Technology | Purpose |
|---|---|
| TypeScript | API 主要語言(Fastify、Express)、前端(Next.js、React)、共用型別函式庫(@cryoserver/types) |
| Node.js | 10+ 個微服務的後端執行環境 |
| Go | 用於高效能郵件傳輸的 SMTP 服務 |
| React | 面向客戶與內部管理後台儀表板的 UI 框架 |
| Next.js | 面向客戶 UI 的 React 框架 |
| MongoDB | 使用者與設定資料的主要文件型資料庫 |
| MySQL/Percona | 用於結構化資料的關聯式資料庫,搭配 Prisma ORM 使用 |
| CouchDB | 用於分散式資料的叢集化文件型資料庫 |
| Redis | Session 快取 |
| Kafka/KafkaJS | 微服務間的事件驅動訊息傳遞 |
| Kubernetes | 生產環境部署的容器編排 |
| Helm | 50+ 份 Kubernetes chart 設定的套件管理工具 |
| Ansible | 基礎設施佈署與組態管理(AWS、Azure) |
| Docker | 所有服務的容器化,採 multi-stage builds |
| AWS SDK | 與 S3、IAM、Cognito 與其他 AWS 服務整合 |
| OAuth2/JWT | API 驗證與授權 |
| Cypress | 前端應用的端對端與元件測試 |
| Prisma | 用於 MySQL migrations 的型別安全資料庫 ORM |
| Zod | TypeScript 型別的執行期驗證 |
| MUI (Material UI) | Next.js 應用的 UI 元件函式庫 |
| Puppeteer | PDF 產生 |
| Node-RD Kafka | Node.js 服務的 Kafka client |
| Solr | 搜尋索引與查詢服務 |
| Prometheus/Grafana | 指標蒐集與視覺化 |
| ELK Stack | Elasticsearch、Logstash、Kibana 的集中式日誌 |
| Azure Pipelines | 自動化建置與部署的 CI/CD |
| Playwright/MCP | 用於 AI 驅動 UI 測試的瀏覽器自動化 |
| llama.cpp | 實驗性 CLI 工具的本機 LLM 推論 |
| Shibboleth SP | 用於 SAML 2.0 federation 的 Apache 模組 |
| ZooKeeper | Kafka 與 Solr 叢集的協調服務 |
| MinIO | 用於本機開發的 S3 相容儲存 |
| Maven | Java 專案建置工具,包含 Surefire 測試 |
| TurboRepo | 用於管理多個 Next.js 應用的 Monorepo 工具 |
