Skip to main content

Command Palette

Search for a command to run...

Học Platform engineering (7)

Updated
43 min readView as Markdown

CROSS-CUTTING - TECHNICAL LEADERSHIP

Tài nguyên: The Staff Engineer's Path (Tanya Reilly), Staff Engineer (Will Larson), The Pyramid Principle (Minto), Good Strategy Bad Strategy (Rumelt), Team Topologies, Radical Candor (Scott), Thinking in Bets (Duke), Specifying Systems (Lamport), Practical TLA+ (Wayne), "How Amazon Web Services Uses Formal Methods".

KHỐI A - Technical Writing & Influence (Ngày 1-24) → P1

Ngày 1: Khởi động Leadership

  • Mục tiêu: Vì sao soft skills quyết định impact ở Staff/Principal.

  • Lý thuyết: ảnh hưởng qua viết & quyết định, không qua thẩm quyền.

  • Thực hành: Repo leadership/; tự đánh giá điểm mạnh/yếu 6 mảng.

Ngày 2: Written-first & async

  • Mục tiêu: Viết là đòn bẩy.

  • Lý thuyết: written-first culture, async > meeting cho quyết định lớn.

  • Thực hành: Chuyển một quyết định thành doc thay vì họp.

Ngày 3: Phân tích audience

  • Mục tiêu: Viết cho đúng người.

  • Lý thuyết: engineer vs exec vs cross-functional - nhu cầu khác.

  • Thực hành: Viết cùng ý cho 2 audience khác nhau.

Ngày 4: BLUF & Pyramid Principle

  • Mục tiêu: Cấu trúc thuyết phục.

  • Lý thuyết: bottom-line-up-front, ý chính trước, chi tiết sau (Minto).

  • Thực hành: Cấu trúc lại một doc theo pyramid.

Ngày 5: RFC process

  • Mục tiêu: Đề xuất thay đổi có đồng thuận.

  • Lý thuyết: RFC lifecycle, review culture (nối Layer 6/13).

  • Thực hành: Viết một RFC.

Ngày 6: ADR

  • Mục tiêu: Ghi lại quyết định.

  • Lý thuyết: Architecture Decision Record, context/decision/consequence (nối Layer 6).

  • Thực hành: Viết 2 ADR.

Ngày 7: Design doc

  • Mục tiêu: Thiết kế trước khi code.

  • Lý thuyết: Google design doc format (context/goals/design/alternatives).

  • Thực hành: Viết một design doc.

Ngày 8: Narrative memo

  • Mục tiêu: Kể chuyện thay bullet.

  • Lý thuyết: Amazon 6-pager, narrative memo, no-slides.

  • Thực hành: Viết một narrative memo.

Ngày 9: Lập luận thuyết phục

  • Mục tiêu: Data + narrative.

  • Lý thuyết: kết hợp số liệu và câu chuyện.

  • Thực hành: Củng cố một đề xuất bằng data + narrative.

Ngày 10: Làm rõ ngầm định

  • Mục tiêu: Nói ra điều mặc định.

  • Lý thuyết: surface assumptions, giảm hiểu lầm.

  • Thực hành: Liệt kê assumption ẩn của một quyết định.

Ngày 11: Viết cho executive

  • Mục tiêu: Dịch tech → business.

  • Lý thuyết: exec đọc gì, impact/cost/risk.

  • Thực hành: Viết exec summary một dự án kỹ thuật.

Ngày 12: Viral internal docs

  • Mục tiêu: Doc tự lan toả.

  • Lý thuyết: doc được đọc & chia sẻ, clarity + timing.

  • Thực hành: Phân tích vì sao một doc lan toả.

Ngày 13: Shared understanding

  • Mục tiêu: Đồng bộ nhận thức đội.

  • Lý thuyết: doc xây shared mental model.

  • Thực hành: Viết doc tạo shared understanding một hệ.

Ngày 14: Review/edit doc người khác

  • Mục tiêu: Nâng chất lượng chung.

  • Lý thuyết: editing có tính xây dựng.

  • Thực hành: Review + biên tập một doc.

Ngày 15: Docs as leverage

  • Mục tiêu: Nhân bản chính mình.

  • Lý thuyết: viết một lần, nhiều người dùng.

  • Thực hành: Chuyển kiến thức lặp lại thành doc.

Ngày 16: Storytelling cho engineer

  • Mục tiêu: Làm kỹ thuật hấp dẫn.

  • Lý thuyết: problem → tension → resolution.

  • Thực hành: Viết một câu chuyện kỹ thuật.

Ngày 17: Bất đồng trong văn bản

  • Mục tiêu: Phản biện nhã nhặn.

  • Lý thuyết: disagree bằng doc, tôn trọng.

  • Thực hành: Viết một phản biện có tính xây dựng.

Ngày 18: Viết ngắn gọn

  • Mục tiêu: Cắt fluff.

  • Lý thuyết: concise = tôn trọng người đọc.

  • Thực hành: Cắt 30% một doc mà giữ nội dung.

Ngày 19: Template & chuẩn doc

  • Mục tiêu: Nhất quán ở quy mô.

  • Lý thuyết: template RFC/ADR/design doc.

  • Thực hành: Bộ template dùng chung.

Ngày 20: Đo impact của doc

  • Mục tiêu: Doc có tác dụng thật.

  • Lý thuyết: decision made, alignment, reuse.

  • Thực hành: Định nghĩa cách đo impact.

Ngày 21: P1 - persuasive RFC

  • Mục tiêu: Đóng khung P1.

  • Lý thuyết: RFC thuyết phục cho một thay đổi lớn.

  • Thực hành: Viết RFC hoàn chỉnh.

Ngày 22: P1 - ADR portfolio

  • Mục tiêu: Ghi quyết định.

  • Lý thuyết: bộ ADR cho một hệ.

  • Thực hành: 3-5 ADR.

Ngày 23: P1 - design doc

  • Mục tiêu: Thiết kế thuyết phục.

  • Lý thuyết: design doc có alternatives + tradeoff.

  • Thực hành: Design doc hoàn chỉnh.

Ngày 24: P1 - Technical writing portfolio

  • Mục tiêu: Release P1.

  • Lý thuyết: rà "done": RFC + ADR + design doc thuyết phục.

  • Thực hách: Đóng gói + blog #129 ("Viết để dẫn dắt: RFC, ADR, design doc thuyết phục"). P1 done. Đã đi 24/90 (27%).

KHỐI B - Tradeoff Analysis & Decision-making (Ngày 25-39) → P2

Ngày 25: Làm rõ tradeoff

  • Mục tiêu: Đánh đổi minh bạch.

  • Lý thuyết: mọi quyết định là tradeoff, nói rõ được/mất.

  • Thực hành: Bảng tradeoff cho một quyết định.

Ngày 26: Decision framework

  • Mục tiêu: Ai quyết, ai góp ý.

  • Lý thuyết: RAPID/DACI, rõ vai trò.

  • Thực hành: Áp DACI cho một quyết định.

Ngày 27: "Đủ tốt"

  • Mục tiêu: Không tối ưu quá đà.

  • Lý thuyết: satisficing vs optimizing, chọn "đủ tốt".

  • Thực hành: Nhận diện over-engineering.

Ngày 28: Cửa một chiều/hai chiều

  • Mục tiêu: Quyết nhanh khi đảo được.

  • Lý thuyết: reversible (two-way door) vs irreversible.

  • Thực hành: Phân loại quyết định theo cửa.

Ngày 29: Cost of delay

  • Mục tiêu: Chậm cũng tốn.

  • Lý thuyết: cost of delay, opportunity cost.

  • Thực hành: Ước tính cost of delay một quyết định.

Ngày 30: CỘT MỐC 30

  • Mục tiêu: Chốt writing + đầu tradeoff.

  • Lý thuyết: Ôn A + đầu B; kiểm kê: writing portfolio + khung tradeoff.

  • Thực hành: Đề thi #1 (tự đánh giá: viết một RFC + phân tích một tradeoff theo rubric); blog #130 ("Ra quyết định kỹ thuật: cửa một chiều, đủ tốt, và cost of delay"); tag leadership-day030; nghỉ nửa ngày. Đã đi 30/90 (33%).

Ngày 31: Quyết định dưới bất định

  • Mục tiêu: Không cần chắc 100%.

  • Lý thuyết: reasoning under uncertainty, xác suất (nối Layer 0).

  • Thực hành: Quyết định với thông tin thiếu.

Ngày 32: Second-order thinking

  • Mục tiêu: Nghĩ xa hơn hệ quả đầu.

  • Lý thuyết: "và rồi sao nữa?", hệ quả bậc hai.

  • Thực hành: Phân tích second-order cho một quyết định.

Ngày 33: Pre-mortem

  • Mục tiêu: Tưởng tượng thất bại trước.

  • Lý thuyết: pre-mortem, risk surfacing.

  • Thực hành: Pre-mortem một dự án.

Ngày 34: Disagree and commit

  • Mục tiêu: Bất đồng nhưng tiến.

  • Lý thuyết: disagree-and-commit, không cản sau khi chốt.

  • Thực hành: Kịch bản disagree-and-commit.

Ngày 35: Tránh analysis paralysis

  • Mục tiêu: Quyết đúng lúc.

  • Lý thuyết: đủ dữ liệu để quyết, tránh phân tích vô tận.

  • Thực hành: Đặt deadline quyết định.

Ngày 36: Technical judgment

  • Mục tiêu: "Khẩu vị" kỹ thuật.

  • Lý thuyết: taste, kinh nghiệm, pattern (nối Layer 12/13).

  • Thực hành: Ghi lại một judgment call + lý do.

Ngày 37: Decision records

  • Mục tiêu: Lưu quyết định.

  • Lý thuyết: decision log, revisit khi context đổi.

  • Thực hành: Decision record cho một quyết định.

Ngày 38: P2 - khung tradeoff

  • Mục tiêu: Đóng khung P2.

  • Lý thuyết: framework: options → criteria → tradeoff → decision.

  • Thực hách: tradeoff-framework.md.

Ngày 39: P2 - Tradeoff analysis + decision doc

  • Mục tiêu: Release P2.

  • Lý thuyết: rà "done": khung + một decision doc thật.

  • Thực hành: Đóng gói + blog #131 ("Phân tích đánh đổi và ra quyết định 'đủ tốt'"). P2 done.

KHỐI C - Mentoring & Sponsorship (Ngày 40-54) → P3

Ngày 40: Mentoring vs sponsorship

  • Mục tiêu: Phân biệt hai vai.

  • Lý thuyết: mentor (dạy) vs sponsor (bảo trợ/tạo cơ hội).

  • Thực hành: Xác định khi nào cần cái nào.

Ngày 41: Nâng cấp đội ngũ

  • Mục tiêu: Phát triển người khác.

  • Lý thuyết: career development, growth areas.

  • Thực hành: Growth plan cho một người.

Ngày 42: Code review giáo dục

  • Mục tiêu: Review nâng người (nối Layer 13).

  • Lý thuyết: review dạy, không chỉ gác cổng.

  • Thực hành: Review có giải thích + gợi mở.

Ngày 43: Feedback - radical candor

  • Mục tiêu: Thẳng thắn mà quan tâm.

  • Lý thuyết: care personally + challenge directly.

  • Thực hành: Đưa một feedback khó theo radical candor.

Ngày 44: Difficult conversations

  • Mục tiêu: Nói chuyện khó.

  • Lý thuyết: cấu trúc, empathy, cụ thể.

  • Thực hành: Chuẩn bị một cuộc nói chuyện khó.

Ngày 45: Coaching vs telling

  • Mục tiêu: Hỏi thay vì bảo.

  • Lý thuyết: coaching questions, để người khác tự tìm ra.

  • Thực hành: Coach một vấn đề bằng câu hỏi.

Ngày 46: Sponsorship

  • Mục tiêu: Bảo trợ & khuếch đại.

  • Lý thuyết: advocate cho người khác, amplify tiếng nói.

  • Thực hành: Một hành động sponsorship cụ thể.

Ngày 47: Tạo cơ hội

  • Mục tiêu: Mở đường cho người khác.

  • Lý thuyết: giao stretch assignment, visibility.

  • Thực hành: Giao một cơ hội có kiểm soát rủi ro.

Ngày 48: Văn hoá học tập

  • Mục tiêu: Đội tự nâng cấp (nối Layer 6).

  • Lý thuyết: tech talk, pairing, brown bag.

  • Thực hành: Thiết kế một chương trình học nội bộ.

Ngày 49: Scale kiến thức

  • Mục tiêu: Dạy để nhân bản.

  • Lý thuyết: docs + teaching thay vì tự làm hết.

  • Thực hành: Biến một kỹ năng thành tài liệu dạy.

Ngày 50: Onboarding người mới

  • Mục tiêu: Ramp nhanh (nối Layer 6).

  • Lý thuyết: onboarding path, buddy.

  • Thực hành: Onboarding plan.

Ngày 51: Nhận diện & phát triển tài năng

  • Mục tiêu: Thấy tiềm năng.

  • Lý thuyết: strengths-based development.

  • Thực hành: Đánh giá + kế hoạch cho một người.

Ngày 52: Psychological safety

  • Mục tiêu: Đội dám nói.

  • Lý thuyết: safety để nêu ý kiến/sai lầm (nối Layer 11 blameless).

  • Thực hành: Hành động tăng psychological safety.

Ngày 53: P3 - mentoring/growth plan

  • Mục tiêu: Đóng khung P3.

  • Lý thuyết: mentoring + sponsorship + learning culture.

  • Thực hách: mentoring-plan.md.

Ngày 54: P3 - Mentoring & sponsorship plan

  • Mục tiêu: Release P3.

  • Lý thuyết: rà "done": growth plan + review giáo dục + sponsorship.

  • Thực hành: Đóng gói + blog #132 ("Mentoring và sponsorship: nâng cấp đội ngũ, không chỉ code"). P3 done.

KHỐI D - Technical Strategy & Org Design (Ngày 55-69) → P4

Ngày 55: Strategy vs tactics

  • Mục tiêu: Phân biệt chiến lược.

  • Lý thuyết: vision → strategy → tactics.

  • Thực hành: Tách strategy vs tactic một sáng kiến.

Ngày 56: Định hướng nhiều quý

  • Mục tiêu: Nhìn xa.

  • Lý thuyết: multi-quarter technical direction.

  • Thực hành: Draft định hướng 3-4 quý.

Ngày 57: Good Strategy Bad Strategy

  • Mục tiêu: Chiến lược tốt là gì (Rumelt).

  • Lý thuyết: diagnosis → guiding policy → coherent action; tránh "fluff".

  • Thực hành: Viết một strategy kernel.

Ngày 58: Conway's Law

  • Mục tiêu: Tổ chức ↔ kiến trúc.

  • Lý thuyết: hệ thống phản chiếu cấu trúc giao tiếp.

  • Thực hành: Map org ↔ architecture hiện tại.

Ngày 59: Inverse Conway

  • Mục tiêu: Thiết kế org để có kiến trúc mong muốn.

  • Lý thuyết: inverse Conway maneuver.

  • Thực hành: Đề xuất org đổi để đạt kiến trúc mục tiêu.

Ngày 60: CỘT MỐC 60

  • Mục tiêu: Chốt mentoring + đầu strategy.

  • Lý thuyết: Ôn C + đầu D; kiểm kê: mentoring plan + tư duy Conway/strategy.

  • Thực hành: Đề thi #2 (tự đánh giá: viết một strategy kernel + Conway mapping theo rubric); blog #133 ("Conway's Law và chiến lược kỹ thuật nhiều quý"); tag leadership-day060; nghỉ nửa ngày. Đã đi 60/90 (67%).

Ngày 61: Team Topologies recap

  • Mục tiêu: Mô hình đội (nối Layer 6).

  • Lý thuyết: platform/stream-aligned/enabling/complicated-subsystem.

  • Thực hành: Áp Team Topologies cho một org.

Ngày 62: Org design cho engineering

  • Mục tiêu: Ranh giới đội.

  • Lý thuyết: team boundary, ownership, interface.

  • Thực hành: Thiết kế ranh giới đội.

Ngày 63: Cognitive load & team

  • Mục tiêu: Đội không quá tải (nối Layer 6).

  • Lý thuyết: cognitive load giới hạn scope đội.

  • Thực hành: Đánh giá + giảm tải một đội.

Ngày 64: Platform strategy

  • Mục tiêu: Build/buy/partner.

  • Lý thuyết: khi nào tự xây, mua, hợp tác (nối Layer 6/11).

  • Thực hành: Quyết định build/buy cho một capability.

Ngày 65: Migration strategy

  • Mục tiêu: Đổi mà không đứt.

  • Lý thuyết: sequencing, strangler fig, incremental.

  • Thực hành: Kế hoạch migration một hệ.

Ngày 66: Technical bets

  • Mục tiêu: Đặt cược có tính toán.

  • Lý thuyết: bet size, reversibility, timing.

  • Thực hành: Đề xuất một technical bet.

Ngày 67: Roadmap ↔ org

  • Mục tiêu: Khớp lộ trình & tổ chức (nối Layer 11).

  • Lý thuyết: roadmap khả thi với org hiện có.

  • Thực hành: Align roadmap với năng lực org.

Ngày 68: P4 - technical strategy doc

  • Mục tiêu: Đóng khung P4.

  • Lý thuyết: strategy + org mapping + bets + sequencing.

  • Thực hách: tech-strategy.md.

Ngày 69: P4 - Technical strategy + org mapping

  • Mục tiêu: Release P4.

  • Lý thuyết: rà "done": strategy kernel + Conway mapping + roadmap align.

  • Thực hành: Đóng gói + blog #134 ("Chiến lược kỹ thuật và org design: định hướng nhiều quý"). P4 done.

KHỐI E - Stakeholder Management (Ngày 70-78) → P5

Ngày 70: Influence without authority

  • Mục tiêu: Dẫn dắt không cần quyền.

  • Lý thuyết: ảnh hưởng qua uy tín, giá trị, quan hệ.

  • Thực hành: Kế hoạch ảnh hưởng một sáng kiến.

Ngày 71: Làm việc với Product

  • Mục tiêu: Đồng minh product.

  • Lý thuyết: cân bằng feature vs platform/reliability (nối Layer 6/11).

  • Thực hành: Kịch bản align với PM.

Ngày 72: Security & Finance

  • Mục tiêu: Đối tác quản trị (nối Layer 8/11).

  • Lý thuyết: làm việc với security & finance (FinOps).

  • Thực hành: Trình bày tradeoff bảo mật/chi phí.

Ngày 73: Managing up / leadership

  • Mục tiêu: Làm việc với lãnh đạo.

  • Lý thuyết: managing up, mang giải pháp không chỉ vấn đề.

  • Thực hành: Update cho leadership hiệu quả.

Ngày 74: Dịch tech ↔ business

  • Mục tiêu: Cầu nối hai thế giới.

  • Lý thuyết: nói impact/risk/cost thay jargon.

  • Thực hành: Dịch một quyết định kỹ thuật sang ngôn ngữ business.

Ngày 75: Negotiation & conflict

  • Mục tiêu: Giải quyết mâu thuẫn.

  • Lý thuyết: interest-based negotiation, tìm win-win.

  • Thực hành: Giải một conflict giả định.

Ngày 76: Xây trust & alignment

  • Mục tiêu: Nền của ảnh hưởng.

  • Lý thuyết: trust qua nhất quán, minh bạch.

  • Thực hành: Kế hoạch xây trust với một stakeholder.

Ngày 77: P5 - stakeholder + influence plan

  • Mục tiêu: Đóng khung P5.

  • Lý thuyết: map stakeholder + chiến lược ảnh hưởng.

  • Thực hách: stakeholder-plan.md.

Ngày 78: P5 - Stakeholder management plan

  • Mục tiêu: Release P5.

  • Lý thuyết: rà "done": stakeholder map + influence + communication.

  • Thực hành: Đóng gói + blog #135 ("Stakeholder management: ảnh hưởng không cần thẩm quyền"). P5 done.

KHỐI F - Formal Methods / TLA+ (Ngày 79-90) → P6 flagship

Ngày 79: Vì sao formal methods

  • Mục tiêu: Bắt bug thiết kế trước khi code.

  • Lý thuyết: distributed systems khó test hết; spec để tìm bug logic (nối Layer 3/4).

  • Thực hành: Đọc "How AWS Uses Formal Methods".

Ngày 80: Spec vs implementation

  • Mục tiêu: Tách "cái gì" khỏi "thế nào".

  • Lý thuyết: specification mô tả hành vi đúng, không phải code.

  • Thực hành: Viết spec bằng lời cho một giao thức.

Ngày 81: TLA+ - tổng quan

  • Mục tiêu: Ngôn ngữ spec.

  • Lý thuyết: state, action, temporal logic, next-state relation.

  • Thực hành: Cài TLA+ Toolbox; chạy ví dụ.

Ngày 82: TLA+ - invariants & safety

  • Mục tiêu: "Điều xấu không xảy ra".

  • Lý thuyết: invariant, safety property.

  • Thực hành: Viết một invariant + kiểm.

Ngày 83: TLA+ - liveness & fairness

  • Mục tiêu: "Điều tốt cuối cùng xảy ra".

  • Lý thuyết: liveness, fairness, temporal operators.

  • Thực hành: Viết một liveness property.

Ngày 84: PlusCal

  • Mục tiêu: Viết thuật toán dễ hơn.

  • Lý thuyết: PlusCal → dịch sang TLA+.

  • Thực hành: Viết một thuật toán bằng PlusCal.

Ngày 85: TLC model checker

  • Mục tiêu: Kiểm tự động.

  • Lý thuyết: state space exploration, counterexample.

  • Thực hành: Chạy TLC; đọc counterexample.

Ngày 86: Spec một thuật toán phân tán

  • Mục tiêu: Áp vào bài toán thật.

  • Lý thuyết: spec một lock/consensus đơn giản (nối Layer 3/4).

  • Thực hành: Viết spec + invariant.

Ngày 87: Tìm bug qua model checking

  • Mục tiêu: Giá trị thực.

  • Lý thuyết: model checking phát hiện race/deadlock (nối Layer 3/4).

  • Thực hành: Gài một bug; TLC tìm ra.

Ngày 88: Apalache & công nghiệp

  • Mục tiêu: Scale & thực tế.

  • Lý thuyết: Apalache (symbolic), TLA+ ở AWS/Azure; Alloy/P (khác).

  • Thực hành: So TLC vs Apalache; đọc case công nghiệp.

Ngày 89: P6 - spec một thiết kế phân tán

  • Mục tiêu: Đóng khung P6.

  • Lý thuyết: chọn một thành phần của Grand Capstone (control plane/consensus).

  • Thực hành: Viết TLA+ spec + invariants.

Ngày 90: HOÀN THÀNH Technical Leadership

  • Mục tiêu: Chốt Cross-cutting Leadership.

  • Lý thuyết: Ôn toàn phần; kiểm kê tổng: P1 writing + P2 tradeoff + P3 mentoring + P4 strategy + P5 stakeholder + P6 TLA+ spec + model checking.

  • Thực hành: P6 done; đề thi #3 tích lũy (tự đánh giá 6 mảng theo rubric Staff/Principal); blog #136 ("Nhìn lại Technical Leadership: viết, quyết định, mentoring, chiến lược, stakeholder, và TLA+"); tag leadership-complete; nghỉ nửa ngày.

GRAND CAPSTONE - CLOUD-NATIVE PLATFORM OPERATING SYSTEM

PHASE 0 - Foundation & Design (Ngày 1-18)

Ngày 1: Khởi động Grand Capstone

  • Mục tiêu: Vision & scope của Platform OS.

  • Lý thuyết: platform-as-product (nối Layer 6/11), mục tiêu tích hợp.

  • Thực hành: Repo platform-os/; viết vision doc.

Ngày 2: Requirements & personas

  • Mục tiêu: Ai dùng platform.

  • Lý thuyết: personas dev/SRE/security/data (nối Layer 6).

  • Thực hành: Persona + jobs-to-be-done.

Ngày 3: Kiến trúc tổng thể

  • Mục tiêu: Bức tranh lớn.

  • Lý thuyết: control plane + data plane + platform services.

  • Thực hành: Vẽ high-level architecture.

Ngày 4: Foundational ADRs

  • Mục tiêu: Ghi quyết định nền (nối Leadership).

  • Lý thuyết: ADR cho các lựa chọn lớn.

  • Thực hành: 5 ADR nền tảng.

Ngày 5: API design as product

  • Mục tiêu: API bền vững (nối Layer 6/11).

  • Lý thuyết: versioning, backward compatibility.

  • Thực hành: API design principles doc.

Ngày 6: Repo & build

  • Mục tiêu: Nền code.

  • Lý thuyết: monorepo/multi-repo, build system.

  • Thực hành: Cấu trúc repo + build.

Ngày 7: Tech stack

  • Mục tiêu: Chọn công nghệ.

  • Lý thuyết: Go (control plane), Rust (DSL/perf), language mix (nối Layer 0/1).

  • Thực hành: ADR tech stack.

Ngày 8: Reconciliation model

  • Mục tiêu: Nền control plane (nối Layer 4).

  • Lý thuyết: desired vs actual, level-triggered.

  • Thực hành: Thiết kế reconciliation model.

Ngày 9: Domain model

  • Mục tiêu: Platform quản lý gì.

  • Lý thuyết: Platform/App/Environment/Tenant resources.

  • Thực hành: Domain model doc.

Ngày 10: Multi-tenancy model

  • Mục tiêu: Dùng chung an toàn (nối Layer 4).

  • Lý thuyết: namespace/vcluster/tenant isolation.

  • Thực hành: Multi-tenancy design.

Ngày 11: Golden path vision

  • Mục tiêu: DX mục tiêu (nối Layer 6).

  • Lý thuyết: self-service từ DSL → prod.

  • Thực hành: Golden path vision doc.

Ngày 12: NFRs

  • Mục tiêu: Yêu cầu phi chức năng.

  • Lý thuyết: SLO targets, security posture, cost (nối Layer 7/8/11).

  • Thực hành: NFR doc.

Ngày 13: Threat model

  • Mục tiêu: An toàn từ thiết kế (nối Layer 8).

  • Lý thuyết: STRIDE cho platform.

  • Thực hành: Threat model doc.

Ngày 14: Roadmap & phasing

  • Mục tiêu: Lộ trình build (nối Layer 11).

  • Lý thuyết: phase sequencing.

  • Thực hành: Roadmap 12 phase.

Ngày 15: RFC tổng thể

  • Mục tiêu: Đề xuất thiết kế (nối Leadership).

  • Lý thuyết: RFC platform design.

  • Thực hành: Viết RFC chính.

Ngày 16: CI/CD & dev env

  • Mục tiêu: Nền vận hành (nối Layer 6).

  • Lý thuyết: pipeline, dev environment.

  • Thực hành: CI/CD + dev setup.

Ngày 17: Testing strategy

  • Mục tiêu: Chất lượng từ đầu (nối Layer 4).

  • Lý thuyết: unit/integration/e2e/envtest.

  • Thực hành: Testing strategy doc.

Ngày 18: Foundation complete

  • Mục tiêu: Chốt nền.

  • Lý thuyết: rà design docs + repo + CI.

  • Thực hành: Kiểm kê Phase 0; sẵn sàng build.

PHASE 1 - Control Plane, CRD, Operator (Ngày 19-42) → P1

Ngày 19: Control plane architecture

  • Mục tiêu: Reconciliation core (nối Layer 4).

  • Lý thuyết: manager, controllers, cache.

  • Thực hành: Scaffold control plane.

Ngày 20: Core CRDs

  • Mục tiêu: API của platform.

  • Lý thuyết: Platform/Application/Environment/Tenant CRD.

  • Thực hành: Định nghĩa CRD types.

Ngày 21: CRD schema & versioning

  • Mục tiêu: API bền (nối Layer 4/6).

  • Lý thuyết: validation, defaulting, conversion webhook.

  • Thực hành: Schema + v1alpha→v1.

Ngày 22: controller-runtime

  • Mục tiêu: Framework.

  • Lý thuyết: Manager, Reconciler, Client.

  • Thực hành: Setup manager.

Ngày 23: Application controller

  • Mục tiêu: Reconcile app.

  • Lý thuyết: CR → child resources.

  • Thực hành: Cài Application reconcile.

Ngày 24: Tạo child resources

  • Mục tiêu: Từ CR ra k8s objects.

  • Lý thuyết: Deployment/Service/ConfigMap.

  • Thực hành: Reconcile tạo child.

Ngày 25: Owner refs & GC

  • Mục tiêu: Dọn tài nguyên (nối Layer 4).

  • Lý thuyết: ownerReferences, cascade delete.

  • Thực hành: Set owner refs.

Ngày 26: Finalizers

  • Mục tiêu: Cleanup ngoài.

  • Lý thuyết: finalizer, external cleanup.

  • Thực hành: Thêm finalizer.

Ngày 27: Status & conditions

  • Mục tiêu: Báo cáo trạng thái.

  • Lý thuyết: status subresource, conditions.

  • Thực hành: Cập nhật status.

Ngày 28: Admission webhooks

  • Mục tiêu: Chặn cấu hình sai (nối Layer 4).

  • Lý thuyết: validating + mutating.

  • Thực hành: Webhook cho CRD.

Ngày 29: Environment controller

  • Mục tiêu: Provision môi trường.

  • Lý thuyết: namespace/vcluster per env (nối Layer 4).

  • Thực hành: Environment reconcile.

Ngày 30: CỘT MỐC 30

  • Mục tiêu: Chốt nền control plane.

  • Lý thuyết: Ôn Phase 0-1 tới giờ; kiểm kê: CRD + Application/Environment controller.

  • Thực hành: Đề thi #1 (control plane/CRD/reconcile) + tự chấm; blog #137 ("Xây control plane cho một Platform OS: reconciliation từ số 0"); tag capstone-day030; nghỉ nửa ngày. Đã đi 30/180 (17%).

Ngày 31: Tenant controller

  • Mục tiêu: Multi-tenancy (nối Layer 4/8).

  • Lý thuyết: RBAC + quota + NetworkPolicy per tenant.

  • Thực hành: Tenant reconcile áp isolation.

Ngày 32: Platform API

  • Mục tiêu: Cửa API.

  • Lý thuyết: aggregated API vs CRD-based.

  • Thực hành: Expose platform API.

Ngày 33: Dependency ordering

  • Mục tiêu: Thứ tự đúng.

  • Lý thuyết: reconcile phụ thuộc giữa resources.

  • Thực hành: Ordering + wait-for-ready.

Ngày 34: Error & requeue

  • Mục tiêu: Bền với lỗi.

  • Lý thuyết: backoff, requeueAfter.

  • Thực hành: Chiến lược requeue.

Ngày 35: Leader election & HA

  • Mục tiêu: Control plane HA.

  • Lý thuyết: leader election, replica.

  • Thực hành: Bật leader election.

Ngày 36: Observability controller

  • Mục tiêu: Nhìn control plane (nối Layer 7).

  • Lý thuyết: metrics/logs/traces reconcile.

  • Thực hành: Instrument controllers.

Ngày 37: Performance & scale

  • Mục tiêu: Chịu tải.

  • Lý thuyết: concurrent reconciles, cache.

  • Thực hành: Load test control plane.

Ngày 38: Testing controllers

  • Mục tiêu: Tin cậy (nối Layer 4).

  • Lý thuyết: envtest + e2e.

  • Thực hành: Test suite reconcile.

Ngày 39: RBAC least-privilege

  • Mục tiêu: An toàn (nối Layer 8).

  • Lý thuyết: quyền tối thiểu cho platform.

  • Thực hành: Siết RBAC.

Ngày 40: Packaging

  • Mục tiêu: Cài đặt được (nối Layer 4).

  • Lý thuyết: Helm/kustomize + OLM.

  • Thực hành: Đóng gói control plane.

Ngày 41: P1 - integrate & test

  • Mục tiêu: Control plane hoàn chỉnh.

  • Lý thuyết: rà toàn bộ controllers.

  • Thực hành: E2E: apply Platform CR → mọi thứ dựng.

Ngày 42: P1 - Control Plane + Operator/CRD

  • Mục tiêu: Release P1.

  • Lý thuyết: rà "done": CRD + controllers + webhook + HA + tests.

  • Thực hành: Đóng gói + blog #138 ("Control plane + Operator hoàn chỉnh cho Platform OS"). P1 done.

PHASE 2 - DSL (compiler/parser/validator/runtime) (Ngày 43-66) → P2

Ngày 43: DSL - vì sao

  • Mục tiêu: Ngôn ngữ riêng cho platform (nối Layer 1).

  • Lý thuyết: DSL cho provisioning/policy/workflow, hơn YAML.

  • Thực hành: DSL requirements doc.

Ngày 44: DSL language design

  • Mục tiêu: Cú pháp & ngữ nghĩa.

  • Lý thuyết: declarative, composable, typed.

  • Thực hành: Đặc tả ngôn ngữ.

Ngày 45: Grammar & AST

  • Mục tiêu: Nền compiler (nối Layer 1).

  • Lý thuyết: grammar, AST design.

  • Thực hành: Định nghĩa grammar + AST.

Ngày 46: Lexer

  • Mục tiêu: Token hoá.

  • Lý thuyết: lexical analysis.

  • Thực hành: Cài lexer.

Ngày 47: Parser

  • Mục tiêu: Dựng AST.

  • Lý thuyết: recursive descent/parser combinator.

  • Thực hành: Cài parser.

Ngày 48: Semantic analysis

  • Mục tiêu: Kiểm nghĩa (nối Layer 1).

  • Lý thuyết: type checking, scope, references.

  • Thực hành: Cài semantic analysis.

Ngày 49: Validator

  • Mục tiêu: Chặn cấu hình sai sớm.

  • Lý thuyết: static checks, policy constraints (nối Layer 5/8).

  • Thực hành: Validator rules.

Ngày 50: DSL - provisioning

  • Mục tiêu: Khai báo tài nguyên.

  • Lý thuyết: map DSL → platform resources.

  • Thực hành: DSL provisioning syntax.

Ngày 51: DSL - policy

  • Mục tiêu: Guardrails (nối Layer 5/8).

  • Lý thuyết: policy-as-DSL, OPA-like semantics.

  • Thực hành: DSL policy syntax.

Ngày 52: DSL - workflow

  • Mục tiêu: Pipeline/orchestration.

  • Lý thuyết: DAG/workflow in DSL.

  • Thực hành: DSL workflow syntax.

Ngày 53: IR

  • Mục tiêu: Biểu diễn trung gian (nối Layer 1).

  • Lý thuyết: IR để lowering.

  • Thực hành: Thiết kế IR.

Ngày 54: Compiler backend

  • Mục tiêu: DSL → manifests/CRD.

  • Lý thuyết: lowering IR → platform CRs.

  • Thực hành: Backend sinh CR.

Ngày 55: Runtime

  • Mục tiêu: Thực thi DSL.

  • Lý thuyết: interpret workflow, apply resources.

  • Thực hành: Runtime chạy DSL.

Ngày 56: Diagnostics

  • Mục tiêu: Lỗi rõ ràng (nối Layer 6 DX).

  • Lý thuyết: error message tốt, gợi ý sửa.

  • Thực hành: Diagnostics chất lượng.

Ngày 57: DSL tooling

  • Mục tiêu: DX cho DSL (nối Layer 1/6).

  • Lý thuyết: LSP, formatter, docs gen.

  • Thực hành: LSP + formatter cơ bản.

Ngày 58: DSL testing

  • Mục tiêu: DSL đúng.

  • Lý thuyết: test lexer/parser/semantics/backend.

  • Thực hành: Test suite DSL.

Ngày 59: DSL versioning

  • Mục tiêu: Tiến hoá DSL (nối Layer 6).

  • Lý thuyết: versioning, migration.

  • Thực hành: DSL version policy.

Ngày 60: CỘT MỐC 60

  • Mục tiêu: Chốt nền DSL.

  • Lý thuyết: Ôn Phase 2 tới giờ; kiểm kê: lexer→parser→semantic→backend→runtime.

  • Thực hành: Đề thi #2 (DSL/compiler) + tự chấm; blog #139 ("Một DSL riêng cho platform: compiler, validator, runtime"); tag capstone-day060; nghỉ nửa ngày. Đã đi 60/180 (33%).

Ngày 61: DSL ↔ control plane

  • Mục tiêu: Nối Phase 1.

  • Lý thuyết: DSL compile → apply → reconcile.

  • Thực hành: DSL → platform CR → control plane dựng.

Ngày 62: DSL - composition

  • Mục tiêu: Tái sử dụng.

  • Lý thuyết: module, import, composition.

  • Thực hành: DSL modules.

Ngày 63: DSL - secrets & refs

  • Mục tiêu: An toàn (nối Layer 5).

  • Lý thuyết: tham chiếu secret, không hardcode.

  • Thực hành: Secret reference trong DSL.

Ngày 64: DSL - self-service

  • Mục tiêu: Golden path (nối Layer 6).

  • Lý thuyết: dev viết DSL → platform lo phần còn lại.

  • Thực hành: Self-service qua DSL.

Ngày 65: P2 - end-to-end

  • Mục tiêu: DSL chạy trọn.

  • Lý thuyết: compile → apply → reconcile → running.

  • Thực hành: E2E một app qua DSL.

Ngày 66: P2 - DSL with compiler

  • Mục tiêu: Release P2.

  • Lý thuyết: rà "done": compiler + validator + runtime + tooling + tests.

  • Thực hành: Đóng gói + blog #140 ("DSL cho platform từ số 0: từ grammar tới reconcile"). P2 done.

PHASE 3 - Mesh/Gateway/GitOps/Multi-cluster (Ngày 67-90) → P3

Ngày 67: Networking architecture

  • Mục tiêu: Mạng của platform (nối Layer 3/4).

  • Lý thuyết: CNI + mesh + gateway + multi-cluster.

  • Thực hành: Networking design doc.

Ngày 68: CNI & pod networking

  • Mục tiêu: Kết nối pod (nối Layer 2/4).

  • Lý thuyết: Cilium (eBPF), NetworkPolicy.

  • Thực hành: Cài Cilium.

Ngày 69: Service mesh

  • Mục tiêu: East-west (nối Layer 4).

  • Lý thuyết: Istio/Envoy, sidecar/ambient.

  • Thực hành: Cài mesh.

Ngày 70: mTLS everywhere

  • Mục tiêu: Zero trust (nối Layer 8).

  • Lý thuyết: mTLS mọi service.

  • Thực hành: Bật mTLS strict.

Ngày 71: xDS integration

  • Mục tiêu: Điều khiển proxy (nối Layer 4).

  • Lý thuyết: control plane cấp xDS.

  • Thực hành: Tích hợp xDS.

Ngày 72: Traffic management

  • Mục tiêu: Định tuyến (preview Phase 8).

  • Lý thuyết: routing, weighted, canary.

  • Thực hành: Traffic rules.

Ngày 73: API Gateway

  • Mục tiêu: North-south (nối Layer 4).

  • Lý thuyết: Gateway API.

  • Thực hành: Expose app qua gateway.

Ngày 74: Gateway - auth/rate/TLS

  • Mục tiêu: Bảo vệ biên (nối Layer 5/8).

  • Lý thuyết: auth, rate limit, cert-manager TLS.

  • Thực hành: Policy tại gateway.

Ngày 75: GitOps

  • Mục tiêu: Git là nguồn sự thật (nối Layer 4).

  • Lý thuyết: ArgoCD/Flux.

  • Thực hành: Cài GitOps.

Ngày 76: GitOps - platform config

  • Mục tiêu: Platform từ Git.

  • Lý thuyết: config + drift detection.

  • Thực hành: Platform config qua Git.

Ngày 77: App-of-apps

  • Mục tiêu: Quản lý nhiều app.

  • Lý thuyết: ApplicationSet.

  • Thực hành: App-of-apps cho platform.

Ngày 78: Multi-cluster - Cluster API

  • Mục tiêu: Cluster khai báo (nối Layer 3/4).

  • Lý thuyết: Cluster API.

  • Thực hành: Tạo cluster khai báo.

Ngày 79: Multi-cluster - fleet

  • Mục tiêu: Quản nhiều cluster (nối Layer 4).

  • Lý thuyết: fleet management, placement.

  • Thực hành: Fleet + placement policy.

Ngày 80: Workload placement

  • Mục tiêu: Đặt workload đúng cluster.

  • Lý thuyết: placement rule, affinity.

  • Thực hành: Deploy tới nhiều cluster.

Ngày 81: Cross-cluster mesh

  • Mục tiêu: Mesh xuyên cluster (nối Layer 4).

  • Lý thuyết: east-west gateway, shared trust.

  • Thực hành: Cross-cluster service call.

Ngày 82: Cross-cluster observability

  • Mục tiêu: Nhìn xuyên cluster (nối Layer 7).

  • Lý thuyết: aggregate signals.

  • Thực hành: Observability đa cluster.

Ngày 83: Network security

  • Mục tiêu: Segmentation (nối Layer 8).

  • Lý thuyết: NetworkPolicy, microsegmentation.

  • Thực hành: Default-deny + rules.

Ngày 84: Ingress/egress control

  • Mục tiêu: Kiểm soát vào/ra.

  • Lý thuyết: egress gateway, control.

  • Thực hành: Egress control.

Ngày 85: Service catalog

  • Mục tiêu: Discovery (nối Layer 6).

  • Lý thuyết: Backstage catalog integration.

  • Thực hành: Catalog services của platform.

Ngày 86: Self-service networking via DSL

  • Mục tiêu: Nối Phase 2.

  • Lý thuyết: khai báo networking trong DSL.

  • Thực hành: DSL → networking config.

Ngày 87: Testing networking

  • Mục tiêu: E2E.

  • Lý thuyết: connectivity + policy tests.

  • Thực hành: Networking e2e test.

Ngày 88: P3 - integrate

  • Mục tiêu: Mesh+gateway+gitops+multi-cluster.

  • Lý thuyết: rà toàn networking stack.

  • Thực hành: Tích hợp toàn bộ.

Ngày 89: P3 - cross-cluster deploy

  • Mục tiêu: Chứng minh.

  • Lý thuyết: deploy app xuyên cluster qua GitOps.

  • Thực hành: E2E cross-cluster deploy.

Ngày 90: CỘT MỐC 90

  • Mục tiêu: Chốt networking; release P3.

  • Lý thuyết: Ôn Phase 3; kiểm kê: mesh + gateway + GitOps + multi-cluster.

  • Thực hành: P3 done; đề thi #3 (mesh/gateway/gitops/multi-cluster) + tự chấm; blog #141 ("Nối platform: mesh, gateway, GitOps, multi-cluster"); tag capstone-day090; nghỉ nửa ngày. Đã đi 90/180 (50%).

PHASE 4 - Virtualization/microVM (Ngày 91-102) → P4

Ngày 91: Isolation requirements

  • Mục tiêu: Workload nào cần microVM (nối Layer 2).

  • Lý thuyết: untrusted/multi-tenant workload.

  • Thực hành: Phân loại workload theo isolation.

Ngày 92: microVM integration

  • Mục tiêu: Chạy microVM (nối Layer 2).

  • Lý thuyết: Firecracker/Kata, containerd shim.

  • Thực hành: Chạy một microVM workload.

Ngày 93: RuntimeClass

  • Mục tiêu: Chọn runtime khai báo (nối Layer 4).

  • Lý thuyết: RuntimeClass (runc/kata/gvisor).

  • Thực hành: RuntimeClass cho microVM.

Ngày 94: Scheduling microVM

  • Mục tiêu: Đặt microVM đúng node.

  • Lý thuyết: node có KVM, taints.

  • Thực hành: Schedule microVM workload.

Ngày 95: microVM networking

  • Mục tiêu: Mạng cho microVM (nối Layer 2).

  • Lý thuyết: virtio-net + CNI.

  • Thực hành: microVM có mạng.

Ngày 96: microVM storage

  • Mục tiêu: Lưu trữ (nối Layer 2).

  • Lý thuyết: virtio-blk + CSI.

  • Thực hành: microVM có volume.

Ngày 97: microVM lifecycle

  • Mục tiêu: Quản qua control plane.

  • Lý thuyết: reconcile microVM workload.

  • Thực hành: Control plane quản microVM.

Ngày 98: Sandboxing tiers

  • Mục tiêu: Chọn mức cách ly (nối Layer 2).

  • Lý thuyết: container vs gVisor vs microVM.

  • Thực hành: Policy chọn tier theo tenant.

Ngày 99: Confidential computing

  • Mục tiêu: Cách ly mạnh nhất (nối Layer 8).

  • Lý thuyết: confidential containers (SEV/TDX).

  • Thực hành: Đọc + thử (nếu có phần cứng).

Ngày 100:

  • Mục tiêu: Kiểm kê lớn giữa Capstone.

  • Lý thuyết: Ôn Phase 0-4; kiểm kê lớn: control plane + DSL + networking + microVM; đối chiếu vision.

  • Thực hành: Đề thi #4 tích lũy (control plane+DSL+networking+microVM) + tự chấm theo rubric; blog #142 ("100 ngày Grand Capstone: control plane, DSL, networking, microVM"); tag capstone-day100; nghỉ nửa ngày. Đã đi 100/180 (56%).

Ngày 101: P4 - microVM via DSL

  • Mục tiêu: Self-service isolation.

  • Lý thuyết: khai báo microVM trong DSL.

  • Thực hành: DSL → microVM workload chạy.

Ngày 102: P4 - microVM integration

  • Mục tiêu: Release P4.

  • Lý thuyết: rà "done": microVM runtime + networking + storage + lifecycle.

  • Thực hành: Đóng gói + blog #143 ("microVM cho workload cách ly trong Platform OS"). P4 done.

PHASE 5 - Observability (Ngày 103-120) → P5

Ngày 103: Observability architecture

  • Mục tiêu: 4 tín hiệu (nối Layer 7).

  • Lý thuyết: metrics/logs/traces/profiles + correlation.

  • Thực hành: Observability design doc.

Ngày 104: Instrumentation (OTel)

  • Mục tiêu: Phát tín hiệu (nối Layer 7).

  • Lý thuyết: OTel across platform + collector.

  • Thực hành: Instrument control plane + workloads.

Ngày 105: Metrics

  • Mục tiêu: Số đo (nối Layer 7).

  • Lý thuyết: Prometheus + long-term.

  • Thực hành: Metrics platform.

Ngày 106: Logs

  • Mục tiêu: Nhật ký (nối Layer 7).

  • Lý thuyết: Loki + pipeline + trace_id.

  • Thực hành: Logs platform.

Ngày 107: Traces

  • Mục tiêu: Dấu vết (nối Layer 7).

  • Lý thuyết: Tempo + tail sampling.

  • Thực hành: Traces platform.

Ngày 108: Profiling

  • Mục tiêu: Trụ 4 (nối Layer 7).

  • Lý thuyết: Pyroscope/Parca.

  • Thực hành: Continuous profiling.

Ngày 109: Correlation

  • Mục tiêu: Nối tín hiệu (nối Layer 7).

  • Lý thuyết: exemplars + trace_id + span profiles.

  • Thực hành: Correlation end-to-end.

Ngày 110: Platform dashboards

  • Mục tiêu: Sức khoẻ platform.

  • Lý thuyết: control plane health dashboard.

  • Thực hành: Dashboard platform.

Ngày 111: Per-tenant observability

  • Mục tiêu: Multi-tenant (nối Layer 7).

  • Lý thuyết: tenant isolation trong observability.

  • Thực hành: Signals theo tenant.

Ngày 112: SLO instrumentation

  • Mục tiêu: Chuẩn bị reliability (nối Layer 11).

  • Lý thuyết: SLI cho platform services.

  • Thực hành: SLI metrics.

Ngày 113: Alerting

  • Mục tiêu: Cảnh báo (nối Layer 7/11).

  • Lý thuyết: burn-rate alert.

  • Thực hành: Alert platform.

Ngày 114: Observability self-service

  • Mục tiêu: Dev thấy signals (nối Layer 6).

  • Lý thuyết: golden path tự nối observability.

  • Thực hành: Self-service dashboards.

Ngày 115: Auto-instrumentation

  • Mục tiêu: Không cần công (nối Layer 6).

  • Lý thuyết: golden path tự instrument.

  • Thực hành: App mới có sẵn signals.

Ngày 116: Observe DSL/control plane

  • Mục tiêu: Quan sát chính mình.

  • Lý thuyết: trace DSL compile + reconcile.

  • Thực hành: Observability cho platform internals.

Ngày 117: Cost of observability

  • Mục tiêu: Không phá ngân sách (nối Layer 11).

  • Lý thuyết: retention, sampling, cost.

  • Thực hành: Cost guardrail.

Ngày 118: Testing observability

  • Mục tiêu: Tín hiệu đúng.

  • Lý thuyết: verify signals + correlation.

  • Thực hành: Observability test.

Ngày 119: P5 - integrate

  • Mục tiêu: Observability hoàn chỉnh.

  • Lý thuyết: 4 tín hiệu + correlation + self-service.

  • Thực hành: Tích hợp toàn bộ.

Ngày 120: CỘT MỐC 120

  • Mục tiêu: Chốt observability; release P5.

  • Lý thuyết: Ôn Phase 5; kiểm kê: 4 tín hiệu + correlation + per-tenant.

  • Thực hành: P5 done; đề thi #5 (observability tích hợp) + tự chấm; blog #144 ("Observability 4 tín hiệu + correlation cho Platform OS"); tag capstone-day120; nghỉ nửa ngày. Đã đi 120/180 (67%).

PHASE 6 - Security (Ngày 121-138) → P6

Ngày 121: Security architecture

  • Mục tiêu: Zero trust (nối Layer 8/5).

  • Lý thuyết: never trust, assume breach.

  • Thực hành: Security architecture doc.

Ngày 122: Workload identity

  • Mục tiêu: Máy có danh tính (nối Layer 5/8).

  • Lý thuyết: SPIFFE/SPIRE, mTLS identity.

  • Thực hành: Cấp SVID cho workload.

Ngày 123: PKI & cert

  • Mục tiêu: Chứng chỉ (nối Layer 5/8).

  • Lý thuyết: CA hierarchy, cert-manager.

  • Thực hành: PKI + auto-rotate cert.

Ngày 124: Secret management

  • Mục tiêu: Secret an toàn (nối Layer 5).

  • Lý thuyết: Vault, dynamic secret, injection.

  • Thực hành: Tích hợp Vault.

Ngày 125: Policy (OPA/Kyverno)

  • Mục tiêu: Guardrails (nối Layer 4/5/8).

  • Lý thuyết: validate/mutate/generate policy.

  • Thực hành: Bộ policy platform.

Ngày 126: Policy-as-code + tests

  • Mục tiêu: Policy tin cậy (nối Layer 8).

  • Lý thuyết: test policy, audit mode.

  • Thực hành: Policy có test.

Ngày 127: Admission verify

  • Mục tiêu: Chỉ chạy cái đã ký (nối Layer 8).

  • Lý thuyết: verify signature + provenance.

  • Thực hành: Admission verify image.

Ngày 128: Supply chain

  • Mục tiêu: Tin cậy artifact (nối Layer 8).

  • Lý thuyết: SBOM + SLSA + cosign.

  • Thực hành: Signed supply chain cho platform.

Ngày 129: Signed platform images

  • Mục tiêu: Platform tự an toàn.

  • Lý thuyết: ký image platform + enforce.

  • Thực hành: Sign + admission enforce.

Ngày 130: Runtime security

  • Mục tiêu: Phát hiện lúc chạy (nối Layer 8).

  • Lý thuyết: Falco/Tetragon.

  • Thực hành: Detection rules.

Ngày 131: Runtime enforcement

  • Mục tiêu: Chặn hành vi xấu (nối Layer 8).

  • Lý thuyết: enforcement + response.

  • Thực hành: Enforce + response.

Ngày 132: Network security

  • Mục tiêu: Segmentation (nối Layer 8).

  • Lý thuyết: NetworkPolicy, egress control (recap Phase 3).

  • Thực hành: Siết network security.

Ngày 133: Pod security

  • Mục tiêu: Pod an toàn (nối Layer 4/8).

  • Lý thuyết: PSA restricted, securityContext.

  • Thực hành: Enforce PSA.

Ngày 134: Encryption

  • Mục tiêu: Mã hoá dữ liệu (nối Layer 8).

  • Lý thuyết: at rest + in transit, KMS.

  • Thực hành: Encryption everywhere.

Ngày 135: Audit logging

  • Mục tiêu: Truy vết (nối Layer 7/8).

  • Lý thuyết: audit log tập trung.

  • Thực hành: Audit log platform.

Ngày 136: Compliance

  • Mục tiêu: Ánh xạ chuẩn (nối Layer 8).

  • Lý thuyết: CIS/NIST mapping.

  • Thực hành: Compliance-as-code check.

Ngày 137: Security via DSL

  • Mục tiêu: Policy trong DSL (nối Phase 2).

  • Lý thuyết: khai báo guardrail bằng DSL.

  • Thực hành: DSL policy → enforce.

Ngày 138: P6 - Security integrated

  • Mục tiêu: Release P6.

  • Lý thuyết: rà "done": zero-trust + policy + supply chain + runtime + compliance.

  • Thực hành: Đóng gói + blog #145 ("Bảo mật toàn diện cho Platform OS: zero trust, supply chain, runtime"). P6 done.

PHASE 7 - Data & AI Platform (Ngày 139-150) → P7

Ngày 139: Data platform architecture

  • Mục tiêu: Data dùng chung (nối Layer 9).

  • Lý thuyết: ingest → lakehouse → query → catalog.

  • Thực hành: Data platform design.

Ngày 140: Data - streaming + lakehouse

  • Mục tiêu: Đường dữ liệu (nối Layer 9).

  • Lý thuyết: Kafka/CDC → Iceberg/Delta.

  • Thực hành: Ingest → lakehouse.

Ngày 141: Data - query + catalog

  • Mục tiêu: Phục vụ & governance (nối Layer 9).

  • Lý thuyết: Trino + catalog + lineage.

  • Thực hành: Query + catalog.

Ngày 142: Data self-service

  • Mục tiêu: Golden path data (nối Layer 9/6).

  • Lý thuyết: khai báo pipeline qua DSL.

  • Thực hành: Self-service data pipeline.

Ngày 143: AI - GPU infra

  • Mục tiêu: Nền AI (nối Layer 10).

  • Lý thuyết: GPU scheduling/MIG/DCGM.

  • Thực hành: GPU infra trên platform.

Ngày 144: AI - training + registry

  • Mục tiêu: Vòng đời model (nối Layer 10).

  • Lý thuyết: distributed training + MLflow.

  • Thực hành: Train → registry.

Ngày 145: AI - serving + LLM

  • Mục tiêu: Phục vụ model (nối Layer 10).

  • Lý thuyết: KServe/Triton + vLLM.

  • Thực hành: Serve model/LLM.

Ngày 146: AI - RAG + LLMOps

  • Mục tiêu: Ứng dụng LLM (nối Layer 10).

  • Lý thuyết: vector DB + RAG + eval/guardrails.

  • Thực hành: RAG endpoint.

Ngày 147: Data/AI governance & security

  • Mục tiêu: An toàn dữ liệu (nối Layer 9/8).

  • Lý thuyết: PII/masking + access control.

  • Thực hành: Governance data/AI.

Ngày 148: Data/AI via DSL + golden path

  • Mục tiêu: Self-service (nối Phase 2/Layer 6).

  • Lý thuyết: khai báo data/AI workload qua DSL.

  • Thực hành: DSL → data/AI workload.

Ngày 149: P7 - integrate

  • Mục tiêu: Data + AI dùng chung.

  • Lý thuyết: rà toàn stack data/AI.

  • Thực hành: Tích hợp trên platform.

Ngày 150: CỘT MỐC 150

  • Mục tiêu: Chốt data & AI; release P7.

  • Lý thuyết: Ôn Phase 7; kiểm kê: data platform + AI platform dùng chung.

  • Thực hành: P7 done; đề thi #6 (data/AI platform tích hợp) + tự chấm; blog #146 ("Data & AI platform dùng chung trong Platform OS"); tag capstone-day150; nghỉ nửa ngày. Đã đi 150/180 (83%).

PHASE 8 - Progressive Delivery (Ngày 151-156)

Ngày 151: Progressive delivery cho platform

  • Mục tiêu: Nâng cấp platform an toàn (nối Layer 6).

  • Lý thuyết: deploy tách release, canary.

  • Thực hành: Design progressive delivery.

Ngày 152: Canary platform components

  • Mục tiêu: Canary chính platform (nối Layer 6).

  • Lý thuyết: Argo Rollouts cho control plane/components.

  • Thực hành: Canary một component.

Ngày 153: SLO-based promotion

  • Mục tiêu: Promote theo độ tin cậy (nối Layer 11).

  • Lý thuyết: analysis theo SLO.

  • Thực hành: Promotion theo SLO.

Ngày 154: Feature flags

  • Mục tiêu: Tách release (nối Layer 6).

  • Lý thuyết: OpenFeature cho platform features.

  • Thực hành: Flag một tính năng platform.

Ngày 155: Auto-rollback

  • Mục tiêu: An toàn tự động (nối Layer 6).

  • Lý thuyết: rollback khi SLO vi phạm.

  • Thực hành: Auto-rollback platform upgrade.

Ngày 156: Test progressive delivery

  • Mục tiêu: Nâng cấp platform không downtime.

  • Lý thuyết: canary + rollback cho một upgrade.

  • Thực hành: Upgrade platform qua progressive delivery.

PHASE 9 - Reliability (Ngày 157-168) → P8

Ngày 157: Reliability architecture

  • Mục tiêu: SLO cho platform (nối Layer 11).

  • Lý thuyết: SLI/SLO/error budget.

  • Thực hành: SLO cho platform services.

Ngày 158: SLO dashboard

  • Mục tiêu: Nhìn độ tin cậy (nối Layer 11/7).

  • Lý thuyết: SLO + budget burndown.

  • Thực hành: SLO dashboard platform.

Ngày 159: Error budget policy

  • Mục tiêu: Budget dẫn quyết định (nối Layer 11).

  • Lý thuyết: freeze khi budget cạn.

  • Thực hành: Error budget policy.

Ngày 160: Chaos experiments

  • Mục tiêu: Tìm điểm gãy (nối Layer 11).

  • Lý thuyết: Chaos Mesh, hypothesis, blast radius.

  • Thực hành: Chaos experiments cho platform.

Ngày 161: Game-day

  • Mục tiêu: Diễn tập (nối Layer 11).

  • Lý thuyết: game-day plan + roles.

  • Thực hành: Game-day platform.

Ngày 162: DR - backup (Velero)

  • Mục tiêu: Sao lưu (nối Layer 11/4).

  • Lý thuyết: Velero backup/restore.

  • Thực hành: Backup platform state.

Ngày 163: DR - multi-region failover

  • Mục tiêu: Chuyển vùng (nối Layer 11/5).

  • Lý thuyết: multi-region, RTO/RPO.

  • Thực hành: Failover platform sang region khác.

Ngày 164: DR runbook

  • Mục tiêu: Phục hồi có hướng dẫn (nối Layer 11).

  • Lý thuyết: DR runbook + validation.

  • Thực hành: Viết DR runbook.

Ngày 165: Incident management

  • Mục tiêu: Xử sự cố (nối Layer 11).

  • Lý thuyết: on-call + escalation + postmortem.

  • Thực hành: Incident process cho platform.

Ngày 166: Capacity planning

  • Mục tiêu: Đủ tài nguyên (nối Layer 11).

  • Lý thuyết: demand forecast + headroom.

  • Thực hành: Capacity plan platform.

Ngày 167: P8 - reliability integrate

  • Mục tiêu: SLO + chaos + DR.

  • Lý thuyết: rà toàn reliability.

  • Thực hành: Game-day: chaos + failover, SLO chịu được.

Ngày 168: P8 - Reliability

  • Mục tiêu: Release P8.

  • Lý thuyết: rà "done": SLO dashboard + chaos + DR runbook.

  • Thực hành: Đóng gói + blog #147 ("Reliability cho Platform OS: SLO, chaos, DR"). P8 done.

PHASE 10 - Dashboards & OSS Release (Ngày 169-180) → P9 flagship

Ngày 169: Dashboard - DORA

  • Mục tiêu: Đo delivery (nối Layer 6).

  • Lý thuyết: deploy freq/lead time/CFR/MTTR.

  • Thực hành: DORA dashboard.

Ngày 170: Dashboard - SPACE/DevEx

  • Mục tiêu: Đo trải nghiệm (nối Layer 6).

  • Lý thuyết: SPACE + DevEx metrics.

  • Thực hành: DevEx dashboard.

Ngày 171: Dashboard - FinOps/Capacity

  • Mục tiêu: Đo chi phí (nối Layer 11).

  • Lý thuyết: cost allocation + capacity.

  • Thực hành: FinOps + capacity dashboard.

Ngày 172: Platform product metrics

  • Mục tiêu: Đo giá trị platform (nối Layer 6/11).

  • Lý thuyết: adoption, time-to-value, NPS.

  • Thực hành: Adoption dashboard.

Ngày 173: Docs - architecture

  • Mục tiêu: Tài liệu như OSS.

  • Lý thuyết: architecture doc + diagrams.

  • Thực hành: Architecture documentation.

Ngày 174: Docs - RFC/ADR archive

  • Mục tiêu: Lưu quyết định (nối Leadership).

  • Lý thuyết: RFC + ADR archive.

  • Thực hành: Tổng hợp RFC/ADR.

Ngày 175: Docs - runbook/roadmap

  • Mục tiêu: Vận hành + hướng đi (nối Layer 11).

  • Lý thuyết: runbook library + roadmap.

  • Thực hành: Runbooks + roadmap.

Ngày 176: Docs - getting-started/golden path

  • Mục tiêu: Dev tự dùng (nối Layer 6).

  • Lý thuyết: getting-started, golden path docs.

  • Thực hành: Onboarding docs.

Ngày 177: OSS readiness

  • Mục tiêu: Sẵn sàng cộng đồng (nối Layer 13).

  • Lý thuyết: CONTRIBUTING, governance, license.

  • Thực hành: OSS setup + governance.

Ngày 178: Full integration test

  • Mục tiêu: Toàn platform chạy.

  • Lý thuyết: E2E: DSL → control plane → mesh → observ → security → data/AI.

  • Thực hành: Full E2E test.

Ngày 179: Full game-day + final review

  • Mục tiêu: Chứng minh toàn diện.

  • Lý thuyết: chaos + DR + SLO dưới tải; rà toàn Capstone.

  • Thực hành: Game-day tổng + final review.

Ngày 180: HOÀN THÀNH GRAND CAPSTONE

  • Mục tiêu: Chốt Cloud-Native Platform OS - tích hợp toàn bộ chương trình.

  • Lý thuyết: Ôn toàn Capstone; kiểm kê tổng: P1 control plane + P2 DSL + P3 networking + P4 microVM + P5 observability + P6 security + P7 data/AI + P8 reliability + P9 full platform + dashboards + OSS docs.

  • Thực hành: P9 done; đề thi #7 tích lũy (toàn Capstone) + tự chấm theo rubric; blog #148 ("Cloud-Native Platform OS: tích hợp cả hành trình thành một sản phẩm"); tag capstone-complete; nghỉ trọn một ngày ăn mừng.