Như một nghệ sĩ đa tài có thể diễn xuất, ca hát, viết lách, đạo diễn cũng như sản xuất chưa. Nếu người đó ở trong thế giới CNTT, ta gọi người đó là full stack developer .
Một full stack developer là một kỹ sư phát triển phần mềm đa năng, có thể đảm nhận nhiều vị trí hoặc một mình cân cả dự án. Thành thạo về UI/frontend, giỏi backend, API , cơ sở dữ liệu, server, v.v. Và để trở thành một full-stack developer, một người cần có kiến thức và cả kinh nghiệm làm việc phong phú trong nhiều dự án và trải qua nhiều vai trò khác nhau.
Vậy làm sau để trở thành một full-stack developer, trước tiên hay chuẩn bị kiến thức cái đã. Các kiến thức tối thiểu mà một full-stack developer cần có là
- UI/Fornt End : html/css/javascript/jquery/reactjs/vujs/angular
- Backend: cần biết ít nhất 2 ngôn ngữ lập trình là PHP/Nodejs, và framework xử dụng nó như Laravel/Yii/cake (PHP) hay expressjs/nextjs(nodejs). Lập trình hiện đại framework quan trọng không thua ngôn ngữ lập trình vì đây mới là đối tượng được xử dụng nhiều nhất.
- Database: Nên biết ít nhất mysql và Mongodb, vì đây là 2 CSĐL thông dụng bật nhất hiện nay.
- DevOp: Tối thiểu cân biết Linux vì các công nghệ devop đa phần chạy trên hệ thống này, thừ hai là git/svn vì đây là công cụ quản lý source-code. Kế tiếp là sử dụng VPS (DigitalOcean/Linode/AWS). Nếu có cơ hội tìm hiểu thêm CICD nhưng hiện này phần này ít thấy dùng phía dev, chủ yếu bên DevOp.
- Mobile App: Hiện tại thông dụng có React-Native và Ionic (cordova), nếu có thể biết thêm Flutter
Sau đây là sơ đồ kiến thức tối thiểu cho điều kiện cần, chú ý là mới cần. Còn đủ là kinh nghiệm và trải nghiệm, cái đầy phải qua đau thương.