ĐỂ LÀM LẬP TRÌNH VIÊN SAU 1 NĂM, NÊN HỌC GÌ?

Ngày đăng: Thứ Tư, 06/03/2019

Thực sự thì mình chỉ mới đi làm được gần 1 năm, skill cũng chưa có nhiều nên cũng không thể chém gió sâu vào kỹ thuật được. Lúc trước mình theo mảng front-end nhưng ngày càng nhận ra không có hứng thú nên dần dà chuyển sang back-end từ lúc nào không hay, và mình chỉ có một số lời khuyên dành cho lập trình website chứ bên ứng dụng thì mình không biết.

Kỹ năng cần học thì quá nhiều, mỗi công ty có mỗi yêu cầu và thay đổi theo thời gian. Kỹ thuật phát triển không ngừng nên một khi đã theo ngành này thì xác định là phải học cả đời.

Tới đây nhiều người sẽ có thể chém em rằng ôi chú em mới đi làm được một năm thì biết gì về kỹ thuật mà nói. Thực ra thì trình độ không chỉ cân đo đong đếm bằng số năm kinh nghiệm, chủ yếu là số vấn đề mình đã gặp qua và cách giải quyết nó, số dự án đã hoàn thành, bác tự học bao nhiêu giờ một ngày, từ đó rút ra kỹ năng của bác có cứng không. Chứ còn nói “Tôi có 5-6 năm experience nhưng trong 5-6 năm đó toàn làm xoàng xoàng, dự án thì xong nhưng kiểu đúng deadline không hơn không kém, và chiều chiều canh hết giờ làm rồi về”…. chấm hết, không thể đánh giá chính xác với trường hợp như vậy.

Thôi vô vấn đề chính, vậy để làm lập trình thì cần những gì, lộ trình thế nào….. Cái đó phụ thuộc vào hướng bạn đi.

screen-shot-2016-11-03-at-8-59-18-am

Hướng front-end developer

Hướng này có rất nhiều kỹ thuật, nhưng mình nghĩ các bạn nên học những kỹ thuật chắc chắn cần trước. Còn lại phụ thuộc vào công ty các bạn làm có yêu cầu học thêm không. Danh sách thì dài đằng đẳng như thế này đây: https://github.com/dypsilon/frontend-dev-bookmarks

Nhưng các skill sau đây nhất định phải có khi đi làm, ít nhất là để làm được việc:

  • HTML (HTML5 càng tốt)
  • CSS (CSS3 càng tốt)
  • Javascript cơ bản (jQuery). Nói trước là Javascript chuyên sâu rất hay và rất khó gặm.
  • Photoshop cơ bản
  • Illustrator cơ bản
  • Một số front-end framework như Twitter Bootstrap, AngularJS mới nổi….

Hướng back-end developer

Hướng này thì kinh tởm hơn, theo mình nếu đã chọn con đường chông gai này thì chỉ nên chọn 1-2 ngôn ngữ lập trình mà theo (học sâu). Mình thà làm vua một nước chứ nước nào cũng thích thì dễ tẩu hỏa khi luyện công lắm. Các kỹ năng cần chủ yếu là nền tảng và phụ thuộc vào tư duy logic của bạn:

  • Các nền tảng cơ bản về ngôn ngữ bạn định làm, mấy kiến thức đơn giản này phải khắc cốt ghi tâm chứ đôi khi cũng có người quên và phải đọc lại từ Google. Vòng lặp, cách khai báo biến, hàm, hướng đối tượng….. Đặc biệt phỏng vấn bao giờ cũng có hướng đối tượng.
  • Kiến thức về database MySQL, Microsoft SQL.
  • Rộng hơn là Design Pattern (Singleton, Factory, Strategy, MVC, HMVC….).
  • Các framework hot tính tại thời điểm viết bài này, đơn giản nhất và dễ nhất là CodeIgniter.

Bạn nên học một framework sau đó đi làm và học tiếp theo để dễ thấm và có cơ hội làm nhiều hơn. Theo lời khuyên của mấy đàn anh đi trước thì 1 developer cần biết 2 framework và 1 CMS nếu muốn đi đánh dự án với các công ty outsource.

Hướng full stack

Là full-stack developer có nghĩa là bạn phải cởi mở đối với các công nghệ mới, có hiểu biết sâu về một vài công nghệ và phải có sự hiểu biết về cách một ứng dụng web được thực hiện từ một khái niệm thiết kế cho đến khi các sản phẩm đã hoàn thành.

screen-shot-2016-11-03-at-9-00-03-am

Full-stack developer không có nghĩa là phải thông thạo mọi công nghệ mà chỉ cần có hiểu biết về các ngôn ngữ đang có, có thể giao tiếp một cách thông minh giữa các thành viên trong nhóm và là một nguồn lực tốt, sẵn sàng nếu dự án cần đến bạn.

Full-stack trên thế giới hiện nay có thể cần những kỹ năng sau (tham khảo):

  • Không giới hạn mình ở bất kỳ 1 language hay 1 framework hay 1 chuyên môn cụ thể nào.
  • Có kiến thức IT tổng quát và khả năng tìm hiểu sâu khi cần thiết bất kỳ vấn đề gì thuộc: (1) Server – Network (2) Database (3) Web frameworks (4) Mobile frameworks
  • Hiểu và ứng dụng được UI/UX vào trong projects
  • Nắm bắt nhanh Business Logics và chuyển được thành Technical Logics
  • Biết được khi nào cần hiểu rộng, khi nào cần hiểu sâu một vấn đề
  • Có thể lập trình được ít nhất 1 ngôn ngữ lập trình web và 1 ngôn ngữ lập trình mobile (iOS/Android)

Hiện nay khá nhiều người theo hướng này, một phần do cái danh full-stack khá là hay ho (cảm giác như super hero), một phần là hiện nay các nhà tuyển dụng cũng yêu cầu khá cao về skills của developer. Các công nghệ chết tiệt trong thế giới lập trình lỗi thời đủ nhanh để cuốn trôi bất kỳ 1 “nền tảng” vững chãi nào. Do đó nếu bạn chỉ biết 1 ngôn ngữ, biết 1 nền tảng nào đó, hiện tại bạn vẫn có thể kiềm tiền ngon ăn với nó, nhưng liệu 2 – 4 năm nữa thì không chắc chắn.

Do đó bạn có thể là 1 “super-code dạo” hiện tại, nhưng chưa chắc điều đó sẽ đảm bảo cho bạn một tương lai chắc chắn cho những năm tới đâu.

Đối với ai đi theo hướng này, nếu được nên học front-end trước rồi từ từ mò qua back-end bởi vì trong 1 năm bạn không thể nào trở thành full-stack đâu – cũng có nhiều người tự phong, ahihi. Và tất nhiên mình cũng khuyến khích (nếu được) các bạn nên đi theo hướng này (về lâu về dài) để đáp ứng nhu cầu công việc trong tương lai.

Tất cả những gì cần thiết mình đã nêu ở trên, nếu các bạn biết về chúng thì có thể đi code dạo và kiếm cơm được rồi. Sau này đi làm cố gắng trau dồi nhiều thật nhiều kỹ năng để tăng giá trị bản thân lên (tăng lương).

Nguồn: Techtalk via justfunny

CÁC TIN TỨC, SỰ KIỆN KHÁC


5 BÀI TOÁN LẬP TRÌNH MÀ BẤT KỂ LẬP TRÌNH VIÊN NÀO CŨNG CẦN CÓ KHẢ NĂNG GIẢI QUYẾT TRONG VÒNG 1 GIỜ
5 bài toán lập trình mà bất kể lập trình viên nào cũng cần có khả năng giải quyết trong vòng 1 giờ
Thứ Hai, 18/03/2019 bởi Techtalk via Viblo

Viết 3 hàm tính tổng của các số trong 1 dãy cho trước sử dụng for-loop, while-loop, và để quy.


BÁO CÁO MỚI NHẤT VỀ THỊ TRƯỜNG IT & TÌNH HÌNH NHÂN LỰC IT VIỆT NAM
Báo cáo mới nhất về thị trường IT & tình hình nhân lực IT Việt Nam
Thứ Năm, 14/03/2019 bởi Nguồn: Báo cáo của TopDev

Thị trường lao động riêng ngành lập trình sẽ cần 350.000 nhân lực đến trước cuối năm 2021 trong khi với khả năng hiện tại chỉ có khoảng 200.000 lao động đáp ứng được nhu cầu công việc.


ARENA MULTIMEDIA: ĐÒN BẨY SÁNG TẠO CHO NGƯỜI TRẺ VIỆT
Arena Multimedia: Đòn bẩy sáng tạo cho người trẻ Việt
Thứ Năm, 14/03/2019 bởi Theo Kênh14

Sự chuyển mình của ngành Mỹ Thuật Đa Phương Tiện Việt Nam (MTĐPT), với sự đồng hành của Arena Multimedia, không chỉ góp phần mang lại doanh thu tỷ đô mà còn tạo nên một thế hệ người trẻ đủ sức góp mặt trong những dự án đẳng cấp thế giới.


CODE CHALLENGE - SÂN CHƠI LẬP TRÌNH CHO SINH VIÊN MIỀN TRUNG
Code Challenge - Sân chơi lập trình cho sinh viên Miền Trung
Thứ Tư, 13/03/2019 bởi Softech Aptech

Code Challenge 2019 là một sân chơi công nghệ mới mẻ, mang đến loạt thử thách hấp dẫn cho các bạn sinh viên chuyên ngành IT. Cuộc thi lần đầu tiên được tổ chức có quy mô hoành tráng hàng đầu Miền Trung (phạm vi thí sinh toàn miền Trung) và vòng chung kết diễn ra tại Đà Nẵng.


APTECH ĐỘT PHÁ: HỌC HAI NĂM NHẬN HAI BẰNG LẬP TRÌNH QUỐC TẾ
Aptech đột phá: Học hai năm nhận hai bằng lập trình quốc tế
Thứ Tư, 13/03/2019 bởi Theo 24h

Hàng năm, nước ta có hàng ngàn sinh viên tốt nghiệp đại học ra trường, nhưng nhiều doanh nghiệp CNTT vẫn ca thán nhân sự ngành lập trình rất “thiếu và yếu”.Nên học lập trình ở đâu để ra trường làm được việc ngay? Đột phá với chương trình rút gọn, nhận song bằng quốc tế, đào tạo chú trọng nhu cầu doanh nghiệp, Aptech chính là lời giải cho bài toán nhân lực ngành CNTT.


SỬ DỤNG TRIGGER TRONG SQL QUA VÍ DỤ CƠ BẢN.
Sử dụng trigger trong SQL qua ví dụ cơ bản.
Thứ Hai, 11/03/2019 bởi Nguồn: Phạm Anh Tuấn/Viblo

Hiểu đơn giản thì Trigger là một stored procedure không có tham số. Trigger thực thi một cách tự động khi một trong ba câu lệnh Insert, Update, Delete làm thay đổi dữ liệu trên bảng có chứa trigger. 

XEM THÊM


KẾT NỐI VỚI CHÚNG TÔI