Ngành học

Khoa học máy tính

Học cách máy tính giải quyết vấn đề, không chỉ cách viết phần mềm.

Ngành này thực ra là gì

Khoa học máy tính là ngành nghiên cứu bản chất của tính toán: một bài toán có giải được bằng máy không, giải bằng cách nào, và cách nào rẻ nhất về thời gian và bộ nhớ. Lập trình là công cụ để làm việc đó, không phải nội dung của ngành.

Đây là điểm khác biệt quan trọng nhất và cũng hay bị bỏ qua nhất: bạn sẽ học nhiều toán rời rạc, thuật toán, cấu trúc dữ liệu và lý thuyết hơn là học từng công nghệ cụ thể. Lý do là công nghệ đổi vài năm một lần, còn cách nghĩ thì không.

Ở Việt Nam, ngành này có nguồn tuyển lớn nhất trong khối kỹ thuật và cũng cạnh tranh gắt nhất ở đầu ra. Điều quyết định không phải trường mà là những gì bạn làm ngoài chương trình: một sản phẩm chạy được, một kho mã nguồn mở, một kỳ thực tập thật. Sinh viên trường tốp giữa có đồ án tử tế thường được tuyển trước sinh viên trường tốp đầu chỉ có bảng điểm.

Ngành này thiên về nhóm I · Nghiên cứu hơn cả — đây là kiểu công việc mà nhóm đó làm.

Bốn năm học những gì

Hai năm đầu nặng về toán — giải tích, đại số tuyến tính, toán rời rạc, xác suất — cộng với lập trình cơ bản và cấu trúc dữ liệu. Rất nhiều sinh viên bất ngờ vì tưởng sẽ được làm sản phẩm ngay, và đây là giai đoạn bỏ ngành nhiều nhất.

Hai năm sau mở ra: hệ điều hành, mạng, cơ sở dữ liệu, trí tuệ nhân tạo, đồ hoạ máy tính, và đồ án. Đây là lúc phần thú vị xuất hiện và cũng là lúc bạn chọn hướng đi sâu.

Ra làm nghề gì

Kỹ sư phần mềm

Viết và bảo trì phần mềm trong đội. Phần lớn thời gian là đọc mã của người khác, sửa lỗi và họp — không phải viết mã mới.

Kỹ sư dữ liệu

Xây đường ống đưa dữ liệu từ nơi phát sinh tới nơi phân tích. Nhiều xử lý sự cố lúc nửa đêm hơn người ta tưởng.

Kỹ sư nghiên cứu học máy

Huấn luyện và đánh giá mô hình. Phần lớn công việc là chuẩn bị dữ liệu và đo đạc, không phải nghĩ ra thuật toán mới.

Kỹ sư hệ thống nhúng

Viết phần mềm chạy trên thiết bị phần cứng hạn chế. Gần với kỹ thuật điện tử hơn là phần mềm thông thường.

Giảng viên / nghiên cứu viên

Giảng dạy và nghiên cứu ở đại học hoặc viện. Cần học lên cao và chấp nhận nhịp tiến độ chậm hơn doanh nghiệp.

Trang riêng cho từng nghề

Hợp với ai

Người thích tìm ra cách giải chứ không chỉ thích làm ra sản phẩm; chịu được việc ngồi lâu với một bài toán chưa chạy; và không thấy toán là chướng ngại phải vượt qua mà là công cụ để nghĩ.

Cái bẫy

Nếu bạn chọn ngành này vì nghe nói dễ xin việc và lương cao, hai năm đầu sẽ rất khó chịu — chúng gần như không giống công việc bạn hình dung. Ngành cũng đòi hỏi tự học liên tục sau khi ra trường, và người không thật sự tò mò về máy tính sẽ thấy điều đó mệt mỏi chứ không thú vị.

Khác gì với ngành gần giống

Kỹ thuật phần mềm

Khoa học máy tính hỏi “bài toán này giải được không và giải thế nào”; kỹ thuật phần mềm hỏi “làm sao xây và bảo trì được một hệ thống lớn với nhiều người cùng làm”. Một bên thiên về lý thuyết và thuật toán, một bên thiên về quy trình, kiến trúc và chất lượng.

So sánh đầy đủ: Khoa học máy tínhKỹ thuật phần mềm

Trí tuệ nhân tạo

Trí tuệ nhân tạo là một nhánh chuyên sâu của khoa học máy tính. Học AI ngay từ đầu cho bạn đi nhanh vào một lĩnh vực; học khoa học máy tính cho bạn nền rộng hơn để đổi hướng về sau.

So sánh đầy đủ: Khoa học máy tínhTrí tuệ nhân tạo

Trang này không nêu điểm chuẩn, học phí hay mức lương — những con số đó đổi hằng năm và nên tra ở nguồn chính thức của từng trường thay vì tin vào một trang đã cũ.

Làm trắc nghiệm để biết mã Holland của bạn