01

Kỹ sư DevOps · Bước 1/8 · 6 phút

DevOps là gì

Giải thích DevOps là một cách làm việc, không phải chức danh hay công cụ, và biết vai trò này làm gì mỗi ngày.

Lời giải cho một sự chia cắt cũ

Nhiều năm liền, lập trình viên viết code rồi ném qua bức tường cho đội vận hành chạy. Lập trình viên muốn thay đổi. Đội vận hành muốn ổn định. Các bản phát hành hiếm hoi, to và đáng sợ.

DevOps là ý tưởng để cùng một đội chia sẻ trách nhiệm xây dựng và vận hành phần mềm. Thay đổi nhỏ, phát hành thường xuyên, có tự động hoá và phản hồi ở mọi bước. Nó khởi đầu như một phong trào văn hoá khoảng năm 2009 và nay là cách phần lớn đội phần mềm cố gắng làm việc.

Văn hoá trước, công cụ sau

Bạn không thể mua DevOps. Một đội cài công cụ pipeline nhưng vẫn đổ lỗi cho nhau sau mỗi sự cố thì chưa thay đổi được bao nhiêu. Các thói quen cốt lõi là cùng chịu trách nhiệm, tự động hoá việc lặp lại, đo lường kết quả và học từ thất bại mà không đổ lỗi.

Công cụ trong lộ trình này tồn tại để những thói quen đó trở nên dễ làm: quản lý phiên bản, kiểm thử và triển khai tự động, môi trường dựng lại được và giám sát tốt.

Vai trò này làm gì

Chức danh rất đa dạng: kỹ sư DevOps, kỹ sư nền tảng (platform engineer), kỹ sư độ tin cậy hệ thống (SRE), kỹ sư cloud. Công việc chồng lấn nhau. Bạn xây và duy trì pipeline CI/CD, quản lý hạ tầng bằng code, chạy container và cụm máy, thiết lập giám sát và hỗ trợ khi có sự cố.

Ngày càng nhiều nơi giao cho vai trò này việc xây nền tảng nội bộ: những con đường trải sẵn để lập trình viên khác phát hành an toàn mà không cần là chuyên gia hạ tầng.

Các đội đo lường thế nào

Nghiên cứu DORA của Google đã theo dõi việc phát hành phần mềm suốt hơn một thập kỷ. Các chỉ số chính gồm tần suất triển khai, thời gian một thay đổi đến được production, tỷ lệ thay đổi gây lỗi và tốc độ khôi phục. Đội giỏi làm tốt cả tốc độ lẫn độ ổn định; hai thứ này không phải đánh đổi.

Thử ngay

Vẽ lại một lần phát hành bạn biết

  1. 1.Nghĩ về một phần mềm bạn từng thấy được cập nhật: một app, một website, hoặc một dự án ở công ty.
  2. 2.Hỏi chatbot bằng câu lệnh bên dưới.
  3. 3.Đánh dấu bước nào làm tay, bước nào tự động, và khoanh tròn bước sẽ gây hại nhất nếu hỏng.
Mô tả từng bước một thay đổi trong một web app điển hình đi từ laptop của lập trình viên đến production, trong một đội áp dụng DevOps. Với mỗi bước, cho biết phần nào tự động, phần nào có người rà soát, và điều gì có thể sai.
Câu nào mô tả DevOps đúng nhất?

Tự kiểm tra

Câu nào mô tả DevOps đúng nhất?