Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The Bottleneck Moved: Small-Team Architecture W...

The Bottleneck Moved: Small-Team Architecture When Writing Code Is No Longer the Hard Part

A session at LINE THAILAND DEVELOPER CONFERENCE 2026

Avatar for LINE Developers Thailand

LINE Developers Thailand

October 17, 2026

More Decks by LINE Developers Thailand

Other Decks in Technology

Transcript

  1. LINE DEV CONF 2026 The Bottleneck Moved Small-Team Architecture When

    Writing Code Is No Longer the Hard Part คนรีวิว
  2. Kittikorn Prasertsak (Prame) ★ Microsoft Most Valuable Professional (MVP) (2026)

    Web Development & Developer Tools ★ Adjunct Lecturer @ School of Information Technology KMITL 2025 - 2026 ★ Microsoft Most Valuable Professional (MVP) (2024 - 2025) Developer Technology ★ Founder @ BorntoDev (550,000 Followers) ★ Microsoft Student Partners (2012-2016) ★ Bachelor of Science (BSc), Information Technology (Software Engineering) First-class honors สงวนลิข สิทธิ์ โดย บริษัท บอร์นทูเ ดฟ จำกัด - ห้ำมเผยแพรก ่ ่ อนได้รบ ั อนุญำต ai-ops-modern-tools
  3. QUIZ · 45 วินาที เมื่อ AI Coding Agent ช่วยให้ทีม ผลิต

    โค้ดได้เร็วขึ้นมาก คอขวดใหม่ของทีมขนาด เล็กคืออะไร? A ทักษะเขียนโค้ ดของคนในทีม B กำรรีวว ิ และเข้ำใจระบบให้ทัน C ค่ำ LLM API ที่เพิ่มตำมปริมำณงำน
  4. เวลำ median ที่ PR รออยู่ในรีวิว +441.5% Faros AI — The

    AI Engineering Report 2026 · telemetry ~22,000 devs, 4,000+ ทีม
  5. DORA 2025 พบว่ำ AI คือ ตัวขยาย ไม่ใช่ตัวแก้ DORA — State

    of AI-assisted Software Development 2025 · ROI of AI-assisted Software Development 2026
  6. 3 LAYERS 1 · Context 2 · Guardrails 3 ·

    Orchestration ให้ Agent เข้ำใจก่อนเขียน ให้เครือ ่ งกรองก่อนถึงคน ให้คนดูเฉพำะสิ่งที่ควรดู
  7. Knight Capital ลืม deploy โค้ดใหม่ไป 1 จาก 8 เซิรฟ ์

    เวอร์ · flag เดิมจึงไปปลุกโค้ดเก่ำ U.S. SEC — Order Instituting Proceedings, Knight Capital Americas LLC (2013)
  8. Bounded module กำหนด ขอบเขต ของ context ที่ Agent ต้องอ่ำน Anthropic

    — Best practices for Claude Code: ประสิทธิภำพของโมเดลลดลงเมื่อ context เต็ม
  9. AGENTS.md ที่ Agent ทำตำมได้ จริง ต้อง สั้น ลบบรรทัดไหนแล้ ว Agent

    ไม่ทำผิด = ลบทิง ้ Anthropic — Best practices for Claude Code · AGENTS.md อยู่ภำยใต้ Agentic AI Foundation (ธ.ค. 2025)
  10. ตัวอย่างจริง · LAYER 1 · CONTEXT เขียนกติกาให้ AI ไว ้ไฟล์เดียว

    และสั้นที่สุด ซ้ำย: AGENTS.md บอกคำสั ่งที ่ใช ้ได้ สิ ่งที่ห ำ้ มแตะ และแบบไหนเรียกว่ำเสร็จ · ขวำ: CLAUDE.md มีบรรทัดเดีย ว ชี้มำที่ไฟล์ นี้ Node 22 · TypeScript 5.6 · Vitest 2.1 AGENTS.md
  11. QUIZ · 45 วินาที ADR (Architecture Decision Record) ช่วยให้ Agent

    ทางานแม่นยาขึ้นได้อย่างไร? A เก็บเหตุผลเบื้องหลังกำรตัดสิ นใจ B เก็บประวัติกำรแก ้โค้ดทุกบรรทั ด C เก็บรำยกำร task ที่ต้องทำต่ อ
  12. เฉลย A · โค้ดบอก what แต่ ADR บอก why AI

    ร่ำงได้ แต่คนต้ องเป็นคน confirm
  13. ตัวอย่างจริง · LAYER 1 · KNIGHT CAPITAL เปลี่ยนความหมายแล้ว ต้องเปลี่ยนชื่อด้วย npm

    run demo:knight ซ้ำย: บันทึกว่ำเลิกใช้ชื่อ discount · ขวำบน: รำยชื่อที่ห ้ำมกลับมำใช้ · ขวำล่ำง: AI เผลอใช้ชื่อเก่ำ ระบบตีกลับพร้อมบอกชื่อใหม่ Node 22 · TypeScript 5.6 · Vitest 2.1
  14. ตัวอย่างจริง · LAYER 1 · MARS CLIMATE ORBITER ใส่หน่วยไว ้ในโค้ด

    ส่งผิดหน่วยโปรแกรมไม่ยอม ซ้ำย: ให้ นิว ตัน-วินำที กับ ปอนด์แ รง-วินำที เป็นคนละชนิด · ขวำบน: ส่ งผิดหน่ว ย · ขวำล่ำง: โดนเตือนก่อ นโปรแกรมรัน repo: bottleneck-kit (แชร ห ์ ลังจบ talk) · โค้ด และผลรันจร งิ จำก repo · Node 22 · TypeScript 5.6 · Vitest 2.1 npm run demo:mars
  15. ตัวอย่างจริง · LAYER 2 · GOOGLE CLOUD ข้อมูลจริงมีช่องว่าง ให้เครือ ่

    งเตือนก่อนขึ้นระบบจริง ซ้ำยบน: เปิดโหมดตรวจเข้ม · ขวำ: โค้ดที่ลืมเช็กค่ำว่ำงโดนเตือน 2 จุด · ซ้ำยล่ำง: วิธเี ขียนที ่ร บ ั มือค่ำว่ำงได้ repo: bottleneck-kit (แชร ห ์ ลังจบ talk) · โค้ด และผลรันจร งิ จำก repo · Node 22 · TypeScript 5.6 · Vitest 2.1 npm run demo:null
  16. ตัวอย่างจริง · LAYER 2 · REPLIT npm run demo:hook กฎที่หา้

    มพลาด ให้ระบบบังคับ อย่าแค่บอกใน prompt ซ้ำย: สคริปต์ต รวจทุกค ำสั่งก่อ น AI รัน · ขวำ: คำสั ่ง ปกติ ผ ่ำน ส่ว นคำสั่ งลบตำรำงข้อมูล หรือเขียนทับโค้ดบน server ถูกบล็อก repo: bottleneck-kit (แชร ห ์ ลังจบ talk) · โค้ด และผลรันจร งิ จำก repo · Node 22 · TypeScript 5.6 · Vitest 2.1
  17. ตัวอย่างจริง · LAYER 2 · CI GATE ด่านตรวจอัตโนมัติ: ตรวจเรือ ่

    งเร็วก่อน เรือ ่ งช้าทีหลัง npm run demo:gate ซ้ำย: ลำดับด่ ำน รหัสลับ → ชื่อต้องห้ำม → ชนิดข้อมูล → test → สัญ ญำ API · ขวำ: งำนที่ใช้ชื่อเก่ ำตกตัง ้ แต่ด่ำน 2 ไม่ต้องรอรัน test repo: bottleneck-kit (แชร ห ์ ลังจบ talk) · โค้ด และผลรันจร งิ จำก repo · Node 22 · TypeScript 5.6 · Vitest 2.1
  18. QUIZ · 45 วินาที ทีมให้ Agent เขียนทัง ้ feature และ

    unit test เอง CI ผ่านหมด coverage 95% ความเสี่ยงหลักคืออะไร? A เขียน test ซ้ำซ้อน ทำให้ CI ช้ำ B Test ใช้ convention ต่ำงจำกที ม C Test อำจผิดไปพร้อมกับโค้ด
  19. เฉลย C · Agent เขียนทัง ้ โค้ ดและ test เอง

    = วงจรปิด คน approve spec ก่อน แล้วแยก Agent เขียน test กับโค้ ด Anthropic — Best practices for Claude Code
  20. TDD กับ Agent: ทุกงำนเริม ่ จำก test ที่ แดงก่อน test

    ที่ไม่เคยแดง พิ สูจน์อะไรไม่ได้ · คน approve test ก่อนโค้ ด Kent Beck × The Pragmatic Engineer (มิ.ย. 2025) · Anthropic — Claude Code: Best practices for agentic coding (2025)
  21. งำนที่ test ขัดกับ spec: โมเดลชั้นนำเลือก "ทำให้เขียว" รำว 1 ใน 2

    แก้ test หรือเขียนโค้ดเฉพำะเคส · ทำงแก้: ล็อก test ให้แก ้ไม่ได้ ImpossibleBench (Zhong, Raghunathan, Carlini · ต.ค. 2025, ICLR 2026) · Conflicting-SWE-bench: GPT-5 54% · Claude Opus 4.1 50% · o3 49%
  22. TDD × Agent: Red → Green → Refactor แบ่งงำนคนกับเครือ ่

    งให้ชัด 1 · RED 2 · GREEN • test จำก spec + edge case • เห็นแดง แล้ว commit แยก • เขียนโค้ดให้ผ่ำน • ห้ำมแตะ test · แนบผลรัน คน approve (Agent ร่างได้) Agent 3· REFACTOR Agent + CI • ปรับโค้ด test เขียวตลอด • คนรีวิวตำม Risk Tier ล็อกด้ วยเครือ ่ ง: deny rule + CODEOWNERS · test ขัดกับ spec = หยุดแล้วถำม Kent Beck — TDD (Red → Green → Refactor) · Anthropic — Claude Code best practices · ImpossibleBench (2025)
  23. ตัวอย่างจริง · LAYER 2 · วงจรปิด คนเขียนข้อสอบ · AI ทาข้อสอบ

    npm run test:spec ซ้ำย: test ที่คนเขีย น รวมกรณีพิเศษ เช่น ค่ำติดลบ · ขวำบน: แก้ test ต้องให้ห วั หน้ ำทีมอนุมัติ · ขวำล่ำง: test ผ่ำนครบ 5 ข้อ repo: bottleneck-kit (แชร ห ์ ลังจบ talk) · โค้ด และผลรันจร งิ จำก repo · Node 22 · TypeScript 5.6 · Vitest 2.1
  24. อย่ำให้ Agent ถือ กุญแจ ดอกเดียวกั บคุณ OWASP Top 10 for

    Agentic Applications 2026 (ธ.ค. 2025) · Agent Control Standard v0.1 (ก.ย. 2026) · Anthropic — Claude Code permissions
  25. ตัวอย่างจริง · LAYER 2 · GOVERNANCE ไม่ให้ AI ถือกุญแจ ถ้าหลุดระบบจับได้ก่อน

    ซ้ำย: ตั้งค่ำห้ำม AI เปิดไฟล์ร หัสลับ · ขวำ: AI เผลอใส่ key ลงในโค้ด ด่ำนแรกของระบบตรวจเจอแล้วหยุดทั นที repo: bottleneck-kit (แชร ห ์ ลังจบ talk) · โค้ด และผลรันจร งิ จำก repo · Node 22 · TypeScript 5.6 · Vitest 2.1 npm run demo:secret
  26. CrowdStrike: อัปเดตเดียว ทำเครือ ่ งล่มพร้อมกัน 8.5 ล้าน เครือ ่ ง

    · จำกไฟล์ที่อยู่ในระบบแค่ 78 นำที CrowdStrike RCA (6 ส.ค. 2024) · ตัวเลขประมำณกำรของ Microsoft · ผลกระทบ: Reuters, NPR
  27. ปล่อยที ละน้อย ก็ล้ม ทีละน้อย small batch · canary · feature

    flag DORA AI Capabilities Model (2025): working in small batches เป็น 1 ใน 7 capability ที่ขยำยผลบวกของ AI
  28. ตัวอย่างจริง · LAYER 3 · CROWDSTRIKE ปล่อยอัปเดตทีละกลุ่ม ถ้าพั งก็หยุดเอง npm

    run demo:canary ซ้ำย: ปล่อ ย 1% → 10% → 100% ถ้ำ error เกินเกณฑ์หยุ ดทันที · ขวำ: อัปเดตเสีย หยุดที่ 1% = 85,000 เครือ ่ ง แทน 8.5 ล้ำน repo: bottleneck-kit (แชร ห ์ ลังจบ talk) · โค้ด และผลรันจร งิ จำก repo · Node 22 · TypeScript 5.6 · Vitest 2.1
  29. ตัวอย่างจริง · LAYER 3 · ตาใหม่ ให้ AI อีกตัวตรวจงาน ด้วยสายตาที่ไม่ลาเอียง

    ซ้ำย: สั ่ง AI ผู้ต รวจให้ดูแค่งำนกับเกณฑ์ รำยงำนเฉพำะจุดที ่ผ ิด · ขวำ: เกณฑ์ที่ใช้ตรวจ (PLAN.md) repo: bottleneck-kit (แชร ห ์ ลังจบ talk) · โค้ด และผลรันจร งิ จำก repo · Node 22 · TypeScript 5.6 · Vitest 2.1 .claude/agents/reviewer.md
  30. ตัวอย่างจริง · LAYER 3 · RISK TIER ระบบบอกเองว่างานไหนเสี่ยง ต้องตรวจละเอียด ซ้ำย:

    กฎดูว ่ำไฟล์ไหนถูกแก้ · ขวำ: แก้เอกสำร = ตรวจเบำ · ฟี เจอร์ทั่ว ไป = ตรวจปกติ · แตะระบบจ่ำยเงิน = ตรวจละเอียด repo: bottleneck-kit (แชร ห ์ ลังจบ talk) · โค้ด และผลรันจร งิ จำก repo · Node 22 · TypeScript 5.6 · Vitest 2.1 npm run demo:tier
  31. ภำระรีวว ิ 800 → 500 นำที/วัน ลด 37.5% และ Tier

    2 ได้รว ี ิวลึกกว่ำเดิม ตัวอย่ำงประกอบกำรคำนวณ: ทีม 3 คน · 40 PR/วัน · (24 × 5) + (10 × 20) + (6 × 30) = 500 นำที
  32. กด Approve ครัง ้ ที่ 10 = กดแบบ ไม่อา่ น

    ให้เครือ ่ งบล็อก แล้วเก็ บสำยตำคนไว้กับ Tier 2 Anthropic — Best practices for Claude Code (Configure permissions)
  33. คอขวดเท่ำเดิ ม แต่ ไหลลื่นขึ้น 1 · Context 2 · Guardrails

    3 · Orchestration AGENTS.md · ADR · Contract Types · Tests · CI · Permission Task เล็ก · Subagent · Risk tier Production วัด 5 ตัวเลข → ปรับทุกเดือน
  34. ตัวอย่างจริง · วัดผล วัด 5 ตัวเลขวันนี้ อีก 30 วันวัดซ้า ซ้ำย:

    คำสั ่งดึงข้อ มูลงำนจำก GitHub มำคำนวณ · ขวำ: ผลจำกข้อมูลตัวอย่ ำง เช่น เวลำรอรีว ิว และ % งำนที่ไม่มีใครรีววิ repo: bottleneck-kit (แชร ห ์ ลังจบ talk) · โค้ด และผลรันจร งิ จำก repo · Node 22 · TypeScript 5.6 · Vitest 2.1 npm run metrics
  35. บัก ั ตรำยที ่สุด ผ่ำนทุกด่ำนมำแล้ ว และ ๊ ที่อน รออยู่

    Knight Capital · รอหลำยปี Google Cloud · รอ 14 วัน CrowdStrike · รอตั้งแต่ ก.พ.
  36. Q&A สไลด์ + Toolkit ทั้งหมด แชร์หลังจบ talk AGENTS.md · ADR

    · CI Gate · Risk Tier · Checklist แอดเปรม · BorntoDev
  37. TAKE-HOME TOOLKIT · LAYER 1 AGENTS.md + ADR ฉบับพกพา ถำมทุกบรรทัด:

    ถ้ำลบออก Agent จะทำผิดไหม? ถ้ำไม่ ลบทิ้ง # AGENTS.md # ADR-0012: คิดส่วนลดหลัง VAT ## Commands Status: Accepted · Supersedes: ADR-0007 test: npm test -- <path> Why confirmed by: [ชื่อ] typecheck: npx tsc --noEmit ## Context [ทำไมต้องตั ดสินใจตอนนี้] ## Boundaries ## Decision [หนึ่งประโยค] modules คุยกันผ่ำน src/contracts/ เท่ำนัน ้ ## Alternatives [ทำงที่ตัดทิง ้ + เหตุผล] อ่ำน docs/adr/ ก่อนแก้ architecture ## Consequences ## Never เลิกใช้ discount → ใช้ discountAfterVat แก้ migrations/ · อ่ำน .env (ห้ำม reuse ชื่อเดิมกับควำมหมำยใหม่) ## Done = typecheck + test ผ่ำน + แนบ output ใน CLAUDE.md ใส่บรรทัด @AGENTS.md ให ้ใช ้ไฟล์เ ดียวกัน · AGENTS.md อยู่ภำยใต้ Agentic AI Foundation (ธ.ค. 2025)
  38. TAKE-HOME TOOLKIT · LAYER 2 Guardrail kit: copy ไปใชได้ ้

    เลย // tsconfig.json (TS 6+: strict on by default) // .claude/settings.json { "compilerOptions": { { "permissions": { "deny": [ "strict": true, "Read(./.env*)", "Read(./secrets/**)", "noUncheckedIndexedAccess": true } } "Edit(./tests/spec/**)" ] } } # .github/CODEOWNERS # CI gate · fail-fast /tests/spec/ @your-org/tech-leads secret scan → retired names → lint /src/contracts/ @your-org/tech-leads → typecheck → spec/unit → contract → e2e /migrations/ @your-org/tech-leads เขียวทุกด่ำน ก่อนขอรีวิว จำกคน เครื่องมือตัวอย่ำง: secretlint / gitleaks · eslint · tsc · vitest · Pact / Schemathesis · Playwright
  39. TAKE-HOME TOOLKIT · LAYER 3 Review kit: tier + reviewer

    prompt Tier เงื่อนไข รีวิว 0 · เบำ docs, test-only, refactor ไม่เปลี่ยน อ่ำน intent ~5 นำที พฤติกรรม + CI เขียว # reviewer subagent · context ใหม่ Input: the diff + PLAN.md only. Flag only what breaks correctness 1 · ปกติ feature ภำยใน module เดียว 1 คน ~20 นำที or a stated requirement. 2 · ลึก contract, auth, migration, payment, owner ~30 นำที + staged Verify: each requirement covered, config prod, ลบหรือ reuse flag rollout each listed edge case tested, no file outside scope changed. Task ที่ดี: แตะ module เดียว มี check pass / fail อธิบาย diff ได ้ใน 1 ประโยค ที่มำ: Anthropic — Best practices for Claude Code · เวลำในตำรำงเป็น ตัวอย่ำง ให้ทีมปรับเอง รีวิวจบตามเวลา Tier
  40. TAKE-HOME TOOLKIT · CHECKLIST เริม ้ 1 สัปดาห์ ่ วันจันทร์

    ทาไดใน 1 AGENTS.md ≤ 1 หน้ำ + @AGENTS.md ใน CLAUDE.md 2 ADR ย้อ นหลัง 3 เรือ ่ งที ่ “ห้ำมเปลี่ย น” 3 TS strict + noUncheckedIndexedAccess 4 CI: secrets → retired names → types → tests 5 CODEOWNERS: spec tests, contracts, migrations 6 Agent ใช้ credential แยก + deny .env 7 ช่อง Risk Tier 0 / 1 / 2 ใน PR template 8 วัด baseline 5 ตัว เลข วันนี้ แล้วซ้ำใน 30 วัน 5 ตัวเลข: PR cycle time · time to first review · PR size · change failure rate · % merge โดยไม่มีรวี ิว
  41. APPENDIX แหล่งอ้างอิง 1 · Faros AI — The AI Engineering

    Report 2026 9 · U.S. SEC — Order Instituting Proceedings, Knight Capital 2 · DORA — State of AI-assisted Software Development 2025, AI Americas LLC (2013) Capabilities Model และ ROI of AI-assisted Software Development (2026) 3 · Stack Overflow — Developer Survey 2026 (ต.ค. 2026) 4 · METR — Early-2025 AI on Experienced OSS Developer Productivity (ก.ค. 2025) และ update (ก.พ. 2026) 5 · Anthropic — Best practices for Claude Code (code.claude.com/docs) 6 · OpenAI / Linux Foundation — Agentic AI Foundation และ AGENTS.md (ธ.ค. 2025) 7 · GitHub — Spec Kit 8 · OWASP — Top 10 for Agentic Applications 2026 และ Agent Control Standard v0.1 (ก.ย. 2026) 16 · ImpossibleBench — Zhong, Raghunathan, Carlini (arXiv ต.ค. 2025 · ICLR 2026) 10 · NASA — Mars Climate Orbiter Mishap Investigation Board, Phase I Report (1999) 11 · Google Cloud — Incident Report, Service Control (มิ.ย. 2025) 12 · CrowdStrike — External Technical Root Cause Analysis, Channel File 291 (ส.ค. 2024) 13 · Reuters, NPR — ผลกระทบจำกเหตุกำรณ์ CrowdStrike (ก.ค. 2024) 14 · The Register, heise — Replit × SaaStr (ก.ค. 2025) 15 · Michael Nygard — Documenting Architecture Decisions (2011) 17 · Anthropic — Claude Code: Best practices for agentic coding (2025) 18 · Kent Beck × The Pragmatic Engineer — TDD, AI agents and coding (มิ.ย. 2025)
  42. LINE DEV CONF 2026 The Bottleneck Moved Small-Team Architecture When

    Writing Code Is No Longer the Hard Part คนรีวิว