Học ngành nào thì trở thành lập trình viên

169

Chào các bạn,

Nhớ lại lớp 12, thời gian sắp tốt nghiệp cấp 3, biết là mình sẽ chọn một trường CNTT để học rồi, nhưng trong trường lại nhiều khoa và ngành khác nhau, nào Khoa học máy tính, nào An toàn thông tin, nào Kỹ thuật phần mềm,… Mình phân vân không biết ngành nào sẽ giúp mình trở thành lập trình viên sau khi tốt nghiệp.

Chắc cũng nhiều bạn có câu hỏi giống mình, nên bài viết này mình sẽ review cho các bạn một số ngành IT có kiến thức tập trung cho công việc của một lập trình viên.

Lưu ý:
– Phần lớn các trường ĐH đều tổ chức dưới dạng khoa > ngành > lớp. Chương trình giảng dạy sẽ khác nhau từ cấp “ngành” trở đi. Nhưng cũng có một số trường thì chỉ dừng lại ở mức “khoa”, và chương trình giảng dạy thì khác từ mức “khoa” trở đi.

– Các mục dưới đây mình chỉ nêu tên, bạn có thể hiểu nó là tên khoa hoặc tên ngành đều được, vì khoa hay ngành còn phụ thuộc vào cách chia của mỗi trường.

– Để cho ngắn gọn, trong bài viết này mỗi khi mình nhắc tới từ “ngành”, bạn có thể hiểu nó là “ngành hoặc khoa”.

– Cùng tên ngành, nhưng chương trình dạy giữa các trường có thể khác nhau, và thường là khác nhau, nhưng lại khác nhau không nhiều.

I. Công nghệ thông tin

Đây là ngành có cái tên dễ hiểu nhất, nghe đến là tưởng tượng ra máy tính, các con số, dây dợ loằng ngoằng rồi. Với các trường không chuyên về CNTT, thì khoa (ngành) CNTT thường là nơi duy nhất đạo tạo kiến thức để bạn trở thành lập trình viên.

Có thể bạn chưa biết
Không chỉ có các trường chuyên về công nghệ với có khoa CNTT, các trường như ĐH Xây dựng, đại học Thủy lợi cũng có khoa CNTT.

Vì cái tên khá chung chung – Công nghệ thông tin, nên kiến thức đào tạo của ngành này cũng khá rộng, và bạn sẽ có xu hướng được học tất cả mọi thứ liên quan tới CNTT. Bạn sẽ được học lập trình (tất nhiên), học các kiến thức cơ bản về mạng máy tính, học nguyên lý hoạt động của hệ điều hành, thiết kế đồ họa, học máy, trí tuệ nhân tạo, quản lý và phân tích yêu cầu… Nói chung mỗi lĩnh vực con của CNTT bạn sẽ được “chấm mút” một chút.

Mục tiêu của ngành này là đạo tạo chúng ta có thể làm được nhiều công việc liên quan tới CNTT, đương nhiên có cả công việc của một lập trình viên.

II. Kỹ thuật phần mềm

Ngành này sẽ học chuyên sâu về phần mềm, cụ thể là học chuyên sâu về cách tạo ra một phần mềm. Theo lý thuyết, để tạo ra một phần mềm bạn sẽ phải trải qua các bước sau:

  • Bước 1: Khảo sát, thu thập yêu cầu.
  • Bước 2: Phân tích thiết kế.
  • Bước 3: Triển khai (lập trình).
  • Bước 4: Kiểm thử.
  • Bước 5: Bảo trì và cải tiến.

Nội dung đào tạo của ngành này chủ yếu xoay quanh các bước trên, với mỗi bước lại có 2 – 3 môn học. Ngành này không tập trung nhiều vào khía cạnh kỹ thuật lập trình, mà tập trung vào việc làm sao để có thể tạo ra một phần mềm thành công.

Lưu ý
Một phần mềm thành công không nhất thiết phải áp dụng các kỹ thuật lập trình tiên tiến, nhưng nó phải đáp ứng được nhu cầu và đem đến trải nghiệm tốt cho người sử dụng.

Tạo ra phần mềm thành công thường là mục tiêu quan trọng của các lập trình viên, vì vậy đây là ngành rất đáng để học nếu bạn muốn trở thành lập trình viên trong tương lai (À, mình cũng học ngành này đó).

III. Khoa học máy tính

Ngành này có xu hướng tìm hiểu về cách hoạt động của máy tính, và tập trung nhiều vào khía cạnh kỹ thuật của cả phần cứng lẫn phần mềm. Bạn sẽ biết cách máy tính lưu trữ dữ liệu trên phần cứng như thế nào, biết một phần mềm trên máy tính hoạt động ra sao, biết cách hoạt động của hệ điều hành máy tính,… Với những kiến thức này, bạn có thể không biết cách tạo ra một phần mềm thành công như ngành kỹ thuật phần mềm, nhưng bạn sẽ biết cách tạo ra một phần mềm chạy nhanh nhất, tối ưu nhất, tốn ít tài nguyên máy tính nhất.

Code viết ra chạy được là chưa đủ, mà còn phải chạy tốt nữa, vì vậy kiến thức của ngành khoa học máy tính cũng sẽ giúp ích cho bạn rất nhiều nếu bạn muốn trở thành lập trình viên.

Chia sẻ thêm
Cá nhân mình tốt nghiệp ngành kỹ thuật phần mềm, nhưng để làm việc tốt nhất thì mình vẫn phải tìm hiểu thêm các kiến thức về khoa học máy tính.

IV. An toàn thông tin

Ngày nay, chúng ta quá quen thuộc với từ khóa “hack” – ám chỉ hành động tấn công, khai thác một hệ thống công nghệ thông tin qua các lỗ hổng bảo mật tồn tại trong hệ thống đó.

Để hạn chế việc hệ thống bị “hack”, thì ngành an toàn thông tin sẽ trang bị cho bạn các kiến thức về bảo mật, giúp bạn tạo ra một hệ thống an toàn, ít (không có) lỗ hổng bảo mật, chống lại cuộc tấn công của hacker.

Học ngành này, bạn sẽ có xu hướng trở thành một chuyên gia bảo mật hơn là một lập trình viên. Nhưng vì một phần mềm tạo ra phải an toàn nhất có thể, nên kiến thức về an toàn thông tin vẫn có ý nghĩa rất nhiều nếu bạn muốn trở thành một lập trình viên.

V. Lời kết

Mỗi ngành kể trên lại có cái hay, cái thú vị riêng, và công việc của một lập trình viên có vẻ là bao gồm kiến thức của tất cả các ngành trên. Nên dù bạn có đang học kỹ thuật phần mềm thì cũng đừng quên trau dồi kiến thức về an toàn thông tin hay khoa học máy tính nhé.

Chào tạm biệt, hẹn gặp lại bạn trong bài viết tiếp theo.