三個月救回兩年爛攤子 — 一個 AI 輔助開發系統的實戰紀錄
SuperClaude 實戰筆記·15 分鐘

三個月救回兩年爛攤子 — 一個 AI 輔助開發系統的實戰紀錄

3 個外包團隊、創辦人親自下場 vibe coding,花了上百萬和 2 年時間,連登入頁面都做不好。我用 SuperClaude 系統化方法接手,成功交付,客戶拿到投資,還幫他建立工程團隊。

Y
Young + Claude Sonnet 4.5

3 個外包團隊都失敗了,創辦人親自下場寫代碼,也失敗了,2 年、上百萬,連登入頁面都做不好,直到他找到我


第一幕:兩年的失敗

2024 年底,我接到一個創辦人的訊息:

「Young,我想跟你談談,我們的專案已經做了 2 年多,花了上百萬,找了 3 個外包團隊,都失敗了,我自己也試著寫,但還是做不好,你能幫忙看看嗎?」

這不是第一次聽到這種故事,但當我深入了解後,還是震驚了

這個專案是什麼?

一個 AI 驅動的教育平台(為保護客戶隱私,稱為「專案 X」),核心功能很清楚:

  • 學生錄音 → AI 批改 → 給出反饋
  • 老師可以看到學生進度,手動調整評分
  • 後台數據分析,追蹤學習成效

聽起來很標準,對吧?

但這個專案的失敗史,堪稱教科書級別的災難


失敗 Round 1:第一個外包團隊(6 個月,40 萬)

承諾:「3 個月交付 MVP,保證品質」

結果:

  • 前端用 jQuery + Bootstrap(2024 年還在用 jQuery)
  • 後端用 PHP(沒有框架,純手寫)
  • 資料庫設計混亂(沒有外鍵,沒有索引)
  • 沒有測試
  • 沒有版本控制(最後幾個版本是用 Dropbox 同步)

交付物:

  • 登入頁面可以用(但密碼明文儲存)
  • 學生錄音功能「似乎」可以用(但只在開發者電腦上)
  • 批改功能根本沒做

創辦人的評價:「我花了 40 萬,買了一個不能用的半成品」


失敗 Round 2:第二個外包團隊(8 個月,50 萬)

創辦人學乖了,這次找了一家「有名氣」的外包公司

承諾:「我們有完整的開發流程,用最新的技術棧,絕對沒問題」

結果:

  • 技術棧升級了(React + Node.js + MongoDB)
  • 架構「看起來」很專業(微服務、Docker、Kubernetes)
  • 但⋯⋯根本跑不起來

問題:

  1. 過度設計:一個 MVP 用了 7 個微服務,部署需要 3 台伺服器
  2. 沒人懂 Kubernetes:團隊沒有 DevOps,部署全靠手動
  3. 溝通災難:PM 每週換需求,工程師疲於奔命
  4. 技術債爆炸:為了趕進度,到處是 // TODO: fix this later

交付物:

  • 前端可以看到畫面(但 API 常常掛掉)
  • 後端有 API(但沒有文檔,沒人知道怎麼用)
  • 部署流程需要 2 小時手動操作

創辦人的評價:「我花了 50 萬,買了一個技術債黑洞」


失敗 Round 3:第三個外包團隊(4 個月,30 萬)

這次創辦人找了「便宜的」團隊,想說至少能做出「能用的東西」

結果:

  • 代碼品質更差
  • 複製貼上大量 Stack Overflow 代碼
  • 到處是 console.log("test")
  • 錄音功能只在 Chrome 可以用(Safari 和 Firefox 會爆炸)

交付物:

  • 勉強能動
  • 但充滿 bug
  • 客戶投訴不斷

創辦人的評價:「我放棄了」


失敗 Round 4:創辦人親自下場(6 個月,無價)

創辦人想:「外包不行,我自己來總可以吧?」

他買了線上課程,學了 Python、JavaScript、React,開始 vibe coding:

  • 看教學影片
  • 複製貼上程式碼
  • 「感覺」可以就推上線

結果:

  • 功能「好像」可以用
  • 但沒有測試,不知道哪裡會壞
  • 部署靠手動,每次都要祈禱
  • 一改就炸,一炸就回滾,一回滾就丟資料

最慘的是:

  • 連登入頁面都做不好(密碼驗證邏輯有漏洞)
  • 連學習頁面都排版錯亂

創辦人的自白:

「我以為學了程式語言就能做產品,但我不知道什麼是測試、什麼是 CI/CD、什麼是架構設計,我只是在『寫代碼』,不是在『做產品』」


第二幕:為什麼他們都失敗了?

2 年、上百萬、4 次嘗試,全部失敗

問題出在哪?

我花了一週時間,梳理了所有失敗的代碼和文檔,發現了共同的問題:

❌ 問題 1:沒有系統化流程

外包團隊的開發方式:

需求直接寫代碼手動測試上線出 bug改 bug再出 bug

創辦人的開發方式:

看教學複製貼上「感覺」可以上線炸掉Google 搜尋再炸掉

沒有:

  • 需求釐清(CARIO framework)
  • 測試先行(TDD)
  • 自動化驗證(CI/CD)
  • 代碼審查(Code Review)

結果:每次改動都是賭博,每次上線都是災難


❌ 問題 2:沒有品質保證

測試覆蓋率:

  • 外包團隊 1:0%(沒有測試)
  • 外包團隊 2:5%(只有幾個單元測試,都是假的)
  • 外包團隊 3:0%(連測試框架都沒裝)
  • 創辦人:0%(不知道什麼是測試)

結果:

  • 功能「好像」可以用
  • 但不知道哪裡會壞
  • 一改就炸

❌ 問題 3:技術債累積

外包團隊的代碼:

// TODO: fix this later
function processRecording(data) {
  try {
    // 複製自 Stack Overflow
    const result = someLibrary.process(data);
    console.log("test", result); // 忘記刪掉
    return result;
  } catch(e) {
    console.log(e); // 錯誤處理 = 印出來
    return null; // 吞掉錯誤
  }
}

創辦人的代碼:

# 我不知道這段是幹嘛的,但刪掉會壞
def login(username, password):
    user = db.query("SELECT * FROM users WHERE username = '" + username + "'")  # SQL Injection
    if user and user.password == password:  # 明文比對
        return "success"
    return "fail"

結果:

  • 技術債像滾雪球
  • 改不動,也不敢改

❌ 問題 4:缺乏架構思維

外包團隊的架構:

  • 團隊 1:沒有架構(一個 PHP 檔案 5000 行)
  • 團隊 2:過度設計(7 個微服務,沒人懂)
  • 團隊 3:複製貼上架構(看起來像某個教學專案)

創辦人的架構:

  • 沒有架構概念
  • 功能散落在各個檔案
  • 改一個地方,另一個地方就壞

結果:

  • 無法擴展
  • 無法維護

第三幕:SuperClaude 的系統化方法

當創辦人找到我時,他只問了一個問題:

「你跟他們有什麼不同?」

我的回答:

「我不是寫得更快,而是用對的方法」


✅ 方法 1:需求釐清(CARIO Framework)

之前的做法:

  • 客戶:「我要一個錄音功能」
  • 外包:「好,開始寫」
  • 結果:功能做了,但不是客戶要的

我的做法(CARIO):

📋 Context: 學生錄音批改功能
❓ Ambiguity:
  - 錄音格式?(WAV? MP3? WebM?)
  - 最大檔案大小?(10MB? 50MB?)
  - 即時批改還是非同步?
  - 失敗重試機制?

🎯 Options:
  A. 即時批改(快,但伺服器壓力大)
  B. 非同步批改(慢,但可擴展)

💡 Recommendation: B(非同步批改)
  - 用戶體驗:顯示進度條
  - 技術實作:Message Queue + Worker

⚡ Impact:
  - 新增:backend/services/audio_processing.py
  - 測試:10+ 測試案例
  - 時間:3 天

結果:

  • 一次做對
  • 沒有返工
  • 客戶滿意

✅ 方法 2:測試先行(TDD)

之前的做法:

寫功能手動測試上線出 bug改 bug

我的做法(TDD):

1. 寫測試(定義「正確」是什麼)
2. 執行測試(確認會失敗)
3. 寫最小代碼(讓測試通過)
4. 重構(保持測試通過)
5. Commit

範例:

# Step 1: 寫測試
def test_audio_processing_success():
    audio_file = "test_samples/correct_pronunciation.wav"
    result = process_audio(audio_file)
    assert result.score >= 80
    assert result.feedback is not None

# Step 2: 執行(會失敗,因為 process_audio 還沒寫)
# Step 3: 寫最小實作
def process_audio(file_path):
    # 串接 Whisper API + GPT-4
    transcript = whisper_api.transcribe(file_path)
    feedback = gpt4_api.grade(transcript)
    return AudioResult(score=feedback.score, feedback=feedback.text)

# Step 4: 測試通過 ✅
# Step 5: Commit

結果:

  • 測試覆蓋率:90%+
  • 重構不怕壞
  • Bug 減少 70%

✅ 方法 3:自動化一切(Self-Healing CI)

之前的做法:

  • 手動測試
  • 手動部署
  • 出 bug 手動修

我的做法:

# .github/workflows/ci.yml
name: CI/CD Pipeline

on: [push, pull_request]

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Run tests
        run: pytest --cov=./ --cov-report=xml

      - name: Auto-fix lint errors (Self-Healing)
        if: failure()
        run: |
          claude --non-interactive \
            "Read test failures, fix lint/format issues, commit with conventional message"

      - name: Deploy to staging
        if: success() && github.ref == 'refs/heads/staging'
        run: gcloud run deploy --image gcr.io/$PROJECT_ID/app

Self-Healing CI 的魔法:

  • Lint 錯誤 → 自動修復 → 自動 commit
  • 測試失敗 → 分析原因 → 提供修復建議
  • 部署失敗 → 自動回滾

結果:

  • 部署成功率:100%
  • 人工介入次數:幾乎為 0

✅ 方法 4:Agent 系統(並行處理)

之前的做法:

  • 一個人做所有事
  • 順序執行
  • 效率低

我的做法(Agent Manager):

Task(
    subagent_type="agent-manager",
    description="並行開發 4 個模組",
    prompt="""
    同時進行:
    1. frontend-developer: 實作錄音 UI
    2. backend-developer: 實作 API endpoint
    3. ai-specialist: 整合 Whisper + GPT-4
    4. test-automator: 撰寫 E2E 測試

    每個 agent 獨立工作,最後整合
    """
)

結果:

  • 4 個任務並行
  • 開發時間:8 小時 → 2 小時
  • 效率提升 4x

第四幕:成功交付 + 建立團隊

接手後的時間線:

第 1 個月:重建基礎

  • 清理技術債(刪除 70% 無用代碼)
  • 建立 CI/CD(自動化測試 + 部署)
  • 補齊測試(覆蓋率 0% → 90%)
  • 重構核心模組(錄音 + 批改邏輯)

第 2 個月:核心功能

  • 學生錄音批改流程(完整運作)
  • 老師批改介面(流暢穩定)
  • 後台數據分析(即時更新)
  • 效能優化(載入時間 5s → 0.8s)

第 3 個月:準備投資人 Demo

  • 壓力測試(500 並發用戶)
  • Demo 數據準備
  • 功能演示腳本
  • Bug 清零

Demo 結果:

  • 投資人問:「AI 批改準確度如何驗證?」 → 展示後台數據分析,100+ 筆評分分佈圖
  • 投資人問:「500 個學生同時使用,穩定嗎?」 → 展示壓力測試報告

Demo 成功 → 拿到投資


意外的後續:幫他建立工程團隊

拿到投資後,創辦人又找我:

「我們要擴大團隊,但我不知道怎麼找人、怎麼建立工程流程,你能幫我嗎?」

於是,我不只交付了代碼,還幫他從零建立工程團隊

1. 幫他找到一位 CTO 等級的工程師

這件事比寫代碼還難,花了快一個月,面試、遊說、考核,要找到一個技術夠強、又願意加入早期新創的人,真的不容易,最後找到了一位全端資深工程師,能獨立帶團隊

2. 留下一整套自動化系統

我把開發過程中用的所有工具和流程都留給了他們:

  • Agent + Skill 系統:我把專案裡的 AI agent 和 skill 都文件化,新工程師接手就能用,不用重新摸索
  • CI/CD 自動化部署:push 就自動測試、自動部署,不需要手動操作
  • Issue SOP:從需求提出 → Issue 建立 → 分支開發 → Code Review → 自動化測試 → 部署上線,整套流程標準化
  • 故障排除指南:常見問題的處理方式,新人看文件就能解決

3. 交接給 2 人工程團隊 — 而且撐得住

為什麼光靠 2 位工程師,就能撐起一個曾經讓 3 個外包團隊都失敗的完整平台?因為我留下的不只是程式碼 — 而是一整套開發作業系統:

  • Agent/Skill 標準化體系:一整套 AI agent 和可重複使用的 skill,把架構決策、開發模式、品質關卡都寫進系統裡,新工程師不需要煩惱「這個該怎麼做?」— agent 會引導他們走過標準化的開發流程,從功能設計到部署上線
  • 自動化品質把關:Pre-commit hooks、CI/CD pipeline、自動化測試,在問題進入 production 之前就攔下來,系統主動防錯,不靠人盯
  • 流程自文件化:從 Issue 建立到分支策略到 Code Review,每個環節都有定義好的 SOP,知識活在系統裡,不在任何人的腦袋裡

結果就是:2 位工程師的產出速度和可靠度,超越了之前 3 個外包團隊的總和 — 因為基礎建設在幫他們做重活

結果:

  • 2 人工程團隊獨立運作整個平台
  • Agent/Skill 系統就像一個「隨時待命的資深工程師」— 永遠在線、永遠一致
  • 整套自動化流程運轉中,不依賴我
  • 創辦人終於可以專注在產品和業務
  • 我順利退場,系統繼續跑

後記:系統化 vs 混亂

回顧這個專案,最大的差異不是「技術能力」,而是系統化思維

失敗的模式

外包團隊 / 創辦人 vibe coding混亂開發(沒流程、沒測試、沒架構)技術債累積改不動、不敢改失敗

成功的模式

SuperClaude 系統化方法需求釐清(CARIO)測試先行(TDD)自動化(CI/CD + Self-Healing)並行處理(Agent 系統)成功交付 + 可維護 + 可擴展

💡 量化成果對比

指標外包團隊(2 年)Young(3 個月)
花費120+ 萬[待確認]
時間24 個月3 個月
測試覆蓋率0-5%90%+
部署成功率<50%100%
Bug 密度高(頻繁炸)低(幾乎沒炸過)
技術債爆炸幾乎為零
可維護性無法維護團隊可獨立開發
結果失敗成功拿到投資

🚀 這不是「我比較厲害」,而是「方法對了」

我不是天才,我只是:

  1. ✅ 用 CARIO 釐清需求(一次做對)
  2. ✅ 用 TDD 保證品質(減少 70% bug)
  3. ✅ 用 Self-Healing CI 自動化(零部署失敗)
  4. ✅ 用 Agent 系統 並行處理(效率 4x+)

一個人,也能有企業級的交付能力


💬 你也遇過類似的外包災難嗎?

留言告訴我:

  • 你找過外包團隊嗎?結果如何?
  • 你覺得最大的問題是什麼?
  • 你想學習哪些系統化方法?

這是「SuperClaude 實戰筆記」系列的第 1 集

下一集:61 個 Lint 錯誤如何在 2 分鐘內自動修復(Self-Healing CI 深度解析)


📚 延伸閱讀(製作中)

  • SuperClaude 完整工具鏈配置 — 即將開源
  • CARIO 需求釐清框架詳解 — 系列第 5 集
  • TDD 實戰:測試覆蓋率從 0% 到 90% — 系列第 4 集

關於作者:Young 同時管理十幾個跨產業專案(醫療、教育、長照、財務),從策略、架構到開發全部自己來,他用 SuperClaude 系統達成 90% 自動化率和 100% 客戶滿意度,證明一個人也能交付團隊等級的成果

合作邀請:如果你也在尋找能快速交付、品質可靠的接案工程師,歡迎與我聯繫

特別感謝:感謝「專案 X」創辦人願意分享這段失敗與成功的故事,希望能幫助更多創業者避開外包的坑


superclaudecase-studyfreelancesystematic-developmentoutsourcing-failuretddci-cd接案工程師外包失敗系統化開發