Building a Healthy On-Call Culture

Bài tóm tắt SoundCloud 2021 3. Quy mô lớn Độ khó: Dễ

SoundCloud · 2021 · 3. Quy mô lớn · Độ khó: Dễ — bài gốc

Bối cảnh

  • Ở SoundCloud, không chỉ DevOps/SRE mà nhiều engineer sản phẩm trực on-call. Bài mô tả cách tổ chức đã đúc kết qua thử sai.

Thay đổi chính

  • Tự nguyện và có trả phí: trực ngoài giờ được trả theo giờ, cộng thêm theo giờ khi phải xử lý page.
  • Hai cấp: mỗi rotation gồm engineer của một hoặc (thường) vài team; luôn có một người trực cấp 1 cho mọi hệ của các team đó. Ai trong rotation cũng là cấp 2 cho hệ của team mình, theo kiểu cố gắng: được page bất cứ lúc nào nhưng không bắt buộc trả lời.
  • Nhịp: ca thường dài một đến hai ngày. Theo SoundCloud, trực khoảng ba ngày mỗi tháng là tối ưu: nhiều hơn thì kiệt sức, ít hơn thì "rỉ sét". Từ đó rotation nên có 8–12 người, 10 là đẹp nhất (có rotation từng phải có danh sách chờ vì không muốn quá 10).
  • Mỗi rotation có người quản trị (chính thức hoặc không) lo lịch, thay đổi nhân sự, lịch lễ; nhịp ca, giờ bàn giao, cách đổi ca do cả rotation quyết, nên mỗi rotation một khác.
  • Rotation không chạy theo sơ đồ tổ chức: team nhập/tách/đổi bộ phận nhưng rotation ít đổi theo; các lần sắp lại cho khớp tổ chức thường dừng vì người trực phản đối, do họ đã có hiểu biết sâu về các hệ trong rotation sau nhiều năm. Theo bài, điều này không thành vấn đề.
  • Văn hoá: luôn được page người khác để hỏi (nhấn mạnh từ lúc onboarding); sự cố dài thì bàn giao sau khoảng 4 giờ hoặc sớm hơn khi mệt; dùng giờ làm việc để xử lý vấn đề nhỏ trước khi nó thành page ngoài giờ; học từ lỗi thay vì đổ lỗi.

Vì sao

  • Theo SoundCloud, người tự nhận trực (và được trả) có động lực hơn khi xử lý sự cố; trực trên hệ thật dạy engineer sản phẩm về hạ tầng và khiến họ viết hệ đáng tin, tài liệu tốt hơn. Sự cố nhỏ là buổi tập cho sự cố lớn.

Bài học cho SWE

  • Kích thước rotation có thể suy ngược từ tần suất trực mong muốn (khoảng 3 ngày/tháng → khoảng 10 người).
  • Quyền được gọi người khác và giới hạn thời gian một người gánh sự cố cần được nói rõ thành quy tắc.
  • Kiến thức tích luỹ của rotation là tài sản; sắp lại cho khớp sơ đồ tổ chức có giá.

Liên quan