DevOps là một khái niệm kết hợp giữa giai đoạn phát triển (Development) và giai đoạn vận hành (Operations) nhằm nói về văn hóa làm việc đề cao sự hợp tác, thu hẹp khoảng cách của 2 giai đoạn này. Một DevOps Engineer sẽ là người đảm nhiệm toàn bộ quá trình phát triển đến vận hành với mục đích cuối cùng là triển khai phần mềm diễn ra hiệu quả và tự động hoá ổn định.
I/ DevOps Engineer là làm gì?
Nhiều người cho rằng công việc chính của DevOps Engineer tương tự với các nhiệm vụ của Sysadmin (deploy, optimizing, monitoring, analysis…) tuy nhiên vị trí DevOps Engineer đòi hỏi ở nhân sự nhiều kỹ năng mềm hơn, cần phải biết sử dụng coding, scripting để tự động hóa (automate) hệ thống, cần tìm hiểu về stack mà công ty đang sử dụng để có thể cùng xem xét lại lỗi phần mềm (review bug), viết những unit test thông thường, và hỗ trợ triển khai (deploy) khi phát triển tiến trình CI/CD.
DevOps Engineer là vị trí cần những người vừa có kinh nghiệm về mảng phát triển phần mềm vừa có khả năng vận hành hệ thống. Khả năng giao tiếp tốt và kỹ năng kinh doanh cũng là điểm cộng để các DevOps Engineer có thể dễ dàng làm việc trực tiếp với khách hàng. Các nhiệm vụ chính của một DevOps Engineer được miêu tả như sau:
Ở Giai đoạn phát triển
- Chuẩn hóa môi trường làm việc từ local cho đến production.
- Hiểu rõ sản phẩm nhằm tối ưu hóa sản phẩm tốt hơn.
- Nắm được cơ bản logic code, tiến trình của code.
Ở Giai đoạn vận hành
- Đảm bảo quá trình hoạt động kết hợp giữa các bộ phận.
- Kết nối, giao tiếp các service với nhau theo những quy luật, quy định để đảm bảo hiệu quả, hiệu suất của công việc.
II/ Những kỹ năng cần thiết để trở thành DevOps Engineer
Những kiến thức kỹ thuật cần trang bị:
- Sử dụng thành thạo các nền tảng Linux, Window, MacOS: Khả năng thành thạo lệnh Terminal trong Linux hoặc CMD, Powershell trong Window và lệnh trong Linux hoặc Macos.
- Vững chắc kiến thức cơ bản về Process Management, Threads and Concurrency, Sockets, Memory storage and File systems, I/O Management, Virtualization.
- Nắm rõ kiến thức cơ bản về hệ thống bảo mật: DNS, HTTP, HTTPS, FTP, SSL.
- Biết cài đặt và sử dụng các Web Server phổ biến: Apache và Nginx.
- Hiểu được khái niệm và chức năng thường được sử dụng: Caching Server, Load balancer, and Firewall, Reverse Proxy.
- Có hiểu biết hoặc sử dụng một số dịch vụ cloud: AWS của Amazon, Google cloud, và Azure của Microsoft.
- Khả năng code một số ngôn ngữ hệ thống: bash script, java, javascript , python, Php…
- Có thể dùng một số tool để triển khai CI&CD như jenkins, jira , git (Gitlab, Bitbucket…).
- Thuần thục sử dụng các tool monitoring server: Nagios, Zabbix, Icing, Datadog…
Những kỹ năng mềm (soft skill) nên có:
- Sự cẩn thận, tỉ mỉ được xem là yếu tố cần thiết đối với một DevOps Engineer. Vì vị trí này thường đảm nhiệm công việc như migrate data cho công ty. Khi đó, nếu xảy ra một sai sót nhỏ, ví dụ chỉ sai 1 IP server, thì sẽ ảnh hưởng đến toàn bộ hệ thống.
- Luôn đặt lợi ích tập thể lên đầu để giải quyết công việc. Luôn suy nghĩ, tổ chức, cấu trúc code/thư mục như thế nào để mọi người đều có thể cùng nhau đọc và hiểu code đó.
- Khả năng research tốt để nhanh chóng tìm ra giải pháp, xử lý tình huống. Trong DevOps có rất nhiều bài toán hóc búa liên quan đến network, I/O, infra system, v.v…buộc kĩ sư DevOps phải có khả năng tự tìm hiểu nghiên cứu tài liệu để phục vụ cho công việc.
- Nhìn nhận sự việc từ nhiều góc nhìn, nhiều khía cạnh để có cái nhìn khách quan, biết thông cảm, nhận định sáng suốt hơn và đưa ra quyết định hợp lý nhất.
- Khả năng giao tiếp và hợp tác tốt với các team khác nhau. Điều này giúp điều hành công việc thuận lợi hơn. Để có những mối quan hệ tốt, mình phải tôn trọng họ, khi đó họ cũng sẽ tôn trọng, dễ dàng chia sẻ với mình hơn.
DevOps Engineer là một công việc hấp dẫn, nhiều thử thách nhưng không dễ dàng nên bạn cần có nhiều quyết tâm, học hỏi nhiều kiến thức, luôn phát triển bản thân để không bị tụt hậu trong lĩnh vực này.
Xem thêm: Cách viết CV dành cho IT Fresher
Xem thêm: Kỹ năng tìm việc thời 4.0
Xem thêm: Kỹ năng giao tiếp Phần 1
Đừng quên, Follow Fanpage của Metajobs ngay để không bỏ lỡ nhiều vị trí tuyển dụng cũng như tin tức về ngành nghề của bạn ngay!