Để trở thành một Full-stack developer giỏi


Full-stack developer là vị trí mà nhiều Dev mong muốn đạt được, cũng như nhiều nhà tuyển dụng săn đón. Kiến thức Full-Stack giúp dev có cái nhìn tổng thể về hệ thống, rất cần thiết và được đánh giá cao nếu họ muốn phát triển lên thành Team Leader, Product Manager hay Software Architect.

Vậy Full-stack developer làm những gì? Và một Dev cần làm gì để trở thành một Full-stack developer giỏi? Bài viết này tôi sẽ chia sẽ một vài kiến thức tổng quát, cũng như một số resource mà bạn nên tham khảo để có thể trở thành một Full-stack developer giỏi.

Trước đây một Full-stack developer là vị trí mà có kỹ năng lập trình cả Front-end và Back-end, nhưng giờ đây thì các full-stack developer còn cần thêm nhiều Skill khác như: Design tốt, UI/UX, DepOps và Cloud Computing...

Công việc cụ thể mà một Full-stack developer được mỗi công ty định nghĩa khác nhau và rất linh hoạt. Trong thực tế của hầu hết project thì một Full-stack developer cũng chỉ đảm nhận một phần Back-end hoặc Front-end và đủ hiểu biết về phần còn lại để có thể kết nối và tương tác sẵn sàng đảm nhiệm. 


Nói chung một developer cần những kiến thức sau để có thể đáp ứng tốt hầu hết các công việc được yêu cầu:

1. Front-end

Dev nên chọn cho mình 1 ngôn ngữ Front-end để học chuyên sâu, đồng thời nghiên các ngôn ngữ khác, để có thể tiếp cận nhanh chóng khi dự án yêu cầu. Các ngôn ngữ phổ biến hiện tại: React, Angular, Vue...

Tuy nhiên để có thể tiếp cận nhanh bất cứ ngôn ngữ Front-end nào, bạn cần một vốn kiến thức Javascript ở đẳng cấp thượng thừa. Tôi xin chia sẽ một số Ebook mà bạn nên đọc trước khi vỗ ngực tự xưng là "vô đối":

- Head First HTML & CSS, HTML5 & CSS3 for Dummies: Đọc online, Amazon

- JavaScript: The good part: Đọc online, Amazon

- Professional JavaScript for Web Developers: Đọc online, Amazon


2. UI/UX

Ngoài các kỹ năng về ngôn ngữ lập trình một Full-stack developer còn cần kỹ năng về UI/UX để sản phẩm tạo ra mang đến cho người sử dụng trải nghiệm tốt nhất.

UI-User Interface (giao diện người dùng) là cái người dùng nhìn thấy. UX-User Experience (trải nghiệm người dùng) là cách người dùng sử dụng website/app đó. Một website/app có thể có UI đẹp nhưng UX tệ. 

Hai Cuốn Ebook sau cũ rồi nhưng rất đáng đọc để bạn có một kỹ năng UI/UX tốt:

- Don't Make Me Think: Đọc online, Amazon, Đọc online (Tiếng Việt)

- User Interface Design for Programmers: Đọc online, Amazon

3. Back-end

Với Back-end thì có quá nhiều ngôn ngữ để bạn chọn: Nodejs, Java, PHP, Python, ... và bạn cần thành thạo các hệ quản trị cơ sở dữ liệu: MySQL, PostgreSQL, MongoDB,...

Tuy nhiên kiến trúc hệ thống và tổ chức code là điều cốt lõi và cực kỳ quan trọng để đánh giá một developer, vì vậy tôi chia sẻ một số ebook cần thiết để đạt level cao:

- Clean Code: A Handbook of Agile Software Craftsmanship: Đọc online, Amazon

- Refactoring: Improving the Design of Existing Code: Đọc online, Amazon

- Patterns of Enterprise Application Architecture: Đọc online, Amazon

- Head First Design Patterns: Đọc online, Amazon

4. Cloud computing/ Server

Hãy bắt đầu chọn ngay cho mình một Cloud computing để học: AWS, Azure, Google cloud, Alibaba cloud, hoặc hàng Việt Nam như: FPT cloud...

Hầu hết các hệ thống cloud đều cung cấp đầy đủ tài liệu và nhiều khoá học rất tốt và được update công nghệ mới thường xuyên nên tôi không chia sẻ thêm về các resource để luyện các môn này.

Chúc các bạn thành công !



0 Nhận xét:

Đăng nhận xét

Rất mong các ý kiến của các bạn khi đọc bài viết này !