MOC-工程
範圍
從程式碼協作、review、版本控制、風格一致性,到系統設計、可擴展性、分散式元件、爬蟲與 web 基礎設施;本 MOC 處理「軟體如何被可靠地建構、協作、擴展與運行」。
核心命題
工程不是把功能做出來而已,而是讓系統在多人協作、流量成長、資料增加、工具演化與故障發生時仍然可理解、可修改、可回滾、可觀測。
四條主線:
- 協作紀律:分支、PR、code review、style guide 讓多人改動不污染主線。
- 架構設計:需求、容量、資料流、服務邊界與 failure mode 共同決定架構。
- 運行與擴展:快取、佇列、分片、監控、告警與自動化讓系統變大後仍可操作。
- 工具加速但不卸責:AI / 自動化可以加速開發,但驗證、取捨與 codebase health 仍是人的工程責任。
- Agent 試錯要被工程化:Vibe-Coding 可以快速產生原型,但專業軟體需要 Agentic-Engineering 的 spec、metric、邊界、time budget 與 rollback。
主軸(核心頁)
協作與 codebase health
- GitHub工作流 — feature branch → PR → review → squash merge 的協作骨架。
- Pull-Request — 託管平台上的 review + 合併介面。
- Code-Review — 以 codebase health 為目的的品質治理與回饋機制。
- 程式碼風格指南 — 讓多人寫出的程式碼像同一個人寫的協作收斂工具。
- 完成的定義 — 任務何時真的完成;在工程場景中包含測試、整合、review 與可交付狀態。
系統設計與架構
- 系統設計 — 把需求、容量、資料流、服務邊界、失效模式與取捨組成架構。
- 系統設計面試 — 工程能力在技術面試中的開放題呈現方式。
- 可擴展性 — 流量、資料量、地理範圍與團隊規模變大時的演化能力。
- 封底估算 — 用數量級估算檢查 QPS、儲存、頻寬、可用性與瓶頸。
- 分散式系統元件 — 負載均衡、快取、CDN、佇列、分片、限流、唯一 ID、監控告警等基礎積木。
Web / 資料取得 / 基礎設施鄰接
- 網頁爬蟲 — 自動讀取網頁並抽取資料;本 MOC 關心其工程、合法邊界與分散式擴展。
- 技術SEO — 讓搜尋引擎能檢索、建立索引與理解網站的工程協作面。
- Core-Web-Vitals — Google 把 UX 體驗量化成網頁性能指標;前端工程、SEO 與 UX 的交會。
- 智慧型API — 外部能力作為 API 進入產品時,依賴邊界與可用性也成為系統設計問題。
AI 輔助工程
- AI輔助開發 — LLM 協助程式碼轉換、配置、命令翻譯、技術選型與除錯;加速不等於取代工程判斷。
- Vibe-Coding — 用自然語言快速生成可跑軟體;適合作為原型入口,不應替代 review / 測試 / 架構判斷。
- Agentic-Engineering — 把 agent 放進可驗證、可回滾、可限制成本的工程環境,讓大量試錯不破壞系統。
- Goal-Prompt — long-running agent 的任務規格:完成狀態、驗證方法、可改範圍、迭代紀錄與停損回報。
- Context-Engineering — 在 agent / CLI 開發情境中,為模型提供正確 codebase context 的工程化操作。
- LLM-Evaluation — 當 AI 進入 production workflow,eval 成為工程可靠性的一部分。
鄰接領域
- MOC-LLM-應用設計:處理 LLM 產品 / agentic workflow / eval / tools;與本 MOC 在 AI 工程與 production reliability 重疊。
- MOC-資料科學:資料取得、資料管線、資料品質與資料工程是資料科學的工程基礎;本 MOC 提供 broader engineering context。
- MOC-產品管理:產品需求與交付節奏會牽動工程取捨;敏捷增量、DoD、技術債與可擴展性都是 PM × RD 邊界問題。
- MOC-UX / MOC-行銷增長:技術 SEO、Core Web Vitals、網站速度與可爬取性是 UX / SEO / 工程交界。
實體
- Git — 版本控制系統;分支與 commit 是工程協作的底層。
- GitHub — PR / review / CI 狀態整合的主要平台之一。
- 你的Py教練Mike — vault 中第一個 Python / 爬蟲工程來源供應者。
- Google — Code Review 準則、Core Web Vitals 與搜尋基礎設施相關來源的高頻錨點。
來源累積(reverse-chronological)
- 2026-05-18-Karpathy-Software-3-Agentic-Engineering — 補入 Vibe-Coding / Agentic-Engineering 的下限 / 上限分工,以及 agent 產物仍需系統設計、驗證、回滾與 codebase health 責任。
- 2026-05-25-Gary-Chen-AI-Agent-27小時-Goal功能 — 補入 long-running agent 的 Goal-Prompt:outcome、verification、constraints、iteration policy 與 error handling。
- 2026-05-14-搞定系統設計面試 — 建立 系統設計 / 系統設計面試 / 可擴展性 / 封底估算 / 分散式系統元件,讓工程 cluster 從 code workflow 擴展到大型系統架構。
- 2026-05-06-Google-Code-Review — 補入 code review 的設計、功能、複雜度、測試、命名、註解、文件與速度判準。
- 2026-05-01-十分鐘GitHub工作流 — 建立 GitHub workflow / PR / branch / squash merge 的協作骨架。
- 2026-05-01-Code-Guide-mdo-HTML-CSS規範 — 建立程式碼風格指南與「單一作者錯覺」。
- 2026-05-01-Mike-反爬蟲檢測7招 — 建立網頁爬蟲與反偵測工程錨點。
- 2026-05-01-Welly-技術SEO9大項目 — 建立技術 SEO、Core Web Vitals 與搜尋引擎爬取友善度的工程 / 行銷交界。
備註
本 MOC 消化觀察清單中的 [[MOC-工程|MOC-工程紀律]] / [[MOC-工程]] 候選。命名採 MOC-工程,因範圍已超過 code review / style guide 等「紀律」層,延伸到系統設計、可擴展性、web infra 與 AI-assisted engineering。