Skip to content

Latest commit

 

History

History
36 lines (23 loc) · 4.56 KB

README.vn.md

File metadata and controls

36 lines (23 loc) · 4.56 KB

Lộ trình cho một lập trình viên DevOps từ bắt đầu đến chuyên gia năm 2019

  1. Rèn luyện kỹ năng đọc hiểu tiếng Anh. Hầu hết các tài liệu hay đều được viết bằng tiếng Anh, do đó để thấm nhuần các tư tưởng, kiến thức thì điều kiện cần là tối thiểu tiếng Anh đọc hiểu của bạn phải thật tốt.

  2. Học một ngôn ngữ lập trình. Hãy bắt đầu với HTML, CSS và Javascript cho Front-End để có thể tạo ra các giao diện Web. Đối với Back-End, để dễ dàng và nhanh chóng tiếp cận các kiến thức mới, ban đầu bạn hãy lựa chọn ngôn ngữ dễ học nhất và có nhiều tài nguyên nhất (các ví dụ, tutorials, community lớn).

  3. Sử dụng frameworks. Ban đầu để hiểu rõ bản chất bạn có thể tự làm từ A-Z, tuy nhiên về sau thì bạn nên dùng frameworks để thuận tiện hơn trong việc maintain và mở rộng hệ thống. Hiện nay có rất nhiều ngôn ngữ, frameworks, thông tin quá nhiều khiến bạn khó khăn trong việc lựa chọn bắt đầu từ đâu, với cái gì,... Dưới đây là một số tư vấn: Với JS bạn nên dùng ExpressJS, với Java bạn có thể chọn Spring Boot, JHipster,... với Python bạn có thể chọn Django, Flask,...

  4. Hãy thực hành với các bài toán thực tế. Bác Hồ có nói: "Thực hành sinh hiểu biết, hiểu biết tiến tới lý luận, lý luận lãnh đạo thực hành". Bạn sẽ cảm thấy hứng thú và có động lực hơn khi bạn tạo ra sản phẩm. Hãy chia bài toán thành nhiều mục tiêu, bài toán nhỏ từ dễ đến khó, đừng để mục tiêu quá lớn hay quá khó sẽ ngăn cản bạn duy trì động lực học tập.

  5. Lực chọn các công nghệ tốt nhất. Sau khi đã hiểu rõ các bản chất, việc chuyển sang các công nghệ khác nhau cực kỳ đơn giản vì cơ bản các công nghệ phần lớn có chung nguyên lý hoạt động, kiến trúc,... hãy lựa chọn các công nghệ tốt nhất cho mình, ví dụ chọn theo trending, chọn theo kết quả benchmark về performance,... Hãy luôn trong tâm lý sẵn sàng thay đổi cái mới vì công nghệ thay đổi rất nhanh và rất sớm bị lạc hậu... Lợi thế của người đi sau là được tiếp cận và áp dụng những kỹ thuật tiên tiến nhất, được tiếp thu nhiều Best Practices nhất do đó hãy tận dụng tối đa lợi thế của mình.

  6. Trau dồi kỹ năng thiết kế và kiến trúc hệ thống. Thiết kế và kiến trúc là cốt lõi trong việc tạo ra khác biệt về hiệu năng sản phẩm của bạn. Nó giúp bạn dễ maintain và mở rộng hệ thống, tiết kiệm chi phí phần cứng, phần mềm hệ thống. Đừng chăm chăm chỉ làm cho các features của mình hoạt động là được, nếu chỉ vậy giờ các em học sinh cấp 3 cũng hoàn toàn làm được.

  7. Luôn có thói quen kiểm tra lại những gì mình làm. Chủ động test lại chứ đừng chờ đến khi testers làm việc đó cho bạn. Nó sẽ giúp bạn nâng cao giá trị của bản thân lên rất nhiều. Hãy biến các công việc của testers trở nên nhàm chán để họ có động lực tạo ra những ý tưởng mới cho SW Engineering :D

  8. Luôn nghĩ về các bài toán dữ liệu lớn (Big Data) và tìm cách giải quyết nó. Các bài toán này là xu thế, tương lai bạn kiểu gì cũng gặp phải nên hãy suy nghĩ và tìm cách giải quyết ngay từ khi bạn phân tích bài toán và thiết kế, kiến trúc hệ thống.

  9. Hãy ứng dụng các công nghệ, kỹ thuật học máy (Machine Learning) để khai thác dữ liệu của hệ thống nhằm đưa ra những nghiệp vụ thông minh (BI) hỗ trợ người dùng... Đó chính là sự khác biệt của hệ thống, dịch vụ của bạn.

  10. Không ngừng học hỏi, rèn luyện, nghiên cứu và tìm hiểu những công nghệ kỹ thuật mới để cải thiện hệ thống của mình.

Trên đây là 10 nguyên tắc cơ bản của một DevOps theo quan điểm cá nhân của mình, để xem đầy đủ bạn có thể đọc bản tiếng Anh và tham khảo kho sách cùng 1 số recommendations của mình:

https://github.com/raycad/devops-roadmap/blob/master/README.md

https://github.com/raycad/devops-roadmap/tree/master/books