---
title: "ShipReal: 從 Vibe Coder 到真正的工程師"
description: "你的 AI 把 App 寫出來了。撐住它的那一段，沒有人寫。 這門 20 小時的課程補上這段落差。"
canonical: "https://shipreal.dev/zh-hant"
last-updated: "2026-09-01"
---

# 從 Vibe Coder 到真正的工程師

> 你的 AI 把 App 寫出來了。撐住它的那一段，沒有人寫。 這門 20 小時的課程補上這段落差。

**38 章，真實事故檢討、實作作業與自評測驗。** [YouTube](https://www.youtube.com/watch?v=fyHbx9de3GI&list=PLFEcqBh9-Xwo) · [Teachable](https://shipreal.teachable.com/courses/course/lectures/66619411)

## 課程內容

### 導論

整門課的地圖：每一章的深入會交付什麼，以及十一篇怎麼一層層疊上去。

- **導論：前方的路** (13 個單元, ~25 min): 把地圖攤在桌上：38 章全貌、每一次深入會交付什麼，以及出事時該直接跳到哪一章。

### 第 1 篇: 心態轉換

重新接線，換掉你對「能動的軟體」的想法：系統、狀態與取捨。這層判斷力 AI 給不了。

- **「它能跑」的錯覺** (12 個單元, ~28 min): 請求的生命週期、環境，還有正式環境這座冰山：為什麼「我筆電跑得動」幾乎什麼都不代表。
- **用系統與狀態思考** (12 個單元, ~29 min): 狀態、副作用與冪等：為什麼「再跑一次就好」有時候只會更糟。
- **決策、複雜度與抽象** (14 個單元, ~36 min): 取捨、YAGNI，以及抽象什麼時候值回房租：AI 沒辦法替你下的那些判斷。

### 第 2 篇: 開發者的地基

每天的手藝：把 Git 當思考工具、AI 原生的工作流程、執行期、演算法、前端架構，以及相依套件的地雷區。

- **把版本控制當成思考工具** (13 個單元, ~33 min): Git 不只是 commit 和 push：分支策略、bisect，以及把 blame 當考古學用。
- **AI 原生的工程工作流程** (13 個單元, ~31 min): 把下提示詞當成寫規格、審不是你寫的程式碼，以及讓 AI 的速度不出事的那些護欄。
- **程式碼怎麼跑：執行期那一層** (13 個單元, ~33 min): 行程、記憶體與事件迴圈：Node 為什麼會卡住，Python 的 GIL 為什麼有差。
- **演算法思維：複雜度與資料結構** (13 個單元, ~27 min): Big-O 的直覺，以及陣列、雜湊表與樹怎麼選：N 平方會在 10,000 個使用者的時候悄悄弄死你。
- **前端架構：AI 幫你蓋了什麼（又蓋壞了什麼）** (13 個單元, ~35 min): 渲染模型、狀態管理，以及 AI 幫你搭錯的那幾塊前端。
- **相依套件管理：那片看不見的地雷區** (12 個單元, ~31 min): 鎖定檔、semver 的謊言與供應鏈攻擊：left-pad 的故事，以及怎麼不去主演續集。

### 第 3 篇: 資料層

把資料庫當成心智模型：先有資料表和索引再談查詢、不再怕 SQL，以及不會弄掛正式環境的遷移。

- **資料庫基礎：用資料思考** (13 個單元, ~33 min): 在寫下第一行查詢之前，先用資料表、索引與約束來思考。
- **SQL 與查詢思維** (13 個單元, ~33 min): 不再怕 JOIN、真的讀得懂的查詢計畫，以及規模一大就熔掉的那些查詢。
- **規模化的資料：異動、遷移與其後** (13 個單元, ~34 min): 異動、遷移與回填，而且不會順手把正式環境一起弄掛。

### 第 4 篇: 網路與契約

系統之間怎麼對話：把 APIs 當契約、每個請求所依附的 DNS 到 HTTP 那條鏈，以及即時通訊模式。

- **把 API 設計成契約** (13 個單元, ~35 min): REST 與 RPC 兩種思路、版本管理，以及在不弄壞下游的前提下讓 APIs 繼續長大。
- **網路基礎** (12 個單元, ~33 min): DNS、TCP、TLS、HTTP：每一個請求生死所繫的那條鏈。
- **即時與事件驅動模式** (12 個單元, ~33 min): WebSocket、Server-Sent Events 與事件驅動流程：當輪詢已經不夠用的時候。

### 第 5 篇: 築牆設防

讓它撐得過現實的碰撞：預設就安全、有韌性的錯誤處理、買得到信心的測試，以及能回答「凌晨3點是什麼壞了」的可觀測性。

- **預設就安全** (12 個單元, ~35 min): OWASP 的頭號風險、注入攻擊與驗證授權的破口：這些攻擊是來找你的，不是你去找它們。
- **錯誤處理與韌性** (12 個單元, ~32 min): 逾時、帶退避的重試與斷路器：讓它安靜地壞，而不是大聲地壞。
- **測試：買的是信心，不是覆蓋率** (12 個單元, ~33 min): 買得到信心、而不是買到覆蓋率數字的測試：測什麼、跳過什麼，以及為什麼。
- **可觀測性：日誌、指標與追蹤** (15 個單元, ~33 min): 讓日誌、指標與追蹤在使用者開口之前，先回答「凌晨3點是什麼壞了」。

### 第 6 篇: 基礎設施與部署

你的程式碼站在什麼上面：容器真正解決的問題、比任何一次主控台改版都活得久的雲端觀念，以及會攔下爛部署的管線。

- **容器：講為什麼，不講怎麼做** (12 個單元, ~35 min): Docker 真正解決的問題：映像檔和容器的差別，以及「在容器裡跑得動」為什麼終於算數。
- **雲端基礎設施：觀念重於主控台點擊** (12 個單元, ~38 min): 託管服務的決策樹：比任何一次主控台改版都活得久的雲端觀念。
- **CI/CD：保護你的那條管線** (12 個單元, ~33 min): 讓爛的部署在使用者發現之前，就先被這條管線攔下來。

### 第 7 篇: 架構與規模

為成長而設計：單體優先的架構、佇列、快取、先剖析再最佳化，以及分散式系統的直覺。

- **架構模式：單體、服務，與中間那條路** (13 個單元, ~34 min): 單體優先的思路、服務什麼時候才配得上那份複雜度，以及沒人拿來行銷的中間地帶。
- **非同步處理與佇列** (14 個單元, ~34 min): 訊息佇列：為什麼每個像樣的系統都有一條，以及消費端落後時會發生什麼事。
- **快取策略** (12 個單元, ~30 min): Redis、TTL 與快取失效：眾所皆知的電腦科學兩大難題之一。
- **效能、剖析與擴充規模** (14 個單元, ~33 min): 先剖析再最佳化：找出真正的瓶頸，而不是你猜的那一個。
- **分散式系統的直覺** (12 個單元, ~34 min): 分散式運算的那些謬誤，以及在自己的設計裡認出它們的直覺。

### 第 8 篇: 商業層

付帳單的那些程式碼：付款與法規遵循、真的能預測營收的指標，以及不騙自己的歸因。

- **付款、訂閱與法規遵循** (12 個單元, ~34 min): 撐得住重試的付款 Webhook、訂閱狀態機，以及跳不過的法遵基本功。
- **商業指標與產品分析** (13 個單元, ~35 min): 真的能預測營收的那些指標，以及那些只是好看的。
- **使用者獲取、廣告與歸因** (13 個單元, ~36 min): UTM、歸因區間，以及不騙自己的廣告數學。

### 第 9 篇: AI 驅動的產品

負責任地把智慧送上線：模型怎麼學、嵌入向量與 RAG，以及帶著評測與成本預算的正式環境 AI 功能。

- **機器學習基礎：模型怎麼學** (12 個單元, ~33 min): 模型到底怎麼學：懂到不會被展示影片或廠商唬住。
- **幫你的 App 加上智慧** (13 個單元, ~33 min): 嵌入向量、RAG，以及挑對事的模型，而不是挑最吵的那個。
- **打造上得了正式環境的 AI 功能** (12 個單元, ~33 min): 評測、成本與延遲預算，以及撐得住真實使用者的 LLM 功能。

### 第 10 篇: 手藝與正式環境的真功夫

資深工程師的習慣：假設驅動的除錯，以及把發布和賭博分開來的那張上線檢查清單。

- **把除錯當成一門功夫** (12 個單元, ~35 min): 假設驅動的除錯：重現、隔離、證明，不是印一堆 print 然後祈禱。
- **上線就緒與後續維運** (14 個單元, ~37 min): 上線檢查清單、事故應變，以及發布之後才開始的那套維運節奏。

### 第 11 篇: 行動端擴張

到了手機上一切都變了：離線優先的資料、跑到一半消失的網路，以及 App 商店的發版列車。

- **行動端專屬的心智模型** (13 個單元, ~33 min): 行動端不是縮小版網站：生命週期、權限，以及作業系統這個嚴格的房東。
- **行動端的資料與網路** (12 個單元, ~37 min): 離線優先的資料、同步衝突，以及請求跑到一半就消失的網路。
- **行動端發版與上架** (12 個單元, ~30 min): App 商店審查、發版列車，以及為什麼二進位檔沒辦法熱修。

### 結語: 結語

收尾的那一端：你的思考方式變了什麼，以及趁記憶還熱的時候該去做的那一件事。

- **結語：去把一個撐得住的東西送上線** (7 個單元, ~12 min): 你的思考方式變了什麼、這禮拜該做的那一件事，以及怎麼把剛練出來的判斷力留住。

## 常見問題

### 這門課是給誰的？

靠動手做學會的開發者，不是靠念書。你每天用 AI 工具（Copilot、Claude、ChatGPT）把 App 送上線，速度前所未有。但「它跑得起來」和「它被工程化過」之間有一段落差，凌晨3點壞掉的時候你會感覺到，資深工程師問你「為什麼要這樣做？」的時候也會。

你不是新手。你寫得出程式碼，卻不一定說得出按下 Enter 之後發生了什麼事。這門課補的正是這段落差。

### 有哪些東西是下幾句提示詞問不出來的？

判斷力。現在 AI 幫你寫掉 80% 的程式碼；真正要緊的那 20% 是架構、錯誤處理、安全模型和系統設計。那 20% 要你懂取捨、懂脈絡、懂後果，而這正是 AI 沒辦法替你做的。

每一章都拿一個你自認「已經懂」的東西（資料庫、APIs、部署），再讓你看見漏掉了什麼：請求生命週期、查詢計畫、重試風暴、快取失效、上線檢查清單。

### 我需要 CS 學位或特定技術堆疊嗎？

不需要學位。這門課就是為了沒念、或念了又忘光的人做的。它以觀念為主：範例用的是 PostgreSQL、Redis、Docker、Stripe 這類主流工具，但每一章教的是心智模型，不是照著廠商介面按按鈕，所以換到你自己上線用的技術堆疊一樣通用。

### 事故檢討和作業是什麼？

Complete 的每一章都解剖一場有文件可查的真實工程災難：真實的公司、真實的日期、真實的根本原因，以及當初怎麼做就能避開。接著作業會把這一章套用到你自己已經上線的專案，不是練習用的範例儲存庫，所以每一章結束時，你真正的系統都比先前更接近正式環境的水準一點。

### 要花多久時間？

Complete 有 38 章教學，每章 25 到 40 分鐘，加上作業，最後以一段簡短的結語收尾。影片大約 20 小時，把實作算進去大概再翻一倍。全課分成十一篇，彼此獨立，所以你也可以直接跳到現在燒起來的那一篇：部署壞了？第六篇。查詢很慢？第三篇。

### 有證書嗎？

有！而且是考來的，不是看完就送：ShipReal 結業證書，由 Teachable 發出。每一章結束都有 10 題自評測驗和一題申論題，全部做完才拿得到證書。

### 公司可以幫整個團隊買嗎？

可以。席次直接銷售，價格就是上面團隊方案的每席價，開一張發票，並且會隨著成員進出在團隊裡轉移。每位工程師都拿到 Complete 課程，做在自己的專案上，不是共用的沙箱。

超過 20 席，或者你需要 PO、透過 SAML 或 OIDC 的單一登入，或者要把各章以 SCORM、xAPI 套件或 LTI 形式送進自家 LMS，不管跑的是 Cornerstone、Workday、Moodle 還是別的系統，寫信給我，我們一起把範圍談清楚。

### 如果不適合我怎麼辦？

先看 YouTube 上免費的總覽：很快就知道這門課合不合你的胃口。再來，價格表裡的保證就是全部的答案，怎麼申請寫在退款政策裡。

### 有哪些語言可以看？

旁白目前只有英文。Teachable 上的 Complete 附英文、法文、德文、義大利文、西班牙文 & 希伯來文字幕。更多語言即將推出。

## Legal

[Privacy Policy](https://shipreal.dev/privacy) · [Terms of Service](https://shipreal.dev/terms) · [Refund Policy](https://shipreal.dev/refunds)
