Ai là kỹ sư DevOps, anh ấy làm gì, kiếm được bao nhiêu và làm thế nào để trở thành một kỹ sư

Các kỹ sư DevOps là những chuyên gia đa ngành, biết cách tự động hóa các quy trình và biết cách các nhà phát triển, QA và người quản lý làm việc. Họ biết cách lập trình, nhanh chóng thành thạo các công cụ phức tạp và không bối rối khi phải đối mặt với một nhiệm vụ xa lạ. Có rất ít kỹ sư DevOps - họ sẵn sàng trả cho họ 200-300 nghìn rúp, nhưng vẫn còn rất nhiều vị trí tuyển dụng.

Dmitry Kuzmin giải thích chính xác DevOps làm gì và bạn cần học những gì để ứng tuyển vào vị trí đó. Phần thưởng: các liên kết quan trọng đến sách, video, kênh và cộng đồng chuyên nghiệp.

Kỹ sư DevOps làm gì?

Trong tình huống DevOps, điều quan trọng là không nhầm lẫn giữa các thuật ngữ. Thực tế là DevOps không phải là một lĩnh vực hoạt động cụ thể mà là một triết lý chuyên nghiệp. Đó là một phương pháp giúp các nhà phát triển, người thử nghiệm và quản trị viên hệ thống làm việc nhanh hơn và hiệu quả hơn thông qua tự động hóa và liền mạch.

Theo đó, kỹ sư DevOps là chuyên gia triển khai phương pháp này vào quy trình làm việc:

  • Ở giai đoạn lập kế hoạch, kỹ sư DevOps giúp quyết định ứng dụng sẽ sử dụng kiến ​​trúc nào, quy mô ứng dụng như thế nào và chọn hệ thống điều phối.
  • Sau đó, anh ấy thiết lập máy chủ, tự động kiểm tra và tải mã lên cũng như kiểm tra môi trường.
  • Sau đó, nó sẽ tự động kiểm tra và giải quyết các vấn đề về triển khai.
  • Sau khi phát hành, điều quan trọng là thu thập phản hồi từ người dùng và thực hiện các cải tiến. DevOps đảm bảo rằng người dùng không nhận thấy những cải tiến này và quá trình cập nhật diễn ra liên tục.
  • Và đồng thời, nó giải quyết được hàng tá vấn đề giúp cải thiện hệ thống làm việc của các nhà phát triển, QA, quản trị viên và người quản lý hệ thống.

Mọi thứ được viết ở trên đều xảy ra trong các dự án gần lý tưởng. Trong thế giới thực, bạn phải bắt đầu một dự án mà việc lập kế hoạch bị bỏ sót, kiến ​​trúc sai và bạn bắt đầu nghĩ đến tự động hóa khi tất cả các dự án đều dừng lại. Và hiểu tất cả những vấn đề này, giải quyết chúng và khiến mọi thứ hoạt động tốt là kỹ năng quan trọng của chuyên gia DevOps.

Có sự nhầm lẫn trong thị trường nhân tài. Đôi khi một doanh nghiệp đang tìm kiếm các kỹ sư DevOps cho vị trí kỹ sư hệ thống, kỹ sư xây dựng hoặc người khác. Trách nhiệm cũng thay đổi tùy thuộc vào quy mô và định hướng của công ty - ở đâu đó họ đang tìm người để tư vấn, ở đâu đó họ được yêu cầu tự động hóa mọi thứ và ở đâu đó họ được yêu cầu thực hiện các chức năng nâng cao của một quản trị viên hệ thống biết cách lập trình.

Những gì bạn cần để bắt đầu vào nghề

Bước vào nghề cần có sự chuẩn bị sơ bộ. Bạn sẽ không thể đơn giản tham gia các khóa học từ đầu mà không hiểu gì về CNTT và học từ cấp cơ sở. Yêu cầu nền tảng kỹ thuật:

  • Lý tưởng nếu bạn làm việc từ sáu tháng trở lên với tư cách là quản trị viên hệ thống, chuyên gia vận hành hoặc kiểm tra. Hoặc ít nhất bạn cũng có ý tưởng về cách ứng dụng khởi động, chúng có thể phát triển trong môi trường nào và phải làm gì nếu bạn thấy lỗi. Nếu bạn không có kinh nghiệm làm việc, hãy tham gia bất kỳ khóa học nào về quản trị Linux, lặp lại mọi thứ xảy ra trên máy ở nhà của bạn.
  • Hiểu cách hoạt động của công nghệ mạng - tìm hiểu cách cài đặt, định cấu hình và quản lý mạng cục bộ và mạng diện rộng.
  • Xem cách thức và hoạt động của chương trình - viết một vài tập lệnh bằng Python hoặc Go, cố gắng hiểu các nguyên tắc của OOP (Lập trình hướng đối tượng), đọc về chu trình phát triển sản phẩm chung.
  • Kiến thức về tiếng Anh kỹ thuật sẽ hữu ích - không cần thiết phải giao tiếp về các chủ đề miễn phí, chỉ cần có thể đọc tài liệu và giao diện là đủ.

Không cần thiết phải biết mọi thứ được liệt kê chi tiết; để bắt đầu học DevOps, mức độ đào tạo tối thiểu là đủ. Nếu bạn có nền tảng kỹ thuật như vậy, hãy thử đăng ký các khóa học.

Những điều DevOps nên biết

Một kỹ sư DevOps giỏi là một chuyên gia đa ngành có tầm nhìn rất rộng. Để làm việc thành công, bạn sẽ phải hiểu một số lĩnh vực CNTT cùng một lúc.

Phát triển

DevOps sẽ viết một tập lệnh giúp các nhà phát triển cài đặt mã trên máy chủ. Sẽ tạo một chương trình kiểm tra khả năng phản hồi của cơ sở dữ liệu “một cách nhanh chóng”. Sẽ viết một ứng dụng để kiểm soát phiên bản. Cuối cùng, chỉ cần chú ý đến một vấn đề phát triển tiềm ẩn có thể xuất hiện trên máy chủ.

Một chuyên gia DevOps giỏi biết một số ngôn ngữ phù hợp cho tự động hóa. Anh ấy không hiểu chúng một cách thấu đáo, nhưng anh ấy có thể nhanh chóng viết một chương trình nhỏ hoặc đọc mã của người khác. Nếu bạn chưa từng gặp phải vấn đề phát triển trước đây, hãy bắt đầu với Python - nó có cú pháp đơn giản, dễ làm việc với các công nghệ đám mây và có rất nhiều tài liệu và thư viện.

Hệ điều hành

Không thể biết tất cả các khả năng của từng phiên bản của từng hệ thống - bạn có thể dành hàng nghìn giờ cho việc đào tạo như vậy và nó sẽ chẳng có ích gì. Thay vào đó, một DevOps giỏi hiểu các nguyên tắc chung khi làm việc trên bất kỳ HĐH nào. Mặc dù, dựa trên những đề cập trong các vị trí tuyển dụng, phần lớn hiện đang làm việc trên Linux.

Một kỹ sư giỏi hiểu hệ thống nào là tốt nhất để triển khai dự án, sử dụng công cụ nào và những lỗi tiềm ẩn nào có thể xuất hiện trong quá trình triển khai hoặc vận hành.

Những đám mây

Thị trường công nghệ đám mây đang lớn lên trung bình 20-25% mỗi năm - cơ sở hạ tầng như vậy cho phép bạn tự động hóa các hoạt động kiểm tra mã, lắp ráp ứng dụng từ các thành phần và cung cấp bản cập nhật cho người dùng. Một DevOps giỏi hiểu cả giải pháp đám mây và giải pháp kết hợp hoàn chỉnh.

Yêu cầu tiêu chuẩn dành cho kỹ sư thường bao gồm GCP, AWS và Azure.

Điều này bao gồm sự thành thạo về các công cụ CI/CD. Thông thường, Jenkins được sử dụng để tích hợp liên tục, nhưng các phương pháp tương tự cũng đáng để thử. Có rất nhiều trong số đó, ví dụ như Buddy, TeamCity và Gitlab CI. Sẽ rất hữu ích khi nghiên cứu Terraform - nó là một công cụ khai báo giúp bạn thiết lập và định cấu hình cơ sở hạ tầng trên đám mây từ xa. VÀ Packer, cần thiết để tự động tạo image hệ điều hành.

Hệ thống điều phối và dịch vụ vi mô

Kiến trúc microservice có nhiều ưu điểm - tính ổn định, khả năng mở rộng quy mô nhanh chóng, đơn giản hóa và tái sử dụng. DevOps hiểu cách thức hoạt động của microservice và có thể lường trước các vấn đề tiềm ẩn.

Biết tường tận về Docker và Kubernetes. Hiểu cách hoạt động của vùng chứa, cách xây dựng hệ thống để bạn có thể vô hiệu hóa một số vùng chứa mà không gây hậu quả cho toàn bộ hệ thống. Ví dụ: anh ta có thể xây dựng cụm Kubernetes bằng Ansible

DevOps trong tương lai nên thử điều gì khác?

Danh sách các công cụ có thể hữu ích cho kỹ sư DevOps là vô tận. Một số làm việc về điều phối dự án, một số khác dành phần lớn thời gian để tự động hóa việc triển khai và thử nghiệm, còn những người khác thì cải thiện hiệu quả trong quản lý cấu hình. Trong quá trình này, bạn sẽ biết rõ nên đào ở đâu và dự án nào sẽ hữu ích.

Đây là một mức tối thiểu nhỏ khác sẽ giúp ích khi bắt đầu:

  • Hiểu cách Git và Github hoạt động nếu bạn chưa hiểu. Cài đặt GitLab trên máy chủ của bạn.
  • Làm quen với các ngôn ngữ đánh dấu JSON và YAML.
  • Hãy cài đặt và thử làm việc trong cơ sở dữ liệu - không chỉ MySQL mà còn cả NoSQL. Hãy thử MongoDB.
  • Hiểu cách quản lý cấu hình của nhiều máy chủ cùng một lúc. Ví dụ: sử dụng Ansible.
  • Thiết lập giám sát tải và nhật ký ngay lập tức. Hãy thử kết hợp Prometheus, Grafana, Alertmanager.
  • Tìm kiếm các giải pháp triển khai tốt nhất cho các ngôn ngữ khác nhau - bạn chỉ cần làm quen, triển khai và hiểu chúng trong một dự án đào tạo hoặc làm việc.

Tại sao bạn nên bắt đầu học DevOps ngay bây giờ

Thị trường đang thiếu nhân sự cho kỹ sư DevOps. Điều này được xác nhận một cách có điều kiện bởi số lượng và chất lượng của các vị trí tuyển dụng:

  • Tại Nga, chỉ riêng trên HeadHunter, liên tục có hơn 2 nghìn việc làm cho từ khóa này.
  • Và chỉ có 1 người đăng hồ sơ của họ.

Xét rằng việc đăng sơ yếu lý lịch không có nghĩa là tích cực tìm kiếm việc làm, hóa ra đối với một chuyên gia có hai hoặc thậm chí ba vị trí tuyển dụng - tình trạng này không tồn tại ngay cả trong thị trường phát triển web phổ biến. Thêm vào đây nhiều vị trí tuyển dụng hơn từ các kênh Habr và Telegram - sự thiếu hụt chuyên gia là rất lớn.

Ai là kỹ sư DevOps, anh ấy làm gì, kiếm được bao nhiêu và làm thế nào để trở thành một kỹ sư
Chú ý đến yêu cầu về mức lương của ứng viên

Nhu cầu DevOps không kém trên thế giới - nếu bạn định chuyển đến Hoa Kỳ hoặc Châu Âu, thì chỉ có trên cổng thông tin Glassdoor Hơn 34 nghìn công ty đang tìm kiếm những chuyên gia như vậy. Yêu cầu thường gặp bao gồm 1–3 năm kinh nghiệm, khả năng làm việc với cloud và không ngại tư vấn các chức năng.

Có ít lời mời làm việc tự do hơn nhiều - Các kỹ sư DevOps chủ yếu tìm kiếm nhân viên và các vị trí toàn thời gian.

Ai là kỹ sư DevOps, anh ấy làm gì, kiếm được bao nhiêu và làm thế nào để trở thành một kỹ sư
Tìm một dự án freelance phù hợp tuy khó nhưng vẫn có thể

Con đường sự nghiệp thông thường của một kỹ sư DevOps có thể được hình dung như thế này:

  • Anh ấy đã làm quản trị viên hệ thống tại một công ty CNTT nhỏ được sáu tháng đến một năm. Đồng thời, anh nghiên cứu một ngôn ngữ phù hợp với tự động hóa.
  • Anh ấy học chuyên sâu về các khóa học trong khoảng sáu tháng.
  • Chuyển sang một công việc khác - đến một công ty bán giải pháp đám mây, chi nhánh của một tập đoàn lớn, cho các nhà phát triển các dự án lớn. Nói một cách đơn giản, đó là nơi có nhu cầu tự động hóa và triển khai liên tục. Ở vị trí ban đầu là khoảng 100 nghìn rúp.
  • Anh ấy đã tích cực làm việc và học tập trong vài năm, thu nhập của anh ấy đã tăng lên gấp nhiều lần.
  • Trở thành một chuyên gia trong cộng đồng chuyên nghiệp và chuyển sang lĩnh vực tư vấn. Hoặc phát triển thành kiến ​​trúc sư hệ thống hoặc giám đốc CNTT.

DevOps rất khó. Bạn cần kết hợp các kỹ năng của một số ngành nghề cùng một lúc. Trở thành người sẵn sàng đưa ra những cải tiến mà các chuyên gia CNTT khác thậm chí không nghĩ đến bất cứ điều gì khác. Họ phải trả rất nhiều tiền cho việc này nhưng họ cũng đòi hỏi một lượng lớn kiến ​​​​thức.

DevOps kiếm được bao nhiêu?

Theo dữ liệu của quý 2019 năm 90, mức lương trung bình trung bình của các nhà phát triển là từ 160 đến 60 nghìn rúp. Có những ưu đãi rẻ hơn - chủ yếu là 70-XNUMX nghìn.

Liên tục có những lời đề nghị lên tới 200 nghìn và có những vị trí tuyển dụng với mức lương lên tới 330 nghìn rúp.

Ai là kỹ sư DevOps, anh ấy làm gì, kiếm được bao nhiêu và làm thế nào để trở thành một kỹ sư
Trong số các chuyên gia vận hành, DevOps được trả lương cao hơn những người khác. Nguồn: Habr.Sự nghiệp

Các kỹ sư DevOps, bao gồm cả những người mới bắt đầu, hiện đang được yêu cầu ở các ngân hàng, tập đoàn lớn, dịch vụ đám mây, hệ thống giao dịch và các tổ chức khác quan tâm đến việc duy trì các giải pháp CNTT của họ.

Một ứng cử viên xuất sắc cho vị trí tuyển dụng cấp dưới với mức lương 60–90 nghìn sẽ là quản trị viên hệ thống mới bắt đầu với khoảng một năm kinh nghiệm và có bằng tốt nghiệp chuyên ngành.
 
Ai là kỹ sư DevOps, anh ấy làm gì, kiếm được bao nhiêu và làm thế nào để trở thành một kỹ sư
Không có số liệu thống kê nào như vậy nhưng có vẻ như những người có kinh nghiệm về Linux được trả lương cao hơn

Những gì nên xem và đọc để phát triển trong nghề nghiệp của bạn

Để đi sâu vào thế giới DevOps, hãy thử một số nguồn thông tin:

  • Nền tảng điện toán bản địa đám mây [YouTube, ENG] - nhiều video từ các hội nghị và hội thảo trực tuyến về giáo dục.
  • Kênh DevOps [YouTube, RUS] - video báo cáo từ hội nghị DevOps chuyên nghiệp ở Nga.
  • Sổ tay DevOps [cuốn sách, RUS] là một trong những cuốn sách phổ biến nhất về triết lý DevOps. Cuốn sách chứa đựng những nguyên tắc chung của phương pháp luận, nó cho biết những điều cần chú ý trước hết khi thực hiện bất kỳ dự án nào.
  • Thomas Limoncelli "Thực hành quản trị hệ thống và mạng" [cuốn sách, RUS] - rất nhiều lý thuyết và nguyên tắc về cách cấu trúc quản trị hệ thống.
  • Devops hàng tuần [book, ENG] - tổng hợp tin tức hàng tuần về những gì đang diễn ra trong DevOps trên toàn thế giới.
  • Devops_deflope [Telegram, RUS] - tin tức trong ngành, thông báo hội nghị, liên kết đến các bài báo và sách mới thú vị.
  • Devops_ru [Telegram, RUS] - Trò chuyện bằng tiếng Nga, nơi bạn có thể xin lời khuyên và yêu cầu trợ giúp về cấu hình.
  • Devops.com là một trang web quốc tế lớn với các bài viết, hội thảo trực tuyến, podcast và chuyên mục từ các công ty lớn nhất trong ngành.
  • Hangops_Ru — Cộng đồng nói tiếng Nga gồm các kỹ sư và người đồng tình với DevOps.
  • Những cuốn sách hay nhất về ngôn ngữ bạn sẽ sử dụng để phát triển.

Học DevOps ở đâu

Bạn có thể nhận được kiến ​​thức có cấu trúc trong khóa học “Kỹ sư DevOps" trong Mạng học. Bạn sẽ tìm hiểu toàn bộ chu trình của phương pháp luận:

  • Tìm hiểu cách phân tích mã và nhanh chóng sử dụng các công cụ kiểm soát phiên bản.
  • Hiểu các phương pháp hay nhất để tích hợp, thử nghiệm và xây dựng liên tục.
  • Tìm hiểu cách quản lý và tự động hóa các thay đổi của ứng dụng.
  • Bắt tay thực hiện với các công cụ quản lý và cấu hình.
  • Làm quen với việc chọn và cấu hình ngay các dịch vụ cần thiết để giám sát.

Nhận một khóa học lập trình Python như một phần thưởng - bạn sẽ giải quyết vấn đề nhanh hơn và dễ dàng hơn. Mọi thứ đều thiết thực - chúng tôi sử dụng AWS, GCP hoặc Azure.
Điều này đủ để biến một kỹ sư hoặc quản trị viên hệ thống mới vào nghề thành DevOps được săn đón và tăng mức giá của bạn trên thị trường lao động một cách dễ chịu.

Ai là kỹ sư DevOps, anh ấy làm gì, kiếm được bao nhiêu và làm thế nào để trở thành một kỹ sư

Nguồn: www.habr.com

Thêm một lời nhận xét