Đã có thời điểm các kỹ sư làm phần mềm việc gần như hoàn toàn cô lập, ít tương tác với doanh nghiệp và hầu như không có phản hồi trực tiếp từ những người đã sử dụng những gì họ làm ra.
Và DepOps ra đời. Ngày nay, sự hợp tác giữa phát triển (Dev) và vận hành (Ops) trong tất cả các giai đoạn của vòng đời phát triển phần mềm đã mang lại nhiều lợi ích đối với các tổ chức lớn và nhỏ.
Không còn những sự ngăn cách giữa những nhà phát triển với các nhà điều hành, DevOps đã làm cho việc phân phối phần mềm đáng tin cậy hơn, nhanh hơn và thường xuyên hơn.
Rắc rối với “kỹ sư DevOps”
Nhưng DevOps là một phương pháp, không phải là một vai trò. Thay vì gắn chức danh cho các kỹ sư của bạn là Kỹ sư DevOps, bạn cần hiểu rằng vai trò của kỹ sư trong cả quá trình phát triển và vận hành đã thay đổi, và nó đang tiếp tục thay đổi. Bởi vì việc phân chia các bộ phận đã là dĩ vãng, nên việc thay đổi không ngừng sẽ liên quan đến tất cả.
Ngày nay, tất cả các kỹ sư phần mềm cần hiểu kiến trúc cơ sở hạ tầng đám mây và tất cả các kỹ sư cơ sở hạ tầng cần hiểu kỹ thuật phần mềm. Nếu không, họ có nguy cơ trở nên thừa đối với các doanh nghiệp. Các mô hình IT kiểu cũ đã biến mất, và mọi kỹ sư phải hoàn thiện hơn và đóng góp nhiều hơn thay vì chỉ các hoạt động truyền thống gắn liền với chức danh công việc của họ.
Tư duy hệ thống cho phép một kỹ sư nhìn thấy toàn bộ quy trình thay vì chỉ từng phần, và hiểu mối quan hệ giữa chúng. Bằng cách này, một kỹ sư DevOps có thể xem toàn bộ doanh nghiệp như một hệ sinh thái, hiểu mối quan hệ qua lại giữa hệ sinh thái kinh doanh đó và phát triển phần mềm. Đồng thời làm việc trong môi trường năng động này, các thành phần có thể cần được điều chỉnh để phù hợp với một tình huống nhất định hoặc kết quả cần thiết.
Để duy trì sự phù hợp trong môi trường ngày nay, và cho một tương lai mà chúng ta thậm chí còn chưa bắt đầu hình dung trong những ngày trước đại dịch, mọi kỹ sư nên biết cách xây dựng phần mềm theo cách DevOps. Mọi kỹ sư nên quan tâm đến các chỉ số và nhật ký trong quá trình sản xuất và có thể định cấu hình bộ công cụ plugin Jenkins pipelines và các Git instances. Và mọi quản trị viên cơ sở hạ tầng phải có khả năng hỗ trợ và tự động hóa các công cụ.
Ví dụ, mọi người trong nhóm IT nên hiểu Linux, Docker và Kubernetes, cùng với kiến trúc mạng và triển khai. Đồng thời, mỗi kỹ sư phải quan tâm đến việc làm cho khách hàng hài lòng.
Những quan niệm sai lầm cản trở các chuyên gia DevOps
Để phát huy hết tiềm năng, DevOps cần được tất cả các cấp của doanh nghiệp và các bộ phận kỹ thuật chấp nhận và hỗ trợ. Nếu văn hóa DevOps được xem như một công việc hoặc vai trò riêng lẻ, bạn vẫn có thể thực hiện những cải tiến nhỏ, cục bộ bằng cách áp dụng các phương pháp hay nhất của DevOps, nhưng tác động của những phương pháp đó sẽ bị hạn chế.
Điều này không có nghĩa là bạn không thể có DevOps trong một vai trò cụ thể để lãnh đạo phụ trách áp dụng văn hóa DevOps, nhưng điều đó phải đi kèm với sự hỗ trợ cần thiết của việc thiết lập văn hóa.
Các nhà lãnh đạo CNTT hiểu sai vai trò này thường mắc sai lầm khi thuê các kỹ sư DevOps, những người kết thúc với một công việc, cố gắng thực hiện các phương pháp hay nhất và liên tục gặp phải rào cản văn hóa. Điều này hạn chế tiềm năng của những chuyên gia này và cản trở những cải tiến bền vững và việc áp dụng rộng rãi các phương pháp hay nhất đòi hỏi sự ủng hộ của mọi người. Câu nói “Culture eats strategy for lunch” (Văn hóa ăn cả chiến lược cho bữa trưa, ngụ ý rằng văn hóa của công ty bạn luôn quyết định sự thành công bất kể chiến lược của bạn có hiệu quả như thế nào) chắc chắn là đúng trong những trường hợp này.
Kỹ năng về con người của DevOps
Vì vậy, thay vì lập kế hoạch phát triển vai trò của kỹ sư DevOps, hãy xác định những người đó trong bộ phận CNTT, những người đã làm việc trong lĩnh vực phát triển, kiến trúc, kỹ thuật hệ thống hoặc vận hành (operation) trong một vài năm nhưng cũng có các kỹ năng mềm cần thiết để đón nhận các ý tưởng và thực hiện chúng.
Các kỹ sư DevOps nên tập trung vào các kỹ năng giải quyết vấn đề và khả năng tăng hiệu quả, tiết kiệm thời gian và tự động hóa các quy trình thủ công, và trên hết, quan tâm đến những người sử dụng sản phẩm của họ. Kỹ sư DevOps phải trở thành một trong những thứ mà DevOps Institute gọi là “Con người của DevOps”. Đây là những kỹ sư có kỹ năng con người (human skills) cùng với kỹ năng quy trình và công nghệ. Học hỏi giữa các thành viên trong nhóm cũng như trong doanh nghiệp là điều tối quan trọng và chưa bao giờ là thời điểm tốt hơn để làm điều đó. Một kỹ sư DevOps cần có các kỹ năng mềm để tạo điều kiện thuận lợi cho việc học hỏi của các thành viên trong nhóm và liên tục chuyển đổi nhóm theo nhu cầu của doanh nghiệp.
Kỹ sư được trong tương lai có thể làm việc giữa các nhóm và chức năng, không chỉ trong CNTT mà trong toàn bộ doanh nghiệp. Họ có thể tận dụng các chuyên gia và kết hợp các framework và phương pháp luận tối ưu để mang lại giá trị với tốc độ của môi trường cạnh tranh với chất lượng theo yêu cầu của khách hàng.
Tương lai của các vai trò DevOps: Những thay đổi phía trước
Dưới đây là một số thay đổi chính sẽ được mong đợi trong vai trò DevOps khi nó phát triển:
- Các kỹ sư Ops và DevOps phải hiểu những gì đang được chuyển giao cho khách hàng để đảm bảo rằng có thể truy xuất trở nguồn gốc các user stories và các tác vụ đã thực hiện .
- Tính bảo mật sẽ càng được chú trọng hàng đầu, đặc biệt là khi phần mềm là sự kết hợp của nguồn mở, thư viện từ các tổ chức khác nhau, Google Maps, từ việc phát triển nội bộ đến thuê ngoài.
- Thời gian đưa ra thị trường thông qua tự động hóa và cải tiến quy trình sẽ tiếp tục quan trọng khi batch size giảm và phản hồi của khách hàng là rất quan trọng. Lợi ích phụ là tự động hóa sẽ cho phép kỹ sư DevOps tập trung nhiều hơn vào giá trị lâu dài và ít hơn vào các tác vụ thủ công lặp đi lặp lại.
- Đám mây sẽ đóng một vai trò lớn hơn nữa và việc áp dụng tư duy đám mây sẽ ảnh hưởng đến mọi bộ phận trong tổ chức, với DevOps sẽ dẫn đầu và thúc đẩy phần lớn sự thay đổi.
Kỹ sư DevOps sẽ là người đóng vai trò quan trọng trong việc thực hiện các thay đổi đối với quy trình, tự động hóa và khả năng phục hồi cần thiết để mở rộng quy mô DevOps trong doanh nghiệp.
Thời của các kỹ sư làm việc một cách cô lập với sự tương tác tối thiểu với các đồng nghiệp ở những bộ phận kinh doanh khác đã qua. Và như vậy, chức danh kỹ sư DevOps đã mất đi ý nghĩa truyền thống. Khi một nền văn hóa DevOps mới xuất hiện, các tổ chức cần hỗ trợ theo hướng mà vai trò Ops và Dev đang thay đổi này hướng tới.