SWE Wiki › Lộ trình

Lộ trình từ đơn giản đến phức tạp

Tổng hợp từ 931 nguồn (đã đọc toàn văn) của 141 công ty, 1999–2026. Các giai đoạn dưới đây không phải đường bắt buộc: nhiều công ty dừng lại, đi tắt hoặc quay ngược.

Giai đoạn 1: Khởi đầu đơn giản

Một app, một database quan hệ, công nghệ quen thuộc. Mục tiêu là đội nhỏ vận hành được.

  • Instagram 2011: 3 kỹ sư, 14 triệu user, nguyên tắc "đơn giản, không phát minh lại". Instagram 2011
  • Twilio 2014: tách dữ liệu cuộc gọi đang chạy và đã xong, đặt service trước DB rồi mới shard MySQL. Twilio 2014
  • Discord 2015: MongoDB một replica set, chọn cố ý để ra sản phẩm trong 2 tháng, kèm đường thoát. Discord 2017
  • Grab 2012: Rails + RDS MySQL trên AWS; dưới 10 kỹ sư vận hành nhờ managed service. Grab 2017
  • Facebook 2004: LAMP, mỗi trường đại học một DB; rồi Memcache, TAO, data center riêng. Meta 2025
  • Stack Overflow 2009: hai web server và một SQL Server, khi chạm giới hạn thì nâng RAM; "phần cứng rẻ, lập trình viên đắt". Stack Overflow 2009
  • Medium 2012: một monolith Node.js, module hoá theo loại dữ liệu nên 2018 bóc ra service khá dễ. Medium 2018
  • GitHub, Slack, Uber đều bắt đầu bằng một monolith + một DB quan hệ. GitHub 2021 Slack 2020 Uber 2015

Thứ vỡ đầu tiên: lượng ghi lên một DB và ID không còn duy nhất khi phân tán, xem Sinh ID phân tán.

Giai đoạn 2: Tăng trưởng, vắt kiệt từng máy rồi chia dữ liệu

Giai đoạn 3: Quy mô lớn, nhiều team và nhiều vùng

  • Tách service vì tổ chức nhiều hơn vì traffic: Monolith và microservices — đi và quay lại

  • Tách xong phải có "đường ray" chung (contract, RPC, observability): Nền tảng nội bộ cho service (đường ray chung)

  • Đổi ngôn ngữ có phạm vi, không viết lại toàn bộ: Đổi ngôn ngữ và runtime

  • Một sự cố lớn dẫn tới đa vùng: Độ tin cậy và multi-region

  • Bên trong một cụm: promote replica, RPO, replication không thay backup, active-active hay active-passive: Failover, replica và dự phòng dữ liệu

  • Bài toán đặc thù của sản phẩm realtime: Realtime và fan-out

  • Service nói chuyện qua event thay vì gọi nhau: thứ tự, trùng, dead letter, broker dùng chung: Event-driven, message queue và Kafka

  • Tính liên tục trên luồng event thay vì quét lại: state và checkpoint, join/cửa sổ, xử lý lại khi logic đổi, lambda hay kappa, HA của job stream: Stream processing

  • Dữ liệu bị chia thì giao dịch cũng bị chia; gom lại, để hạ tầng lo, hay để ứng dụng lo: Giao dịch phân tán và nhất quán xuyên service

  • Mọi bước trên đều phải làm khi hệ thống đang chạy: Migration không downtime

  • Đưa thay đổi lên production mà giới hạn được thiệt hại: Deploy và release an toàn

  • Khi cầu vượt cung: rate limit, cắt tải, giảm chất lượng có kiểm soát, worker tự lùi: Load shedding, rate limit và backpressure

  • Để máy tự phát hiện và tự sửa (failover, health check, operator, tự sửa fleet), và giới hạn quyền của nó: Tự động hoá vận hành và auto-remediation

  • Sự cố lớn thường là tổ hợp thay đổi nhỏ + bộ khuếch đại + giới hạn ẩn, và hay là lý do của thay đổi kiến trúc: Sự cố và postmortem

  • Hàng trăm service, hàng trăm người: ai được gọi, ai chỉ huy, lịch trực sinh tự động, ChatOps: Xử lý sự cố và on-call

  • Ít SRE, nhiều team: đội reliability đứng ở trung tâm, nhúng vào team hay chia theo mức, và nhân rộng thực hành bằng mặc định: Mô hình tổ chức SRE

  • Hệ quan sát thành một hệ phân tán riêng: pipeline log/metric phải đo độ đầy đủ, tách nóng/lạnh, và không được chết cùng hạ tầng nó quan sát: Observability và monitoring

  • Theo một request qua hàng chục service: truyền trace context, lấy mẫu theo hình dạng tải, hay một dòng log tổng hợp mỗi request: Tracing phân tán và log theo request

  • Số component tăng nhanh hơn số người: thay đổi xuyên suốt phải làm cho cả fleet (BOM, biến đổi code tự động, automerge, rollout theo cohort): Quản lý fleet và migrate code hàng loạt

  • Chạy hết test mỗi commit thành bất khả: chọn việc theo phụ thuộc (đồ thị build hay file đã mở), shard theo cây phụ thuộc, remote cache cả kết quả test, giữ trạng thái giữa các lần chạy: CI và build ở quy mô lớn; cấu hình CI sinh từ diff hay từ đồ thị phụ thuộc thay vì lớn theo số thành phần (Grab 2022, Pinterest 2021), công cụ CI có sẵn thành lớp điều phối riêng khi lớn (Yahoo 2017, Wix 2020)

  • Hoá đơn hạ tầng thành một trục scale riêng; tự xây hay thuê: Chi phí hạ tầng và build vs buy

  • Dữ liệu bền rời khỏi máy xử lý (đĩa qua mạng, storage dùng chung, object storage) để compute co giãn và thay thế mà không chép dữ liệu, đổi lại latency mỗi lần ghi: Tách compute khỏi storage

  • Credential tăng theo số service và nhà cung cấp; kẻ tấn công đi đường vòng qua dev, build server, CI, cache, log: Bảo mật hạ tầng và quản lý secret

  • Tách monolith làm vỡ "một đường vào dữ liệu": logic phân quyền bị nhân bản, token đi sâu vào hệ; gom về data service hay hệ tập trung (Zanzibar, policy), xác thực ở edge: Xác thực và phân quyền (authn/authz)

  • Chủ động gây lỗi để biết hệ thống phản ứng thế nào: chaos ở production, fault injection có hệ thống, mô phỏng tất định chạy code thật: Kiểm thử độ tin cậy (chaos, fault injection, mô phỏng tất định)

  • Frontend cũng tiến hoá: render ở đâu, gửi bao nhiêu và lúc nào, nhiều team deploy độc lập trên một trang: Kiến trúc frontend

  • Vector search vào production: đặt index trong DB chính hay kho riêng, nén để vừa RAM, và query có filter thành bài toán planner: Vector search và index ANN

  • Nhiều khách trên cùng hạ tầng: chia dữ liệu theo tenant đến mức nào (cột, schema, pod, DB riêng), chống noisy neighbor bằng giới hạn và công bằng theo tenant, service ánh xạ tenant là phụ thuộc cứng, dời tenant thành thao tác thường ngày: Multi-tenancy và cô lập tenant

  • Trước một mốc tải chưa từng gặp (ra mắt, push toàn quốc, mùa giải): load test với kịch bản theo tải thật, tăng theo bậc, ngưỡng theo SLO, rồi scale trước theo cấu hình đã đạt: Load test và kiểm chứng capacity

  • Phục vụ LLM: cold start tính bằng phút, tín hiệu tải của GPU đánh lừa, lỗi chất lượng vẫn trả 200; autoscale theo việc đang chờ, canary đổi model có thứ tự capacity/traffic, engine dự phòng dùng chung weight: Hạ tầng phục vụ LLM inference

  • Nhiều team cùng thay đổi một sản phẩm: gán biến thể bằng hash có salt, trạng thái phát hành nằm ngoài code, bất biến thống kê nhúng vào nền tảng, guardrail metric và holdback: Thử nghiệm A/B và nền tảng experimentation

  • Giao việc engineering cho coding agent: đặc tả kiểm được bằng máy, cổng không được tự miễn, worktree riêng để chạy song song, và kiểm từng hành động theo ý định người dùng: Coding agent trong engineering (migrate, viết lại, chạy song song, quyền hạn)

  • Nhiều model ML ở production: một định nghĩa feature cho training lẫn serving, mỗi model một pool phục vụ riêng, lịch phát hành model tách khỏi code và có bước shadow trên traffic thật, giám sát phân phối input/output cho mọi model vì model sai mà không lỗi: Nền tảng ML (feature, training, serving, giám sát model)

  • Công ty giao dịch định lượng (Jane Street, HRT, Two Sigma, Optiver, Man Group) không kể chiến lược, nhưng kể hạ tầng quanh vòng nghiên cứu: chọn dữ liệu tránh lookahead, cùng code feature cho lịch sử và live, compute nhiều site với vị trí chạy quyết định trước, lưu trữ tự xây ở hàng trăm PB, backtest chuẩn hoá ở miền tín hiệu/nhiễu thấp: Hạ tầng nghiên cứu định lượng (dữ liệu thị trường, feature, backtest)

  • Đường nóng ở thang micro/nanosecond: một thread không phải phối hợp thay vì nhiều thread qua hàng đợi, không cấp phát và GC vào lúc rảnh, huge page và TLB, đo bằng trace phần cứng thay vì profiler lấy mẫu: Hệ thống độ trễ thấp (low latency)

  • Khi sản phẩm hứa server không được đọc (mã hoá đầu cuối), mọi việc "bình thường" phải làm lại: fan-out dời về client, sao lưu bằng khoá trong HSM, metric bằng token ẩn danh, chống chính nhà vận hành bằng log append-only và chữ ký bên thứ ba, AI trong TEE hoặc trên máy: Mã hoá đầu cuối và hệ thống mà server không được đọc

Giai đoạn 4: Điều chỉnh, sửa chính những gì đã làm

  • Segment gom 140+ service về một và chấp nhận mất cô lập lỗi. Segment 2018
  • Uber gom 2.200 microservice thành 70 domain. Uber 2020
  • Shopify nhìn lại modular monolith sau 18 tháng: ý tưởng giữ nguyên, chi tiết đổi gần hết. Shopify 2020
  • Discord thay Cassandra mà họ từng ca ngợi năm 2017. Discord 2023
  • Twitter thay Gizzard tự xây (2010) bằng Vitess (2023). Twitter 2023
  • Shopify đưa reservation từ Redis về MySQL. Shopify 2026
  • Etsy thay tầng sharding tự xây (2010) bằng Vitess mà không dời dữ liệu. Etsy 2026
  • Pinterest bỏ feed sinh sẵn, chuyển sang sinh lúc đọc. Pinterest 2018
  • Dropbox bỏ SSD cache từng là lựa chọn đúng năm 2017. Dropbox 2022
  • Zalando bổ sung read API cho kiến trúc "chỉ có event" (2016) vì mỗi team tự dựng bản sao dữ liệu. Zalando 2025
  • LinkedIn gộp ba mid-tier search về một, rồi phải lo cô lập vertical trong service gộp. LinkedIn 2018

Mẫu lặp lại xuyên công ty

  1. Giữ engine quen thuộc, thêm một tầng phía trên: Slack và GitHub (MySQL + Vitess), Figma (Postgres + DBProxy), Instagram (Postgres + shard logic). Lý do chung là chuyên môn vận hành nhiều năm.

  2. Tách logic trước, tách vật lý sau: GitHub (linter), Figma (PgBouncer rồi view), Instagram (shard logic nhiều hơn máy).

  3. Kiểm chứng bằng traffic thật: shadow traffic (Grab), đọc kép có diff (Slack, Discord), Scientist (GitHub), shadow reads (Figma).

  4. GC là nhân vật phụ quen thuộc: Instagram tắt GC; Discord bỏ Go và bỏ Cassandra (JVM) vì GC.

  5. Khoá chia dữ liệu theo thời gian hoặc theo khách hàng sẽ tạo hot spot: Twitter, Slack, Figma.

  6. Cô lập theo ô để thu nhỏ blast radius: Shopify pod, Uber subcluster, Grab bulkhead, Netflix 3 zone cùng active.

  7. Một đợt tải đủ lớn sẽ tìm ra nút thắt mới; mật độ tăng thì nút thắt dời chỗ: Discord 2026, Dropbox SSD/SMR, Shopify (connection, không phải CPU).

  8. Xem lại quyết định cũ: những gì đúng ở một quy mô hoặc một phiên bản engine có thể sai ở quy mô khác (Shopify, Twitter, Dropbox, Figma 2019 → 2024).

  9. Giữ monolith nhưng tách deploy: LinkedIn chạy một codebase thành nhiều cụm; Shopify modular monolith. Số người không tự động buộc phải tách service.

  10. Thành phần trên đường đi của mọi request là điểm hỏng chung: index DB của Etsy, Tenant Context Service của Atlassian, Tenant Service của Cloudflare.

  11. Giải bài toán đơn giản hơn thay vì bài toán đúng 100%: Monzo bỏ cache invalidation chuẩn và chỉ cắt tải khi quá tải; Atlassian gửi ID thay vì dữ liệu qua kênh realtime để khỏi phân quyền trên kênh. Monzo 2023 Atlassian 2019

  12. Đổi quy trình trước, đổi nền tảng sau: GitLab làm CD trên hạ tầng cũ trước khi lên Kubernetes; Allegro dùng đợt dời DC để chuẩn hoá. GitLab 2019 Allegro 2016

  13. Static stability: data plane phải sống khi control plane chết. Cùng sự cố AWS us-east-1 năm 2025, PlanetScale và Render chạy tiếp nhờ điều này; Coinbase 2026 thì ngược lại, mất một AZ thành mất cả sàn vì thiếu failover xuyên AZ. PlanetScale 2025 Render 2025 Coinbase 2026

  14. Trạng thái kẹt sau khi lỗi đã hết: kết nối hay pool bắt lấy trạng thái xấu trong lúc bất ổn và giữ nó sau khi gốc đã lành: Railway 2026 (kết nối storage trên mạng quản trị, tunnel sai địa chỉ), Inngest 2026 (PgBouncer hồi sau DB 10 phút), Neon 2025 (IP trong cooldown). Phục hồi cần một bước khẳng định lại trạng thái. Railway 2026 Inngest 2026 Neon 2025

  15. Dự phòng không chạy thường xuyên thì mục: Cloudflare rút Workers KV về một nhà cung cấp để bớt phức tạp, khi nhà cung cấp đó sập thì hạ tầng và code của backend thứ hai đã không bật lại được; GoCardless có failover tự động chạy tốt hai năm rồi không promote được. Ngược lại, Algolia giữ đường DNS dự phòng ngay trong client. Cloudflare 2025 GoCardless 2017 Algolia 2015

  16. Năng lực dự phòng phải nằm sẵn, không đợi scale: Yelp từng "làm chảy" region khoẻ khi failover nên mọi service luôn chạy đủ container cho 2 lần traffic; Atlassian coi headroom theo broker nóng nhất là tính năng độ tin cậy; Redpanda chừa sẵn dung lượng đĩa thu hồi được. Scale lúc khẩn cấp vừa chậm vừa có thể hỏng. Yelp 2021 Atlassian 2026 Redpanda 2025

  17. Các bên cùng thao tác trên một hệ va vào nhau: hai operator cùng rút máy, hoặc operator làm việc khác giữa lúc automation rolling reboot, làm Kafka thiếu replica (Twitter 2023, sửa bằng một trọng tài chung); Yelp tắt self-healing khi migrate Kafka; Karpenter evict pod lúc Flink đang tự rescale (Zalando); công cụ deploy lấy khoá hạ tầng để không va với autoscaler (Dream11 2022). An toàn đến từ một nơi biết mọi thao tác đang diễn ra, không từ kỷ luật của từng bên. Twitter 2023 Yelp 2022 Zalando 2026 Dream11 2022

  18. Trao quyền cho team, giữ guardrail ở nền tảng: Monzo cho deploy chỉ với một review nhưng pipeline chặn thao tác sai và phát sẵn metric, alert (2022), và để mỗi team tự trực trên nền tảng định tuyến alert chung (2021); Tinder để mỗi team dựng gateway riêng bằng cấu hình trên một framework chung giữ session và auth (2022). Khi số team tăng, phần chung chuyển từ người duyệt sang công cụ. Monzo 2022 Monzo 2022 Tinder 2022

  19. Đội reliability đứng ở đâu thay đổi theo tổ chức, nhưng team sở hữu vẫn trực: Netflix có team trung tâm không sở hữu service, canh KPI kinh doanh và chỉ huy sự cố (2020); Mercari nhúng SRE vào từng team sản phẩm (2021–2022); Booking chia việc theo ba mức hỗ trợ do lãnh đạo sản phẩm chọn theo độ quan trọng, nhưng developer luôn giữ pager (2019). Netflix 2020 Mercari 2022 Booking.com 2019

  20. Đổi nền tảng chạy là migration xuyên mọi tầng: đưa máy Arm vào đội x86 buộc Uber gỡ phụ thuộc vòng giữa công cụ build, CI và nền tảng stateful, rồi chuyển theo tier và zone (2023–2025); chuyển monolith PHP từ VM sang Kubernetes vấp quota của load balancer cloud (Mercari 2022). Điều kiện chung: một artifact chạy được ở cả hai nơi để chuyển dần theo phần trăm. Uber 2025 Uber 2025 Mercari 2022

  21. Hệ giám sát chung miền lỗi với hệ được giám sát thì tắt đúng lúc cần: Airbnb 2026 tách metrics platform khỏi cluster và service mesh dùng chung, thêm meta-monitoring và dead man's switch Airbnb 2026; Upstash giám sát từ bên ngoài, mỗi replica một check Upstash 2026; cùng ý với mẫu 13 (control plane chết thì data plane vẫn phải sống), mà WarpStream 2026 áp vào đường ghi WarpStream 2026.

  22. Đổi mặc định ở nền tảng, kèm lối thoát có kiểm soát: Slack 2023 bật IMDSv2 trong module Terraform chung với danh sách account ngoại lệ co dần, dùng cùng danh sách cho policy chặn Slack 2023; Achievers 2022 sinh dashboard và alert mặc định cho mọi service, team tắt hay tuỳ biến được Achievers 2022; Notion 2026 đưa đánh đổi spot/on-demand ra thành vài mức có tên Notion 2026; Amazon Apollo (2014) gói logic deploy an toàn vào một dịch vụ chung Amazon 2014.

  23. Một cơ chế làm hai việc thì kẹt khi một việc tăng: GitHub 2026 dùng cùng bản sao đầy đủ cho độ bền và cho đọc, nên thêm replica để đỡ đọc làm push chậm đi, và tách storage khỏi compute GitHub 2026; LinkedIn 2014 dựng index tăng dần nên không dựng lại được, và tách index offline bất biến khỏi lớp cập nhật LinkedIn 2014; Chubby (2006) được thiết kế làm khoá nhưng thành name service, phải thêm đường chuyên cho tra tên Google 2006.

  24. Dữ liệu dẫn xuất chỉ cần luồng cập nhật "đủ tốt" nếu dựng lại hay đối chiếu được: Instagram 2015 chấp nhận mất sự kiện trên Firehose vì có base build từ snapshot Instagram 2015; Allegro 2024 chọn batch idempotent và so số dòng thay vì CDC Allegro 2024; Instacart 2023 làm mới theo lượt search nhưng vẫn quét toàn bộ định kỳ Instacart 2023; Meta 2026 so checksum trong suốt migration ingest Meta 2026.

  25. Chờ tín hiệu thật thay vì đoán giờ: Render 2026 bỏ việc chạy dbt hai, ba lần mỗi ngày bằng cách chờ một dòng sentinel do job nguồn ghi Render 2026; Grab 2026 cho test chất lượng dữ liệu chạy khi nhận event "pipeline xong" thay vì cron chép tay kèm offset, nên bớt alert nhiễu và DPI báo sai Grab 2026; cùng họ với lịch ngẫu nhiên tất định của Shopify 2022 (đừng để mọi thứ phụ thuộc vào cùng một mốc giờ) Shopify 2022. Pipeline nối bằng khoảng thời gian vừa chạy thừa vừa khó gỡ lỗi.

  26. Trần ghi nằm ở chỗ ít ai nhìn: replication đơn luồng giới hạn master ở khoảng một core, và parallel replication chỉ nâng 1,3 đến 3,8 lần (Booking 2015–2016) Booking.com 2015 Booking.com 2016; mỗi index là một lần ghi WAL nữa trên mọi dòng (Tiger Data 2026) Tiger Data 2026; hệ đồng thuận thêm node là ghi chậm đi (etcd 2017) etcd 2017; block size 1K của XFS do script cài đặt đặt từ trước làm mọi request ghi căn lệch trên NVMe 4K, đĩa phải read-modify-write (ScyllaDB 2026) ScyllaDB 2026.

  27. Chi phí cố định mỗi thao tác thắng chi phí của việc thật: Cloudflare 2026 ghi kết quả quét từng dòng, có lần nửa triệu round-trip trong một lời gọi API, đổi sang UNNEST/COPY Cloudflare 2026; TigerBeetle 2024 cho rằng row lock giữ qua round-trip làm database đa dụng không scale được ghi sổ kép TigerBeetle 2024; Redis 2026 dời cả slot thay vì từng key, nhanh tới 30 lần Redis 2026. Tổng hợp ở Batching và khấu hao round-trip.

  28. Đo từng phần trước khi tối ưu, vì phần tưởng là chi phí thường không phải: Mercari 2026 làm tải image nhanh hơn 70–80% mà job chỉ nhanh hơn 15%, vì giải nén mới chiếm phần lớn Mercari 2026; ScyllaDB 2026 so IOTune với fio để biết lỗi ở phía mình, rồi tắt hẳn bộ điều tiết để xác nhận nghi phạm ScyllaDB 2026; công cụ benchmark nghẽn CPU làm DB trông như nút thắt (YCSB, ScyllaDB 2026); Snowflake 2026 gỡ ghi thì metadata thành chi phí chính, gỡ tiếp thì chờ I/O lộ ra Snowflake 2026.

  29. Tách thứ giữ trạng thái lâu khỏi thứ hay thay đổi: Postman 2019 tách gateway giữ một triệu WebSocket khỏi logic hay deploy, vì mỗi lần deploy là một đợt kết nối lại 6–8 giờ Postman 2020; Hotstar 2019 bỏ cụm broker đồng bộ trạng thái, để node lá tự kéo tin Disney Hotstar 2019; Fly.io 2023 để mỗi worker tự là nguồn sự thật của mình, chính sách thay đổi thường xuyên đẩy ra client Fly.io 2023.

  30. Thư viện dày không nâng cấp được, dịch vụ + SDK mỏng thì được: Spotify 2022 không đẩy được bản sửa của Luigi/Flo tới hơn 1.000 repo nên chuyển điều phối sang dịch vụ Flyte Spotify 2022; Salesforce 2026 thu telemetry Spark ở gateway nộp job chung thay vì nhờ từng team instrument Salesforce 2026; Slack 2026 chuyển công việc nặng từ Chef chạy nền trên từng máy sang image bake sẵn do nền tảng phát hành Slack 2026. Cùng họ với eBay 2022 (push → pull thư viện) eBay 2022.

  31. Hai phiên bản luôn cùng chạy trong lúc deploy, và dữ liệu dùng chung phải hiểu được cả hai: cache Marshal ghi tên class làm một refactor đúng đắn thành sự cố (Shopify 2020) Shopify 2022; Discord 2026 cho phía nhận chấp nhận cả message cũ lẫn mới khi thêm trace context Discord 2026; etcd 2025 có kho phụ sai âm thầm tới khi đổi nguồn sự thật etcd (CNCF) 2025; job phát trước commit đọc dữ liệu cũ (Zillow 2018) Zillow 2018.

  32. Với thay đổi nhỏ, chi phí dựng môi trường lấn át việc thật: Uber 2021 chuyển CI sang Buildkite thì P95 tốt lên mà trung vị tệ đi, vì mỗi shard checkout lại repo trong khi hầu hết thay đổi là nhỏ; chữa bằng snapshot Git, container sống lâu, cache trên host Uber 2022; Mercari 2026 mất 2–3 phút kéo image cho job 6–7 phút Mercari 2026; Riot 2021 đồng bộ workspace qua patcher của game thay vì Git LFS Riot Games 2021; Deno 2024 giảm cold start bằng tiền xử lý lúc deploy (vendor, sắp theo thứ tự import) thay vì lúc chạy Deno 2024. Cùng họ với mẫu 27 (chi phí cố định mỗi thao tác) nhưng ở cấp một lần chạy.

  33. Metadata phải sinh ra ở nguồn, không nhập tay sau: Airbnb 2017 lấy chủ sở hữu từ inventory host để định tuyến alert Airbnb 2017; Lyft 2019 lấy "ai hay dùng" từ audit log Lyft 2019; Notion 2024 bắt mỗi analytics event có kiểu TypeScript kèm chủ sở hữu và tier, vì catalog có mà ít dùng khi dữ liệu nguồn không có schema Notion 2024; Airbnb 2026 phải dựng metadata engine ghi loại metric vì không suy được từ tên Airbnb 2026. Cùng họ với mẫu 22 (đổi mặc định ở nền tảng): metadata đúng là thứ cho phép mặc định được sinh tự động.

  34. Mặc định của nền tảng là giới hạn ẩn, chỉ lộ ra ở tải thật: ASOS 2021 chuyển sang AKS thì gặp lần lượt 1.024 cổng SNAT mỗi node, vCPU hyper-thread, ndots: 5 nhân số lần tra DNS, thread pool libuv 4 thread ASOS 2021 ASOS 2021; Grab 2022 chạm giới hạn mềm 100 include và kích thước file của GitLab CI Grab 2022; Grammarly 2021 có quota 3 Dedicated Host mac1.metal mỗi region Grammarly 2021. Cùng họ với mẫu 26 (trần nằm ở chỗ ít ai nhìn), nhưng ở đây trần là cấu hình mặc định của nhà cung cấp chứ không phải thiết kế của chính mình.

  35. Khoá cache bị phá bởi khác biệt môi trường lọt vào input: SoundCloud 2019 có cờ CI trong BuildConfig, thư mục rỗng, đường dẫn tuyệt đối trong file sinh ra SoundCloud 2019 SoundCloud 2019; Railway 2025 tiêm deployment ID vào mọi build nên mọi layer sau đó mất cache Railway 2025; persistent cache của Webpack ở Yelp chứa đường dẫn tuyệt đối nên không dùng được trên CI Yelp 2026. Cache chia sẻ đòi hỏi build tất định; bật cache mà không đo tỉ lệ trúng thì không biết nó có chạy không.

  36. Đổi engine, giữ interface, đưa vào từ chỗ ít rủi ro: DuckDB thay parser mượn từ Postgres bằng PEG mà binder vẫn nhận cùng AST, dùng trước cho autocomplete, rồi opt-in, rồi mặc định DuckDB Labs 2026; Yelp 2026 thay công cụ codegen bị khai tử bằng công cụ mới sinh output giống hệt, developer không đổi dòng nào Yelp 2026, và đổi bundler bằng cấu hình adapter Yelp 2026; ScyllaDB đặt driver C# lên lõi Rust mà giữ API cũ ScyllaDB 2026. Interface giữ nguyên là thứ cho phép chuyển dần và quay lui; cùng họ với mẫu 22 (danh sách ngoại lệ co dần).

  37. Cơ chế dự phòng chưa từng được dùng thật thì coi như không có: GitLab 2017 có năm lớp dự phòng nhưng không lớp nào khôi phục được (pg_dump sai phiên bản lỗi âm thầm, email cảnh báo bị chặn, snapshot không bật cho DB, replica bị xoá cùng lúc) GitLab 2017; Netflix 2013 chỉ tin active-active sau khi diễn tập Split-brain và Chaos Kong ở production Netflix 2013; Meta 2022 phải dựng hẳn một service (Polaris) để biết invalidation có chạy đúng không Meta 2022; Notion 2023 chạy dark read trước khi tin bản sao mới Notion 2023. Dự phòng cũng hay chung một điểm hỏng: Dropbox 2014 có automation xoá cả master lẫn replica Dropbox 2014, Basecamp 2019 và 2020 mất cả đường chính lẫn dự phòng vì cùng một nhà cung cấp hoặc phụ thuộc ẩn giữa hai nhà mạng Basecamp 2019 Basecamp 2020. Cùng họ với mẫu 25 (chờ tín hiệu thật) và mẫu 33 (metadata sinh ở nguồn): đo cái cơ chế làm được, không đo cái nó được cấu hình để làm.

  38. Đánh giá một thay đổi bằng diff trên dữ liệu thật, không bằng "test qua hay không": Stripe 2026 chạy bản cũ và bản mới của service tính phí trên traffic lịch sử bằng Spark, review bảng diff có đường luật đã đi Stripe 2026; GitLab 2020 chạy cách tính ref mới song song với cách cũ một tháng trên GitLab.com, chỉ log khác biệt, rồi mới tách hai đường bằng feature flag GitLab 2021; Notion 2023 dark read trước khi tin bản sao mới Notion 2023; Figma 2024 dịch toàn bộ luật quyền cũ sang DSL rồi chạy qua bộ test cũ Figma 2024. Điều kiện chung: logic phải tách được khỏi tác dụng phụ để chạy hai lần trên cùng đầu vào. Cùng họ với mẫu 37 (dùng thật mới tin).

  39. Công cụ kiểm chứng cũng phải được kiểm: bộ sinh tải của Achievers 2023 báo lỗi vì chính Cloud NAT của nó cạn cổng Achievers 2023; code client nhúng trong JMeter của Miro giới hạn mỗi máy 730 luồng, "nếu không cẩn thận thì đang test JMeter" Miro 2020; Appian 2019 tách "test hỏng" khỏi "đúng" vì nemesis chết thì kết quả xanh là giả Appian 2019; Riot 2019 để monitoring phán kết quả fault injection, và nhờ vậy thấy monitoring không phát hiện được cụm suy giảm Riot Games 2019; Miro 2020 dùng monitoring production cho test để kiểm luôn observability Miro 2020.

  40. Coding agent ở quy mô lớn chỉ đáng tin khi có nguồn sự thật ngoài code và cổng kiểm tất định: DoorDash 2026 đọc trạng thái rollout thật qua MCP, mỗi agent một worktree, chỉ mở PR khi build, test, coverage 95% và lint qua; chỗ hỏng còn lại là bỏ sót chứ không sửa sai DoorDash 2026; Allegro 2026 viết quy trình thành ví dụ trước/sau và kết thúc bằng build toàn project, đo bằng thí nghiệm chéo Allegro 2026; Cloudflare 2026 dùng test suite của Next.js làm đặc tả để AI viết lại framework Cloudflare 2026. Shopify 2026 thêm cổng do model khác chấm (so ảnh với bản cũ, hai reviewer đối kháng theo tài liệu kiến trúc) Shopify 2026. Tổng hợp ở Coding agent trong engineering (migrate, viết lại, chạy song song, quyền hạn).

  41. Kiểm soát an toàn chỉ đứng vững khi đường an toàn cũng là đường dễ nhất: Monzo 2019 có Vault an toàn nhưng ít ai dùng vì khó, nên làm nó dễ dùng (tự thêm secret, thư viện như đọc cấu hình) rồi gộp mọi secret về đó Monzo 2019; Segment 2018 thu hồi toàn bộ AWS key của nhân viên êm nhờ công cụ thay thế gần như y hệt Segment 2018; Coinbase 2018 cho mọi engineer deploy khi code đã review thay vì giữ cho nhóm "tin cậy" Coinbase 2018; Coinbase 2026 biến authz và audit thành bước bắt buộc của lớp chung để handler không thể quên, còn mở rộng là đổi cấu hình Coinbase 2026.

  42. Cổng tự động cần ngân sách báo giả và một lối thoát cho người quyết: Airbnb 2019 chỉ bảo vệ ít metric vì 50 metric ở ngưỡng 0,05 cho cảnh báo giả 92% số A/A test, trượt guardrail thì escalation chứ không chặn cứng (80% vẫn launch) Airbnb 2021; Anthropic 2026 dùng tầng rẻ nhạy rồi tầng đắt chính xác để chặn nhầm còn 0,4%, bị chặn liên tiếp thì hỏi người Anthropic 2026; Loveholidays 2021 có waiver cho vi phạm cũ và atlantis approve cho chủ sở hữu Loveholidays 2021; Reddit 2024 cách ly test flaky nhưng giao ticket cho chủ để coverage không mất vĩnh viễn Reddit 2024.

  43. Nơi kiểm chứng càng khác production thì càng bị bỏ qua: staging của DoorDash lệch dần (không observability e2e, không dữ liệu giống thật, bản chưa ổn định) nên test e2e chuyển vào production với tenant riêng và guardrail ở biên DoorDash 2022; Atlassian 2020 test hạ tầng bằng cụm thật dựng rồi phá mỗi commit Atlassian 2020; Pinterest 2021 thử bản vá HTTP/2 trên endpoint nhân bản, chọn client bằng thí nghiệm Pinterest 2021. Cùng hướng với test bằng traffic production của WhatsApp 2014 WhatsApp 2014.

  44. Client cũ sẽ gặp dữ liệu mới; đường xử lý cái lạ phải thất bại về phía an toàn: Wix 2015 thêm một loại filter thí nghiệm mới làm mọi service chưa deploy kẹt ở danh sách cũ, nên loại lạ thành UnrecognizedFilter và thí nghiệm vô hiệu, vì bỏ qua filter có thể đưa nhầm người dùng vào thí nghiệm Wix 2015; Yelp 2026 để client gửi spec + version, server chọn version component gửi được và backport bằng hàm migrate Yelp 2026; Tinder 2019 cho mỗi Lever giá trị dự phòng trong manifest phía client Tinder 2019. Mở rộng mẫu 31 từ lúc deploy sang client sống nhiều năm.

  45. Trước khi tin một phép đo, tách nhiễu do chính hệ đo gây ra: Anthropic 2026 thấy cùng model, cùng task mà điểm benchmark lệch 6 điểm chỉ vì cách ép tài nguyên container Anthropic 2026; Zalando 2026 thấy treatment ăn ngân sách của control nên phải chia ngân sách theo biến thể Zalando 2026; trivago 2023 coi một kịch bản hỏng trên nhiều nhánh cùng lúc là lỗi chung chứ không phải lỗi của PR trivago 2023; Riot 2016 đưa test không ổn định ra staging suite để tín hiệu chặn deploy còn sạch Riot Games 2016. Cùng họ với mẫu 39 (công cụ kiểm chứng cũng phải được kiểm).

  46. Migration tăng dần cần một thứ tự đi và một điểm lật mặc định: Figma 2020 thêm file vào allowlist strict null checks theo đồ thị phụ thuộc (phá vòng hơn 500 file trước), rồi đổi sang denylist khi phần còn lại nhỏ để file mới mặc định strict Figma 2020; Doximity 2026 chuyển lá (section) sang SwiftUI bên trong khung UIKit, rồi đảo cầu nối để khung SwiftUI chứa phần UIKit còn lại Doximity 2026; GitHub dùng plugin nội bộ khoảng sáu tháng trước khi công bố plugin API, và để core mới nằm cạnh SDK cũ tới khi đủ sẵn sàng GitHub 2020. Mở rộng mẫu 22 (đổi mặc định ở nền tảng + danh sách ngoại lệ co dần) từ nền tảng sang code và UI; ngược với cách chuyển một lần của Railway và Inngest (quy tắc 7 ở Kiến trúc frontend).

  47. Thứ dùng chung lúc nhỏ thành giới hạn chung lúc lớn; tách theo đơn vị thay đổi: Reddit 2021 nhúng mọi model vào một service Python nên một model lỗi sập tất cả và model mới phải giữ tương thích dependency với mọi model cũ, rồi tách mỗi model một pool Reddit 2021; PayPal 2021 đóng model chung build image nên model chờ lịch của code và lỗi là rollback cả pool PayPal 2021; Rust 2025 bắt std dựng được bằng hai compiler nên ràng buộc rơi vào đúng phía hay đổi, rồi dời nó sang phía ít đổi Rust (Rust Foundation) 2025; Yelp 2026 thay script training riêng của từng team bằng step khai báo để tính năng chung đặt một lần ở lớp điều phối Yelp 2026. Gần mẫu 30 (thư viện dày → dịch vụ + SDK mỏng) và quy tắc 2 ở Nền tảng ML (feature, training, serving, giám sát model).

  48. Chặn khuếch đại ở nơi lỗi hay tải phát sinh, không ở mọi tầng: Uber 2026 chỉ cho retry ở hop ngay trên service sinh lỗi, bán kính retry storm từ 25 xuống 3 Uber 2026; bảo vệ quá tải DB dời từ query engine stateless xuống storage node nơi có trạng thái Uber 2026; rate limit tính tỉ lệ drop toàn cục ở control plane nhưng quyết tại chỗ trong mesh Uber 2026; consumer proxy phát hiện head-of-line blocking từ phía hàng đợi vì DLQ không thấy message hỏng trên đường Uber 2026. Cùng họ với mẫu 26 (trần ghi nằm ở chỗ ít ai nhìn).

  49. Đổi lõi khi người dùng cũ vẫn chạy: cho bản cũ và bản mới cùng tồn tại, đo trên tập lớn đầu vào thật: Go 2024 cho math/rand v1 và v2 cùng nằm trong một chương trình Go 2024; Vitess 2021 viết trình sinh code dạng plugin chạy cạnh upstream thay vì giữ fork bị bỏ rơi Vitess 2021; Rust 2026 bật trait solver mới mặc định trên nightly kèm cờ tắt và đo trên 20.000 crate Rust 2026; Mercari 2025 ghi tài khoản mới vào hệ mới và đồng bộ ngược sang monolith cho người đọc cũ Mercari 2025; Alibaba 2021 dùng metadata center để client Dubbo cũ và mới cùng chạy Alibaba 2021.

  50. Trạng thái ấm che lỗi tiềm ẩn cho tới lần nó nguội: ở Slack 2022 một query hỏi mọi shard chỉ chạy được vì cache gần như luôn trúng; rollout Consul làm cache nguội và cả hệ vào cascading failure Slack 2022; ở GitLab 2019 site còn sống chỉ vì kết nối TLS mở trước khi cert hết hạn, mọi kết nối mới sẽ bị từ chối GitLab 2019; Netflix 2013 thấy scale-down khi traffic tụt trong sự cố để lại một cụm nhỏ đúng lúc retry dồn về Netflix 2013. Thử làm nguội có chủ đích (ngắt kết nối, xoá cache, thu nhỏ cụm) trong môi trường an toàn để biết hệ dựa vào trạng thái ấm đến đâu.

  51. Bớt phối hợp và dời chi phí bất định ra khỏi đường nóng trước khi thêm song song: LMAX 2011 đưa logic sàn về một thread sau khi prototype actor model tốn nhiều thời gian quản lý hàng đợi hơn chạy logic LMAX 2011; Jane Street cấp phát hết lúc khởi động và cho ứng dụng tự lên lịch GC lúc rảnh Jane Street 2015 Jane Street 2026; HRT cảnh báo huge page đổi trượt TLB lấy spike khi dồn trang Hudson River Trading 2022.

  52. Khi chính nhà vận hành nằm trong mô hình đe doạ, thay "hãy tin chúng tôi" bằng bằng chứng kiểm được: WhatsApp 2023 công bố mọi lần đổi public key vào thư mục append-only có audit proof WhatsApp 2023; Code Verify 2022 để Cloudflare giữ hash mã web WhatsApp 2022; Private Processing 2025 cho client đối chiếu số đo TEE với ledger bên thứ ba WhatsApp 2025; Scam Alert 2026 đưa mỗi bản model lên ledger trước khi phục vụ và để client tự chia nhóm thí nghiệm WhatsApp 2026. Cái giá là độ trễ công bố và phụ thuộc vào nhân chứng ngoài WhatsApp 2024.

  53. Failover thay máy chứ không thay tải; phải chặn tải ở cửa thì hệ mới tự về trạng thái tốt: Asana 2019 failover thành công ba lần mà máy mới vẫn ngập vì vòng phản hồi dương, chỉ hết khi thêm admission control ở InnoDB và ứng dụng Asana 2019; Airbnb 2016 để proxy kill kết nối khi pool cạn thay cho kỹ sư kill bằng tay Airbnb 2016; DoorDash 2018 hạ timeout query xuống 2 giây để tràn tài nguyên hiện thành lỗi thay vì âm thầm bão hoà DoorDash 2018. Mặt trái: khi lớp chặn giữ lỗi thấp, alert theo tỉ lệ lỗi bị mù, Netflix 2018 phải thêm alert theo utilization Netflix 2018.

Các phản ví dụ nên đọc sớm

  • LinkedIn: monolith API 400+ kỹ sư, cô lập lỗi bằng nhiều cụm chứ không bằng microservices. LinkedIn 2017
  • Stack Overflow: monolith, 209 triệu request/ngày, thực tế chỉ cần 1 web server, nhưng mọi thứ đều dư thừa. Stack Overflow 2016 Lựa chọn scale up có từ 2009. Stack Overflow 2009 Cái giá hiện ra sau này: code tối ưu hiệu năng khó test Stack Overflow 2021, và app mang giả định độ trễ của data center phải load test lại khi lên cloud năm 2025 Stack Overflow 2025.
  • WhatsApp: một máy 2,28 triệu kết nối. WhatsApp 2012
  • Zerodha: một cặp master-replica Postgres chứa hàng tỷ dòng trong nhiều năm; tới gần 20 TB mới shard, và shard theo năm tài chính bằng postgres_fdw trong dưới hai giờ. Zerodha 2021
  • TigerBeetle (nhà cung cấp): lập luận rằng với OLTP có tranh chấp, scale dọc phần nóng thắng sharding. TigerBeetle 2026

Thứ tự đọc gợi ý cho SWE

  1. Instagram 2011 → Instagram 2011 → Twitter 2010
  2. Twilio 2014 → Notion 2021 → Figma 2023 → Figma 2024 → GitHub 2021 → Slack 2020
  3. Discord 2017 → Discord 2023 (cùng một bài toán qua 6 năm)
  4. Uber 2015 → Segment 2018 → Shopify 2019 → Shopify 2020 → Uber 2020
  5. Stack Overflow 2016 (để cân bằng lại) → Stack Overflow 2023
  6. Độ tin cậy: Netflix 2011 → Quora 2016 → Instagram 2015 → Shopify 2018 → Grab 2019 → Discord 2026
  7. Chi phí: Segment 2017 → Dropbox 2016 → Dropbox 2023 → Grab 2025
  8. Migration: Zalando 2021 → Wix 2021 → Cloudflare 2024 → Etsy 2026 → Meta 2026
  9. Postmortem (tổng hợp ở Sự cố và postmortem): GoCardless 2017 → Canva 2024 → PlanetScale 2025 → Coinbase 2026 → Cloudflare 2025 → Discord 2026 → Neon 2026 (cách viết postmortem)
  10. Một hệ thống kể từ đầu tới cuối (hồi ký Ele.me 2012–2016): Ele.me 2020 → Ele.me 2020 → Ele.me 2020 → Ele.me 2020 → Ele.me 2020 → Ele.me 2020
  11. Đa region và RPO (cơ chế failover tổng hợp ở Failover, replica và dự phòng dữ liệu): Goldman Sachs 2021 (active/passive) → WarpStream 2025 (quorum, RPO=0) → Coinbase 2026 (khi co-location gặp mất AZ)
  12. Giao dịch xuyên service: Wix 2015 → Notion 2021 → Mercari 2019 → eBay 2019 → Shopify 2026
  13. Scale một cụm Kubernetes: OpenAI 2018 → OpenAI 2021 → Uber 2025
  14. Giảm cầu khi quá tải (tổng hợp ở Load shedding, rate limit và backpressure): Netflix 2011 → Grab 2019 → Monzo 2023 → Zalando 2025 → Airbnb 2026 → Canva 2026 → Salesforce 2026 → Atlassian 2026
  15. Kafka từ queue tới nền tảng (tổng hợp ở Event-driven, message queue và Kafka): Ele.me 2020 → Tinder 2019 → eBay 2020 → Monzo 2024 → Yelp 2021 → Yelp 2022 → Atlassian 2026 → LINE (LY Corp) 2026
  16. Viết consumer cho đúng (tổng hợp ở Event-driven, message queue và Kafka): Wix 2020 → Wix 2020 → Doximity 2022 → trivago 2026 → Notion 2026
  17. Cùng một ngày sự cố (12/6/2025): Cloudflare 2025 (rút dự phòng rồi mất nhà cung cấp còn lại) ↔ Redpanda 2025 (không có dependency ngoài cluster)
  18. Tự động hoá vận hành (tổng hợp ở Tự động hoá vận hành và auto-remediation): GoCardless 2017 (automation không chạy) → Twilio 2017 (chaos mỗi 4 giờ) → OpenAI 2018 (autoscaler xoá hết worker) → Monzo 2020 (evict không giới hạn) → Pinterest 2021 (chuyển pipeline có hysteresis) → Stripe 2026 (tìm đường trên đồ thị trạng thái)
  19. Migration online trong chính kho dữ liệu: GoCardless 2015 → GoCardless 2020 (khoá DDL) → Instacart 2020 (snapshot + phát lại) → Atlassian 2026 (resharding OpenSearch) → GitHub 2026 (đổi kiến trúc replication của bản tự host)
  20. Failover của một cụm (tổng hợp ở Failover, replica và dự phòng dữ liệu): Meta 2014 (GTID làm promote tự động được) → GoCardless 2017 (automation không promote) → Vitess (PlanetScale/CNCF) 2022 (orchestrator dùng shard lock) → Upstash 2026 (từ chối promote bản thiếu) → Vitess (PlanetScale/CNCF) 2026 (không chờ bản không thể thắng, split-brain do người chọn)
  21. Cache khi hỏng (tổng hợp ở Cache và invalidation): Railway 2026 (cache nhầm, lộ dữ liệu giữa user) → Cloudflare 2026 (serve stale cứu khi nguồn lỗi) → Zerodha 2021 (Postgres làm hot cache, xoá mỗi đêm)
  22. Bỏ hay giữ failover chéo region: CapitalOne 2021 (đổi sang active-active để khỏi failover) ↔ Render 2024 (giữ single-primary, failover nhanh và chạy thường xuyên)
  23. Quy trình xử lý sự cố khi tổ chức lớn lên (tổng hợp ở Xử lý sự cố và on-call): Booking.com 2017 (escalations are cheap) → Shopify 2018 (IMOC, ChatOps) → LinkedIn 2018 (lịch trực tự động) → Monzo 2022 (team tự trực) → Dropbox 2021 (ngân sách 21 phút, tự khai báo SEV, luật 20 phút) → Upstash 2026 (giám sát từ phía khách, định nghĩa "xong"); đọc thêm ba mô hình đặt SRE: Booking.com 2019 (mức hỗ trợ) ↔ Netflix 2020 (trung tâm) ↔ Mercari 2022 (nhúng), và Zalando 2023 (playbook giảm cấp duyệt trước)
  24. Fan-out khi ghi hay khi đọc: SoundCloud 2014 (fan-in on read, dữ liệu vừa RAM) ↔ Pinterest 2018
  25. Chuyển hệ có trạng thái gắn với nơi chạy: Coinbase 2026 (workflow Temporal: drain and switch hoặc dual workers) ↔ LINE (LY Corp) 2026 (database: dump, replication hay CDC)
  26. Tải do chính hệ thống tạo ra: Canva 2026 (mỗi lần deploy hàng trăm pod cùng nạp cache từ MySQL) ↔ GitLab 2019 (job định kỳ cùng chạy đầu phút) ↔ Medium 2020 (bỏ việc vô ích làm tải dồn cụm mỗi 10 phút)
  27. Migration bằng proxy ở giữa: WarpStream 2026 (producer trỏ sang hệ mới trước, cutover từng topic) ↔ Coinbase 2026 (drain and switch)
  28. Đổi kiến trúc CPU cho hàng nghìn service: Uber 2025 (gỡ phụ thuộc vòng, ảnh đa kiến trúc) → Uber 2025 (chuyển theo tier, zone, goal-state)
  29. Sao chép giữa region cho streaming: Redpanda 2026 (bất đồng bộ, giữ offset) ↔ Redpanda 2026 (một cụm Raft, RPO = 0)
  30. Một công ty qua hai mốc: Stack Overflow 2009 → Stack Overflow 2016 (scale up suốt 7 năm); Medium 2018 → Medium 2020 (tách service, rồi phụ thuộc vào service của team khác)
  31. Hạ tầng quan sát (tổng hợp ở Observability và monitoring): Salesforce 2017 (đo độ đầy đủ pipeline log) → Miro 2020 (HA cho Prometheus, lưu dài hạn rẻ) → Airbnb 2026 (gỡ phụ thuộc vòng) → Meta 2025 (chẩn đoán tự động khi alert bắn)
  32. HA không thêm bản sao, khi storage đã tự dự phòng: Alibaba 2025 (PolarDB, lease và fence) ↔ Alibaba 2026 (RocketMQ, NVMe PR trên đĩa chung)
  33. Capacity và chi phí theo hình dạng tải: Expedia 2020 (HPA: target, trễ, maxReplicas) ↔ Fastly 2026 (độ tập trung traffic quyết định cache và CPU)
  34. Đội reliability trong tổ chức (tổng hợp ở Mô hình tổ chức SRE): Booking.com 2019 (mức hỗ trợ theo độ quan trọng) → Netflix 2020 (nhóm trung tâm canh KPI kinh doanh) → Mercari 2022 (SRE nhúng, luân chuyển) → Mercari 2022 (một SRE nhúng kể lại) → Achievers 2022 (mặc định cho team tự sở hữu)
  35. Dữ liệu quan sát lớn và đắt: LinkedIn 2019 (lag, độ đầy đủ theo dataset) ↔ ClickHouse 2025 (collector đa dụng quá đắt, đường riêng cho nguồn lớn nhất, wide event) ↔ eBay 2026 (telemetry ra khỏi đường nóng, alert theo chỉ số kinh doanh)
  36. Hạ tầng tìm kiếm (tổng hợp ở Hạ tầng tìm kiếm): Meta 2013 (gom backend về Unicorn) → LinkedIn 2014 (index offline + live update) → LinkedIn 2018 (gộp tầng giữa) → GitLab 2019 → GitLab 2019 (index quá lớn, bật chọn lọc) → Zalando 2025 (query nặng làm nóng cụm) → Atlassian 2026 (đổi hình index online)
  37. Lịch định kỳ và client retry tự tạo đỉnh tải: Google 2006 (retry vô hạn, làm đường sai rẻ đi) → GitLab 2019 (cron đầu phút) → Shopify 2022 (lịch ngẫu nhiên tất định)
  38. Pipeline dữ liệu (tổng hợp ở Pipeline dữ liệu và analytics): Pinterest 2014 (batch hằng ngày + HBase gộp sẵn) → Walmart 2018 (lambda) → LinkedIn 2019 (job thành công chưa phải dữ liệu đúng) → Allegro 2024 (batch có đối chiếu) → Instacart 2023 (tính lại theo độ nóng) → Grab 2026 (hợp đồng dữ liệu, sự cố dữ liệu tự động)
  39. Search từ nhỏ tới lớn: Mozilla 2021 (ngay trên trình duyệt) → GitHub 2023 (bộ nhớ tiến trình sang Elasticsearch) → Tinder 2019 → Tinder 2019 (code tuỳ biến trong cụm) → Instagram 2015 (dùng lại Unicorn của công ty mẹ)
  40. Query planner (tổng hợp ở Query planner và hiệu năng truy vấn): GoCardless 2019 (n_distinct ước thiếu do lấy mẫu theo page) ↔ Render 2024 (thiếu thống kê trên biểu thức JSON) → Zerodha 2021 (tinh chỉnh trước khi shard) → Render 2024 (tìm query gây hại: tuổi transaction, pg_blocking_pids) → Tiger Data 2026 ↔ Tiger Data 2026 (mặt ghi của index, nhà cung cấp)
  41. Data mesh của Grab, ba phần: Grab 2025 (chủ sở hữu, chứng nhận, chỉ số chung) → Grab 2026 (chứng nhận tính từ event, test theo lần chạy pipeline) → Grab 2026 (sự cố dữ liệu tự động)
  42. Thay đổi trên hàng nghìn repo, thư viện, job: Allegro 2024 (PR tự động, người gây breaking change viết recipe) ↔ eBay 2022 (DAG + worker kéo việc) ↔ Slack 2026 (700 job, migrate theo loại operator) ↔ Slack 2023
  43. Tách compute khỏi storage (tổng hợp ở Tách compute khỏi storage): etcd 2017 (EBS vs instance store) → Alibaba 2018 (storage dùng chung, một ghi nhiều đọc) → Yelp 2020 (compute theo dữ liệu) → WarpStream 2025 ↔ WarpStream 2025 (Kafka trên object storage: tách đường đọc/ghi, phí giữa AZ) → GitHub 2026 (một cơ chế cho bền và đọc thì kẹt) → Neon 2026 (restore thành thao tác metadata); đối trọng: Alibaba 2026 (không tách, chỉ làm lại failover).
  44. Batching (tổng hợp ở Batching và khấu hao round-trip): Booking.com 2015 (group commit chia chi phí fsync) → Deno 2023 (giao dịch không tương tác) → TigerBeetle 2024 (8000 giao dịch một round-trip) → ScyllaDB 2026 (kích thước request, Little's Law) → Cloudflare 2026 (ghi từng dòng sang UNNEST/COPY)
  45. Operator như vòng điều khiển: PlanetScale 2026 (level-triggered, snapshot quan sát) ↔ Kubernetes 2026 (cache và work queue bên dưới) ↔ Kubernetes 2024 (khi không cần reconcile: extension API server proxy thẳng)
  46. Điều tra hiệu năng I/O (series ScyllaDB 2026): ScyllaDB 2026 (bộ điều tiết bóp oan vì INT_MAX) → ScyllaDB 2026 (các giả thuyết sai, XFS block 1K) → ScyllaDB 2026 (checklist ba tầng) ↔ ScyllaDB 2026 (gauge nói dối, tích phân theo thời gian)
  47. File nhỏ và ghi thưa trên data lake: Alibaba 2026 (gom lô lúc ghi + compaction) ↔ DuckDB Labs 2026 (ghi nhỏ vào database catalog) ↔ Snowflake 2026 (file bất biến, ghi delta thay vì viết lại)
  48. Tracing phân tán (tổng hợp ở Tracing phân tán và log theo request): LinkedIn 2015 (call graph, self-latency, chi phí theo trang) → Pinterest 2017 (instrumentation qua framework chung, lấy mẫu 0,3%) → Stripe 2019 (một dòng log mỗi request, hướng rẻ hơn) → Discord 2026 (message passing, fan-out, overhead của chính tracing) ↔ ClickHouse 2026 (kho cho 200 TB span/ngày)
  49. Realtime nhiều kết nối: Disney Hotstar 2019 (MQTT, reverse bridge, 50 triệu kết nối) ↔ Postman 2020 (tách gateway khỏi logic, deploy gây kết nối lại hàng loạt) ↔ Trigger.dev 2025 (WAL + long poll thay WebSocket)
  50. Lịch sử scale kiểu HighScalability: Pinterest 2013 (năm công nghệ DB cùng hỏng → MySQL shard thủ công) ↔ MemSQL 2012 ↔ Stack Overflow 2009
  51. Alert và lịch trực: SoundCloud 2019 (page theo burn rate SLO) → Loveholidays 2021 (định tuyến theo nhãn team trên resource) ↔ Monzo 2019 (primary + specialist) ↔ Nubank 2019 (gộp lịch trực, runbook bắt buộc) → Monzo 2022; giám sát chính pipeline: Mercari 2022
  52. Batch và CDC song song: Doximity 2026 (snapshot làm mốc cho CDC) ↔ Netflix 2022 (nền tảng CDC/stream có schema bắt buộc) ↔ Spotify 2022 (điều phối batch từ thư viện sang dịch vụ)
  53. Hạ tầng EC2 từ sửa tại chỗ tới bất biến (series Slack): Slack 2024 → Slack 2025 → Slack 2026; tự giữ hay thuê máy: Dropbox 2022 ↔ Memgraph 2026
  54. Quản lý fleet (tổng hợp ở Quản lý fleet và migrate code hàng loạt): Spotify 2023 (fleet-first, vì sao) → Spotify 2023 (hạ tầng khai báo) → Spotify 2023 (Fleetshift, automerge, cohort) ↔ Allegro 2024 (OpenRewrite trong PR của Dependabot) ↔ eBay 2022 (3.000 thư viện, pull thay push)
  55. Pipeline log cỡ PB: Grab 2019 (ELK, phí giữa AZ) ↔ eBay 2019 (đọc kịp để client không bỏ dữ liệu) ↔ Fly.io 2020 (dời xử lý về nguồn); hệ di sản: Goldman Sachs 2023
  56. Cache và tương thích phiên bản: Shopify 2022 → Shopify 2022 ↔ eBay 2020 (cache fail-open có đường quay về)
  57. CI ở quy mô lớn (tổng hợp ở CI và build ở quy mô lớn): Uber 2022 (hàng đợi merge, shard theo root target, remote cache) ↔ Stripe 2026 (chọn test theo file đã mở, cho ngôn ngữ động) ↔ Riot Games 2021 ↔ Mercari 2026; nền là Airbnb 2020 (đẩy test sâu sang CD).
  58. Data warehouse qua các năm: Netflix 2014 (DW trên S3, mỗi engine một vai) → ClickHouse 2023 → ClickHouse 2024 (giả định nào đứng, giả định nào vỡ sau một năm) ↔ Slack 2024 (migrate engine cho 60 cụm, so khớp dữ liệu chính xác).
  59. Metadata của lake ở file hay ở database: DuckDB Labs 2026 (Iceberg: file bất biến + con trỏ) ↔ DuckDB Labs 2026 + DuckDB Labs 2026 (catalog SQL); đọc cùng Grab 2026.
  60. CI qua các thời kỳ: Yahoo 2017 (lớp trên Jenkins → tự viết) → Wix 2020 (cổng nối build, artifact, production) ↔ Rust 2020 (hàng đợi merge từng PR một) → Pinterest 2021 (chọn target bằng Bazel) ↔ Grab 2022 (cấu hình sinh từ diff) ↔ Railway 2025 (khoá cache của build); bài quan điểm Stack Overflow 2021 (đo lead time tới production).
  61. Observability tự làm hay mua: Airbnb 2017 (alert as code trên Datadog) → Airbnb 2026 (rời nhà cung cấp, sở hữu lớp tương tác) ↔ Netflix 2018 (lọc log trên luồng, trace theo phiên).
  62. Data catalog: Lyft 2019 (tìm dữ liệu theo tín hiệu hành vi) → Notion 2024 (catalog có mà ít dùng, chữa ở nguồn).
  63. Siết chuẩn code dần: Notion 2025 (ratchet trong một repo) ↔ Spotify 2023 (PR tự động trên nhiều repo); đo usage cho billing: WarpStream 2024 ↔ Grammarly 2023 ↔ Stripe 2026.
  64. Chuyển nền tảng chạy và tầng mạng Kubernetes: ASOS 2021 → ASOS 2021 (SNAT, DNS/conntrack, keep-alive) ↔ Kubernetes 2018; nền tảng multi-tenant: Wix 2021 (pool pod ấm) ↔ Deno 2024.
  65. Log và telemetry rẻ: Loveholidays 2021 (Loki cho log CDN) ↔ Memgraph 2026 (S3 thô + ClickHouse JSON) ↔ ClickHouse 2024 (kiểu JSON thay Map); vòng đời phần cứng: Twitter 2023 ↔ Dropbox 2022.
  66. Cache trang ở quy mô hàng triệu site: Wix 2021 (tách dữ liệu khách để cache được) ↔ Wix 2022; deploy nhiều target: GitHub 2024 ↔ GitHub 2021.
  67. Đổi ngôn ngữ kiểu trên codebase lớn, một lần hay từng phần: Stripe 2022 (một PR 3,7 triệu dòng) ↔ Yelp 2026 (570 package trong 3,5 năm); giữ ngôn ngữ mà thêm giới hạn: Instagram 2019.
  68. Cache của build và CI: SoundCloud 2019 → SoundCloud 2019 ↔ Mercari 2026 ↔ Yelp 2026 ↔ Railway 2025.
  69. Search nhúng trong DB: PlanetScale 2026 (Postgres) ↔ Upstash 2026 (Redis + Tantivy trên KV nhân bản); vận hành nền tảng: Fly.io 2023 ↔ Doximity 2025 ↔ Mercari 2025.
  70. Thay lõi, giữ vỏ: DuckDB Labs 2026 (parser mới, cùng AST) ↔ Yelp 2026 (codegen mới, cùng output) ↔ ScyllaDB 2026 → ScyllaDB 2026 (driver C# trên lõi Rust); trước khi tách service: Slalom Build 2016 ↔ Shopify 2019; rời mainframe từ phía đọc: CapitalOne 2017; DSL hay ngôn ngữ thật: Zerodha 2020
  71. Câu hỏi mở được trả lời bằng nguồn ngoài sheet (đợt 30): mất dữ liệu thật GitLab 2017; từ sự cố tới active-active Netflix 2012 → Netflix 2013; fan-out cho người nổi tiếng Twitter 2013; WhatsApp đủ hơn WhatsApp 2014; lambda hay kappa LinkedIn 2014; queue ảo theo tenant Segment 2018; outbox ở production Clear Street 2020; đo độ nhất quán cache Meta 2022; UUIDv7 Buildkite 2023; reshard không downtime Notion 2023; chọn test và hàng đợi merge Meta 2018 ↔ GitHub 2024 ↔ Uber 2025
  72. Bảo mật hạ tầng (tổng hợp ở Bảo mật hạ tầng và quản lý secret): Stack Overflow 2021 (chuỗi tấn công qua dev và build server) → Dropbox 2022 (MFA bị phishing) → Uber 2025 (secret thành nền tảng) ↔ Fly.io 2024 (token tự thu hẹp); secret rò qua hạ tầng phụ: Rust 2025 ↔ Rust 2026
  73. Kiểm thử độ tin cậy (tổng hợp ở Kiểm thử độ tin cậy (chaos, fault injection, mô phỏng tất định)): Netflix 2011 → Netflix 2013 (chaos ở production) ↔ DoorDash 2022 (khi production không cho phép) → TigerBeetle 2026 (từ trong ra); khi thiếu kiểm thử: OpenAI 2024
  74. Frontend (tổng hợp ở Kiến trúc frontend): Meta 2020 (viết lại, ngân sách byte) ↔ Wix 2021 (cache HTML) ↔ Allegro 2026 (120 team, một trang) ↔ Railway 2026; một máy làm hết: DuckDB Labs 2021 → DuckDB Labs 2025; agent ở production: Anthropic 2025 ↔ Cloudflare 2026; vector index trong DB: Cockroach Labs 2025; SQLite trên object storage: Fly.io 2025
  75. Xác thực và phân quyền (tổng hợp ở Xác thực và phân quyền (authn/authz)): LinkedIn 2019 (ACL tập trung, check trong bộ nhớ) → Airbnb 2021 (Zanzibar ở Airbnb) ↔ Figma 2024 (tự viết DSL policy) ↔ Uber 2023 (ABAC + CEL); xác thực ở edge: Netflix 2021; khi hệ phân quyền là phụ thuộc cứng: Cloudflare 2025
  76. Vector search (tổng hợp ở Vector search và index ANN): Cockroach Labs 2025 (index khớp range) ↔ Memgraph 2026 (một kho, một bản vector) → query có filter: Qdrant 2026 (vá đồ thị) ↔ Elastic 2026 (lọc trước hay sau, có đường lùi)
  77. Kiểm chứng trước khi tin (đợt 33): Appian 2019 → Appian 2019 (Jepsen vào CI) ↔ Stripe 2026 → Stripe 2026 (replay traffic lịch sử); bảo mật bằng tổ chức và rollout: Riot Games 2017 ↔ Twitter 2021 ↔ GitLab 2021; đổi ngôn ngữ theo team: Etsy 2021 (so với mục 67); rời Next.js lần hai: Inngest 2026; log chuẩn hoá ở tầng ngôn ngữ: Go 2023; CI mobile: Grab 2023
  78. Load test trước mốc tải lớn (tổng hợp ở Load test và kiểm chứng capacity): Tinder 2020 (push toàn quốc, môi trường 1/30, traffic thật có kill switch) ↔ Riot Games 2020 (2 triệu người chơi giả lập, gấp đôi từng bậc) ↔ Miro 2020 → Miro 2020 (bản sao lớn hơn production) ↔ Dream11 2021 (test tải dạng code) → Achievers 2023 → Achievers 2023 (ngưỡng theo SLO, nút thắt ở cấu hình nền tảng).
  79. Gây lỗi có chủ đích, đợt 34: Riot Games 2019 (fault injection cứu cụm Redis, rồi chạy ở production) ↔ Goldman Sachs 2022 (chaos trong pipeline, game day) ↔ CapitalOne 2020 (bài quan điểm) ↔ Cockroach Labs 2025 (benchmark dưới lỗi, nhà cung cấp); runtime tự tối ưu: V8 (Google) 2019 → V8 (Google) 2021; migrate code bằng agent: Allegro 2026 ↔ DoorDash 2026 ↔ Cloudflare 2026.
  80. Phục vụ LLM inference (tổng hợp ở Hạ tầng phục vụ LLM inference): Anthropic 2025 (lỗi chất lượng mà canary không bắt) → Together AI 2026 (scale theo in-flight, cold start) ↔ NVIDIA 2026 (rút ngắn cold start) → NVIDIA 2026 (engine dự phòng dùng chung weight) ↔ Together AI 2026 (canary đổi model). Cả bốn bài 2026 là nhà cung cấp.
  81. Kiểm soát truy cập và công cụ nội bộ, đợt 35: Segment 2018 (hub-and-spoke, không còn key) ↔ Postman 2019 (còn key, audit theo lịch) → Monzo 2019 (một Vault dễ dùng) → Monzo 2022 (rule là dữ liệu) → Coinbase 2026 (authz, audit, quyền just-in-time ở một lớp chung); deployer có kiểm soát: Coinbase 2018; experimentation: Tinder 2019 → Tinder 2019 → Tinder 2020; nền tảng gửi tin: Swiggy 2017; test sinh từ đặc tả: Miro 2023.
  82. Thí nghiệm A/B (tổng hợp ở Thử nghiệm A/B và nền tảng experimentation): LinkedIn 2020 (từ bucket chia qua email tới nền tảng tập trung) → Tinder 2019 (gán bằng hash có salt, family) → Tinder 2019 (remote config cho mobile) → Tinder 2020 (pipeline metric) → Airbnb 2021 (guardrail và escalation) → Spotify 2022 (thực hành, holdback) ↔ Twitter 2022 (khi không chia theo user được) → Zalando 2026 (thị trường hai phía, chia ngân sách) ↔ Wix 2015 (A/B và toggle chung cơ chế, client cũ gặp filter mới)
  83. Coding agent (tổng hợp ở Coding agent trong engineering (migrate, viết lại, chạy song song, quyền hạn)): Cloudflare 2026 (test suite làm đặc tả) → Allegro 2026 (ví dụ trước/sau, đo chéo) → DoorDash 2026 (trạng thái thật qua MCP, cổng tất định) → Shopify 2026 (checkpoint, bốn cổng) ↔ Coinbase 2026 (worktree, song song) → Anthropic 2026 (quyền của agent)
  84. Hạ tầng self-serve an toàn và nơi kiểm chứng, đợt 36: Slalom Build 2018 (nhiều tài khoản AWS) → Disney Hotstar 2020 (control line và mop-up) → Loveholidays 2021 (policy trên plan) ↔ Atlassian 2020 (dựng rồi phá cụm thật) → DoorDash 2022 (bỏ staging, test bằng tenant) → Reddit 2024 (cách ly flaky) ↔ Expedia 2018 (xác thực ở lớp trước app)
  85. Agent trong nền tảng và hiệu năng, đợt 37: Spotify 2026 (chuẩn hoá là hạ tầng cho agent) → Meta 2026 (tools + skills, sửa tiến hồi quy) → Meta 2026 (tìm kiếm có harness đánh giá) → Salesforce 2026 (ranh giới quyền, trần tự sửa) ↔ Anthropic 2026 (đo agent là đo cả hạ tầng)
  86. Kiểm chứng và học từ sự cố, đợt 37: Riot Games 2016 (Last Known Good, staging suite) → Swiggy 2021 (test ở mức API của service) → trivago 2023 (lỗi chung hay lỗi PR) → Pulumi 2026 (môi trường mỗi PR, đối chiếu khi dọn) ; Nubank 2023 (SLO sinh ticket) → Zalando 2025 (đọc hàng nghìn postmortem bằng LLM) ↔ Dropbox 2023 (vendor bảo mật là đường rò) ↔ GitHub 2024 (scorecard theo tier)
  87. Client và frontend, đợt 38: Zerodha 2022 (native → React Native → Flutter, hai người bảo trì) ↔ Discord 2025 (React Native cho power user, quay về native khi cần) → Doximity 2026 (đổi framework UI không có ngày chuyển) ↔ Figma 2020 (allowlist theo đồ thị phụ thuộc) ↔ GitHub 2020 (SDK nguyên khối → core + plugin, sinh từ tài liệu); byte của trang là ảnh: Etsy 2017
  88. Vận hành, kiểm thử và bảo mật, đợt 38: Booking.com 2017 (health check làm phình cache kernel, metric 10 giây mới thấy) ↔ Zerodha 2020 (Prometheus nhiều cụm về một kho); on-call và báo sự cố: SoundCloud 2021 ↔ GitLab 2020; kiểm thử: Bumble 2019 (test user cô lập, chia chunk theo thời gian) ↔ Go 2025 (đồng hồ giả trong runtime); IaC có chủ kiến: CapitalOne 2020; khoá không rời máy: Mozilla 2018
  89. Nền tảng ML, đợt 39 (tổng hợp ở Nền tảng ML (feature, training, serving, giám sát model)): Lyft 2021 (một định nghĩa feature, nhiều bản sao theo kiểu đọc) → Dropbox 2025 (chỉ ghi phần đã đổi, phục vụ bằng Go) ; Lyft 2021 ↔ Yelp 2026 (training: container và DAG khai báo) ; Reddit 2021 (mỗi model một pool) → Zillow 2022 (CPU-bound: concurrency, activator, probe) → PayPal 2021 (shadow trên traffic thật) ; DoorDash 2021 ↔ Nubank 2022 (sai mà không lỗi)
  90. Agent, build và lỗi client, đợt 39: OpenAI 2026 (issue tracker làm control plane cho agent) ↔ Render 2026 (queue, idempotency, saga, workflow tất định; nhà cung cấp) ; Rust (Rust Foundation) 2025 (thứ tự dựng quyết định cache) ↔ Trendyol 2021 (mutation testing trên code đã đổi) ; eBay 2023 (vector search từ phía người dùng production) ; Bumble 2020 (lỗi client theo phiên bản phát hành) ; Salesforce 2026: Salesforce 2026 (agent hỏng âm thầm, metric khả dụng đầu–cuối) ↔ Salesforce 2026 (LLM trong ranh giới tất định) ↔ Salesforce 2026 (cấu hình ngoài binary app)
  91. Uber 2026, đợt 40 (26 bài, sheet "Thu thập thủ công"): độ tin cậy Uber 2026 → Uber 2026 ↔ Uber 2026 ↔ Uber 2026 ↔ Uber 2026; dữ liệu Uber 2026 → Uber 2026 ↔ Uber 2026 ↔ Uber 2026 ↔ Uber 2026; thanh toán Uber 2026 → Uber 2026; agent Uber 2026 ↔ Uber 2026; search Uber 2026 ↔ Uber 2026
  92. Đợt 41, kiểm thử, secret và nền tảng ML: đưa test vào pipeline Slalom Build 2019 ↔ Trendyol 2020; secret theo mức Slalom Build 2017; ML: một model nhiều môi trường Netflix 2023 ↔ mỗi model một pool Reddit 2021, cổng offline khi nhãn hiếm Bumble 2021, forecast Spotify 2022, graph DB tự xây PayPal 2021; ANN bổ sung cho keyword Instacart 2022; log hỏng trong code async Tokio 2019.
  93. Đợt 42, search, vector và đổi thứ đang chạy: search ảnh không cần kho vector Dropbox 2021 ↔ vector DB bên ngoài Canva 2025; search nhiều ngành DoorDash 2022 (federate-then-blend); kho phụ sau Kafka Doximity 2022; feed pull có cache Stream (GetStream) 2026 (nhà cung cấp); đổi lõi khi client cũ vẫn chạy: Alibaba 2021 ↔ Go 2024; V8: V8 (Google) 2017 ↔ V8 (Google) 2019; gộp model thay vá ngoại lệ Amazon 2021, dự đoán lúc request Etsy 2021, gom thành một phép tính Microsoft 2021.
  94. Đợt 43, monolith quay lại và đổi lõi: Mercari Global App Mercari 2025 (strangler dừng ở API) → Mercari 2025 (modular monolith tách deploy được) ↔ Segment 2018; saga Mercari 2025, chọn DB bằng ma trận + YCSB Mercari 2025, ID mở rộng thay xây lại Mercari 2025; stack lớn theo vấn đề Medium 2016; ML thế hệ đầu: Lyft 2018 ↔ Instacart 2018 ↔ Yelp 2019 (dark launch); đổi lõi cho hệ sinh thái (mẫu 49): Tokio 2018, Vitess 2021, Rust 2026, PyTorch 2026; sandbox và đồng hồ giả Go 2013.
  95. Đợt 44, một sản phẩm toàn cầu nhìn từ mọi lớp (series Mercari Global App): client gộp vào monorepo, dùng lại nền chứ không dùng lại tính năng Mercari 2025 ↔ Mercari 2025 (native vì nền Flutter không dùng lại được); web từ dùng lại web Nhật sang App Router + BFF chung Mercari 2025 → Mercari 2025 (một lời gọi mỗi màn hình), Mercari 2025; phát hành mobile Mercari 2025; search managed có đường quay về Mercari 2025; sync B2C stream + batch Mercari 2025; LLM qua API với model có hạn dùng Mercari 2025; nhất quán của modular monolith Mercari 2025; E2E bằng go test Mercari 2025; agent Mercari 2025 · Mercari 2025.
  96. Đợt 45, bài kinh điển ngoài Roadmap: tách DB bằng promote replica Airbnb 2015 → nền tảng di chuyển chunk Stripe 2024; 2PC trong production Dropbox 2018 ↔ mức cô lập không như tên gọi Jepsen 2020; cache nhất quán Dropbox 2024 ↔ cache ở edge Slack 2017; hàng đợi job Slack 2017 · Airbnb 2019 · Netflix 2022 · Slack 2023; bảo vệ API Stripe 2017; monolith thành nền tảng managed Dropbox 2021 trên Dropbox 2020; AZ là cell Slack 2023; sự cố do automation và bảo trì theo zone Slack 2021 · Discord 2023.
  97. Đợt 46, tiếp các bài kinh điển ngoài Roadmap: rời data center với hệ tài chính Netflix 2016 → Netflix 2016 → Netflix 2016 ↔ thay proxy websocket bằng stack song song Slack 2021 ↔ RPC framework là nơi đặt độ tin cậy chung Dropbox 2019; shard theo khoá sản phẩm khi sản phẩm thêm cấp trên Slack 2017 → query scatter được cache che Slack 2022; thao tác đồng loạt khi công cụ chỉ rollout dần GitLab 2019; tier lạnh giữ region độc lập Dropbox 2019; mức isolation không như tên gọi lần hai Jepsen 2023 ↔ replay traffic thật để nâng MySQL Airbnb 2026; dynamic config như code Airbnb 2026 → Airbnb 2026; orchestration thay choreography Netflix 2016; autoscale dự đoán Netflix 2013; Kafka tự vận hành Slack 2022; metrics multi-tenant Airbnb 2026; đổi runtime phần mềm cài trên máy Dropbox 2018.
  98. Đợt 47, một công ty từ đầu tới cuối (Stack Overflow, đọc như bản thiết kế để dựng lại): Stack Overflow 2009 → Stack Overflow 2013 → Stack Overflow 2016 + Stack Overflow 2016 (cần bao nhiêu máy, chạy bao nhiêu máy) → Stack Overflow 2016 (rolling qua HAProxy, migration trước code) → Stack Overflow 2018 → Stack Overflow 2019 (cache 2 tầng, phục vụ dữ liệu cũ, bỏ output cache) ↔ Stack Overflow 2017 (CDN bù độ trễ của một data center) → Stack Overflow 2021 (cái giá của tối ưu) → Stack Overflow 2023 → Stack Overflow 2025 → Stack Overflow 2025; phần rìa: Stack Overflow 2020 ↔ Stack Overflow 2022.
  99. Multi-tenancy (tổng hợp ở Multi-tenancy và cô lập tenant): Shopify 2018 (pod cô lập, mỗi request một pod) ↔ Slack 2020 (bỏ shard theo workspace) → Atlassian 2019 (DB mỗi tenant, Tenant Context Service) → Cloudflare 2025 (service tenant sập kéo cả API) → Neon 2024 (cực cô lập) ↔ Stripe 2024 (tách khách lớn ra tenant riêng) → Inngest 2026 (một tenant làm sập cả cụm) ↔ Airbnb 2026 (shuffle sharding, tenant theo service)
  100. Stream processing (tổng hợp ở Stream processing): LinkedIn 2014 (kappa) → Yahoo 2015 (từng event vs micro-batch) → Pinterest 2021 (hai pipeline hot-hot) → Stripe 2025 (state tăng dần, đổi định nghĩa metric) → Zalando 2026 (checkpoint, tự viết join) → Uber 2026 (state phình) ↔ Alibaba 2026 (khi nào không cần engine)
  101. Đợt 48, một công ty từ đầu tới cuối (LinkedIn, 2003–2022): LinkedIn 2015 (bài khung: Leo → SOA → Rest.li, multi-DC) → LinkedIn 2013 (log trung tâm) → LinkedIn 2015 + LinkedIn 2015 → LinkedIn 2017 + LinkedIn 2019 (thế hệ hai của kho dẫn xuất và CDC) → LinkedIn 2017 + LinkedIn 2020 (độ bền) → LinkedIn 2019 → LinkedIn 2021 (capacity) → LinkedIn 2018 → LinkedIn 2021 + LinkedIn 2021 (Hadoop gấp đôi mỗi năm) → LinkedIn 2019 → LinkedIn 2020. Xem timeline ở LinkedIn.
  102. Đợt 49, một công ty từ đầu tới cuối (Zillow, 2012–2026, đọc theo ba mạch): front-end Zillow 2012 → Zillow 2017 (repo tĩnh chung thành 60 bundle) ↔ Zillow 2016 → Zillow 2024; dữ liệu Zillow 2015 (hàng đợi theo nguồn) → Zillow 2016 → Zillow 2018 (bốn phiên bản một pipeline) → Zillow 2020 → Zillow 2020 → Zillow 2023 (Kubernetes, Spark có quota, Streamz làm nền cho thí nghiệm) ↔ Zillow 2024 (thư viện consumer, đối chiếu Uber 2026); ML Zillow 2020 → Zillow 2023 (nghìn mô hình thành một) → Zillow 2022 → Zillow 2024 → Zillow 2025 → Zillow 2026 (8 s → 300 ms).
  103. Đợt 50, công ty giao dịch định lượng (tổng hợp ở Hạ tầng nghiên cứu định lượng (dữ liệu thị trường, feature, backtest)): chọn dữ liệu Hudson River Trading 2022 → khung rủi ro/PnL Hudson River Trading 2023 → feature theo sự kiện, cùng code live/lịch sử Jane Street 2026 ↔ học feature end-to-end Optiver 2026 → nền tảng nghiên cứu nhiều site Optiver 2025 → lưu trữ tự xây Hudson River Trading 2025 + Jane Street 2026 → môi trường Python cho researcher Jane Street 2023 ↔ Hudson River Trading 2025.
  104. Độ trễ thấp (tổng hợp ở Hệ thống độ trễ thấp (low latency)): LMAX 2011 (một thread + Disruptor) → Jane Street 2015 (GC lên lịch lúc rảnh) → Jane Street 2022 (đo ở thang ns) → Hudson River Trading 2022 → Hudson River Trading 2022 → Jane Street 2026.
  105. Đợt 51, một công ty qua hai bài toán (WhatsApp, 2011–2026; tổng hợp phần sau ở Mã hoá đầu cuối và hệ thống mà server không được đọc): Erlang WhatsApp 2012 → WhatsApp 2014 → WhatsApp 2014 (backend 2014, sự cố pg2); mã hoá đầu cuối WhatsApp 2014 → WhatsApp 2016 (migration giao thức trên client) → WhatsApp 2021 (client fan-out) → WhatsApp 2021 (HSM) → WhatsApp 2021 + Meta 2022 (metric ẩn danh) → WhatsApp 2023 → WhatsApp 2024; điều chỉnh WhatsApp 2024 → WhatsApp 2025 → WhatsApp 2026; tải Meta 2026.
  106. Đợt 52, công cụ quanh hệ giao dịch (tiếp mục 103–104): dữ liệu và code của researcher Jane Street 2018 → Hudson River Trading 2023 → Hudson River Trading 2024 → Jane Street 2026; runtime Jane Street 2020 (so đường cong, không so một điểm) → Jane Street 2020 → Jane Street 2025; phần cứng Hudson River Trading 2021 → Hudson River Trading 2026; kiểm chứng và gỡ lỗi Jane Street 2025 + Jane Street 2025; ba thế hệ stack HFT Optiver 2026; agent kết nối sàn Optiver 2026; GUI vận hành Hudson River Trading 2025.
  107. Đợt 54, lớp dữ liệu qua nhiều công ty (lọc lại sheet 'Tất cả bài'): kho time series Netflix 2018 → Netflix 2018 (tách theo tuổi rồi theo loại); shard thanh toán Etsy 2023 → Etsy 2023 → Etsy 2023 (mô hình, cutover, lỗi sau cutover); đúng đắn khi nhiều service Airbnb 2019 (idempotency) ↔ Netflix 2019 (CDC thay dual write); quá tải Airbnb 2016 → Asana 2019 → Netflix 2018; realtime Discord Discord 2019 → Discord 2023 → Discord 2024.