Why Every Developer Should Learn Cloud

Tất cả lập trình viên đều nên học Cloud ! Đừng ngạc nhiên nữa

Thế kỉ 21, việc cha mẹ cho trẻ học code từ nhỏ đã không còn là điều lạ lẫm. Tưởng tượng tiếp đi nào, hồi xưa ta lên đại học mới học code, giờ tụi nhỏ học code từ cấp 1. Điều gì sẽ xảy ra khi tụi nhỏ bây giờ cạnh tranh trực tiếp với những lập trình viên “già” thế hệ trước ?

Công nghệ, đặc biệt “phần mềm” là ngành thay đổi nhanh chóng, và chu kì thay đổi này ngày một ngắn hơn. Thật sự khốc liệt, cứ 2- 3 năm ta có thêm 1 framwork mới và cứ 5 năm thì có thêm 1 paradigm mới. Vậy làm thế nào để lập trình viên tiếp tục làm việc hiệu quả và giữ được tình yêu với ngành nghề - mà luôn tìm cách loại bỏ họ.

Câu trả lời tốt nhất hiện tại là CLOUD

Đừng gắn chặt mình với 1 công cụ hay nền tảng nào mà hãy tự học hỏi phát triển bản thân thành một nhà cung cấp giải pháp độc lập.

Mọi lập trình viên phải học cách:

  • Đạt được nhiều hơn với ít công sức/ chi phí hơn
  • Kết nối các hệ thống khác nhau
  • Tìm hiểu các quy tắc về bảo mật, quyền riêng tư và khả năng điều chỉnh quy mô của hệ thống.

Và CLOUD thỏa mãn tất cả 3 điều trên trong bất kỳ dự án phần mềm nào !

CLOUD giúp tách biệt dữ liệu tiêu thụ (trên máy chủ) khỏi dữ liệu được tiêu thụ (trên thiết bị). Đây là sự mở rộng của mô hình máy khách-máy chủ, với việc giảm chi phí sở hữu máy chủ. Vậy là đạt được nhiều hơn với chi phí đầu tư ít hơn.

Giống như khi sử dụng hệ thống Serve cổ điển, CLOUD cũng cho phép bạn kết nối với các hệ thống khác nhau - có thể là để quản lý danh tính (ID management) hoặc xử lý thanh toán. Nhưng CLOUD đạt được điều đó theo cách linh hoạt, tùy biến hơn nhiều. Các giải pháp CLOUD như AWS, GCP và Azure hoạt động dựa trên khái niệm được gọi là Machine Images, là các ngăn xếp tạo sẵn chứa chuỗi công cụ cần thiết để kết nối với các hệ thống khác, và thời gian triển khai thì “siêu ngắn gọn”

Trong mô hình Serve cổ điển, ta phải học các nguyên tắc cơ bản về bảo mật và quyền riêng tư. Làm cách nào để giữ các ứng dụng và dữ liệu được tách biệt với nhau và với internet? Đối với các sản phẩm của doanh nghiệp, việc kiểm soát chi tiết hơn cũng được yêu cầu giữa các phòng ban và hệ thống phân quyền. Còn CLOUD cung cấp cả bảo mật và quyền riêng tư được tích hợp sẵn, ở hầu hết mọi lớp của mô hình OSI - bao gồm cả Network và ứng dụng.

Hãy bàn về các Start-up

Các Start-up nên sử dụng CLOUD để “stay relevant” : giữ cho mình có liên quan, luôn luôn cập nhật, tương tác.
Start-up

1. Đặc điểm Start-up thường gặp khó khăn về dòng tiền, do yêu cầu cao về nhân sự ở mức senior, số tiền trả lương không nhỏ.

2. Sử dụng máy chủ nội bộ có nghĩa là phải chi trả nhiều hơn cho phần cứng. Khi lưu lượng truy cập tăng lên gấp 3 lần thì phải mua thêm gấp 3 lần số máy chủ. Vậy khi lưu lượng truy cập giảm xuống thì sao? Quá lãng phí

3. Phải thuê chuyên gia phần cứng, DevOps chuyên môn cao.

Các giải pháp Cloud (AWS, GCP, Azure, DigitalOcean, v.v.) giải quyết hai vấn đề đầu tiên bằng cách cung cấp cơ sở hạ tầng chi tiết và có khả năng mở rộng cao - về lưu trữ, cơ sở dữ liệu và tính toán.

Hiệu quả về chi phí là tiêu chí số 1. Tất cả các nhà cung cấp Cloud lớn nhất còn giúp đỡ các Start-up giai đoạn đầu với các Gói tín dụng hỗ trợ . Tôi đã nhận được 2 lần khoản tín dụng trị giá 1000$ AWS hỗ trợ cho Start-up về mảng Mobile sắp tới của mình.

Khi một lập trình viên vừa có kĩ năng lập trình, lại có khả năng sử dụng Cloud, tạm gọi là DEV+ Cloud. Vậy là lập trình viên này vừa giải quyết vấn đề thứ ba, thật dễ dàng trở thành tâm điểm săn đón của các nhà tuyển dụng. Điều đó có nghĩa là gì? Các Start-up không còn phải tìm kiếm DevOps nữa! Các DEV + Cloud thể có ít chuyên môn hơn và phải thử nghiệm nhiều hơn, nhưng chẳng sao cả, mọi người đều happy, Start-up thì tiết kiệm được kha khá. Một lập trình viên kinh nghiệm có các kỹ năng CLOUD cơ bản là một điều tuyệt vời.

Bạn được trả tiền đề học CLOUD

Đây không phải là một khoản trả trước, tất nhiên rồi, nhưng ngẫm cho kĩ, tôi nói không sai đâu.

Tất cả các nhà cung cấp CLOUD đều có sẵn rất nhiều tài liệu học tập online, dưới dạng video. Cơ sở hạ tầng CLOUD chủ yếu là công nghệ khai báo. Bạn sẽ cần viết các tệp YAML / JSON hoặc terraform files. Và, các mẫu phổ biến luôn có sẵn miễn phí.

Nếu mà bạn đã quen với các thông số Cloud Formation, thì gần như bạn làm được ngay lập tức. Với gói Free tier (miễn phí một số dịch vụ trong 12 tháng sử dụng) và gói tín dụng hỗ trợ Start-up, bạn có thể bắt đầu sử dụng CLOUD ngay, mà chả cần phải tham gia lớp học thực sự nào.

Học thi chứng chỉ sẽ giúp bạn đạt được chứng nhận nhanh hơn. Học thi chứng chỉ thì mất phí, nhưng bạn không cần phải mất tiền học nếu không muốn. Với các từ khóa phù hợp, bạn có thể tìm kiếm và học trên Youtube.

Rất nhiều tổ chức làm việc chủ yếu với CLOUD còn tài trợ cho các khóa học này.
Cloud DEV có chứng chỉ rất được các nhà tuyển dụng săn đón, mức lương dao động 100.000$/ năm. Mức này ở nước ngoài, vậy ở Việt Nam thì sao nhỉ, các HR xác nhận giúp nhé.

CLOUD là vị cứu tinh duy nhất khỏi sự xóa sổ

Nếu bạn muốn tiếp tục “stay relevant” trong ngành công nghiệp phần mềm, bạn phải liên tục học hỏi. Khi bạn học thêm ngôn ngữ lập trình, có nghĩa thêm nhiều cách để hoàn thành cùng 1 mục tiêu, nó sẽ chỉ mở rộng theo chiều ngang.
Khi bạn học về CLOUD, bạn có khả năng xử lý các công việc của 2 người hoặc hơn. Do sự gia tăng của CLOUD, các vai trò DBA chuyên biệt đã gần như biến mất.
Vậy nên học CLOUD sớm để thăng tiến sự nghiệp, trước khi CLOUD trở thành một thị trường bão hòa.

Bài gốc tại Medium

Tham khảo khóa học AWS Learn AWS the Hard Way với 120+ bài lab thực hành và luyện thi chứng chỉ

Kênh youtube học AWS chia sẻ một số video trong khóa học.
Với người mới bắt đầu học về Cloud và muốn theo hướng DevOps thì nên chọn học Cloud Service Provider (AWS, Azure, GCP etc.) nào trước?