This ad listing is expired.
2.000.000

Trở thành lập trình viên giỏi, bạn cần học như thế nào?

Địa chỉ27 nguyễn tất thành, tp buôn ma thuột
Quận/huyệnBuôn Mê Thuột
Tỉnh/Thành phốAn Giang
Quốc giaVietnam

Trở thành lập trình viên giỏi, bạn cần học như thế nào?
Thời gian gần đây, mình thường xuyên được các bạn sinh viên nhắn tin hỏi và xin lời khuyên, định hướng về tương lai của các bạn, đặc biệt là con đường trở thành 1 lập trình viên giỏi. Bài viết dưới đây trả lời câu hỏi ấy, theo góc nhìn của riêng mình. Bạn không nhất thiết phải đi theo con đường mà mình chỉ, hãy tự xây dựng 1 con đường riêng, nhưng mình hy vọng bài viết này sẽ cho bạn thêm kinh nghiệm và kiến thức để xây dựng và lựa chọn con đường đúng đắn.

Xem thêm: Học công nghệ thông tin ở Đắk Lắkhọc chứng chỉ ứng dụng công nghệ thông tin tại Đắk Lắk

Sinh viên nên học những gì?
Kiến thức luôn luôn hữu ích và cần thiết. Có nghĩa là dù bạn học gì, thì nó cũng sẽ cần dùng cho bạn ở một thời điểm nào đó. Giống như mình, khi làm sinh viên, mình nghĩ sẽ chẳng bao giờ dùng đến kiến thức về kế toán, bán hàng hay thuyết trình. Nhưng bây giờ khi làm sản phẩm, mình lại phải sử dụng và đang đi học lại những kiến thức ấy.

Nhưng nếu học tràn lan, học quá nhiều, đôi lúc lại dễ bị tẩu hoả nhập ma và không sâu một cái gì cả. Cái sự cân bằng giữa sâu và rộng thực ra khó nói, tuỳ lựa chọn mỗi người và đánh giá của mỗi người mà thôi.

Nếu phải lựa chọn 4 môn bắt buộc phải học để trở thành lập trình viên giỏi, mình xin lựa chọn những môn sau (theo thứ tự ưu tiên):

Tiếng Anh
Tiếng Anh mình nghĩ quan trọng số 1. Để học và làm trong ngành CNTT, mà cụ thể hơn là lập trình viên, bạn sẽ phải thường xuyên đọc và tìm hiểu các công nghệ, nền tảng, kiến thức ở trên mạng và bằng tiếng Anh. Các tài liệu bằng tiếng Việt, thường thì không đủ mới (thậm chí cực kì cũ kĩ) và không đủ nhanh so với sự thay đổi liên tục của thế giới. Chưa kể, đến khi đi làm, bạn sẽ thường xuyên có cơ hội phải giao tiếp với khách hàng, nhóm làm việc nước ngoài. Do đó, tiếng Anh không tốt sẽ hạn chế khả năng làm việc của bạn đấy.
Nói cho bạn biết, nếu giỏi tiếng Anh, bạn có cơ hội kiếm việc ở các công ty nước ngoài hoặc ít nhất là làm việc với khách hàng nước ngoài, với thu nhập cao hơn khoảng 20% (trừ 1 số công ty outsourcing làm việc với khách hàng Nhật).
Ngôn ngữ lập trình hướng đối tượng: Java hay C++?
Là lập trình viên, tất nhiên phải biết lập trình rồi. Đúng không? Vấn đề là tại sao lại chọn 1 trong 2 ngôn ngữ này?
Sau này, khi làm lập trình viên, nếu bạn làm về frontend thì bạn không cần dùng Java hay C++, nếu bạn lập trình Web thì biết PHP cũng là đủ xài. Do đó, việc chọn ngôn ngữ lập trình có thể còn phải tính toán cả con đường tương lai của bạn.
Ở mức chung chung và thông thường, cá nhân mình đưa ra lựa chọn C++ hay Java dành cho sinh viên, vì mình nghĩ 2 ngôn ngữ này thể hiện khá đầy đủ và đúng đắn bản chất của một ngôn ngữ lập trình bậc cao, việc rèn luyện thành thạo 2 ngôn ngữ lập trình này có thể dễ dàng học và chuyển sang một ngôn ngữ khác. Và ngoài ra, 2 ngôn ngữ này cũng nằm trong danh sách những ngôn ngữ lập trình thông dụng và có khả năng ứng dụng rộng rãi nhất.

Xem thêm:  Cao đẳng công nghệ thông tin Đắk LắkTuyển sinh cao đẳng công nghệ thông tin Tây NguyênCao đẳng công nghệ thông tin Tây NguyênHọc Công nghệ thông tin ở Buôn Ma Thuột, Học công nghệ thông tin ở Tây Nguyên
Cấu trúc dữ liệu và giải thuật
Môn này, đa phần các lập trình viên bỏ qua và không xem trọng. Ở 1 số trung tâm đào tạo nghề, cũng không hề dạy môn này. Đó là vì môn này khó.
Cũng đã có bài mình chia sẻ tầm quan trọng về giải thuật trong blog này. Nên bài này sẽ không nói thêm nhiều nữa. Nhưng cá nhân mình cho rằng, nếu học tốt về giải thuật, có tư duy giải thuật, bạn sẽ làm phần mềm tốt hơn và chính xác hơn bình thường.
Có một sự thật, đó là bạn mình khi đi phỏng vấn các công ty lớn như Google, AWA hay Grab thì đều phải trình bày và giải quyết những bài tập có tính giải thuật rất cao. Bạn có thể không cần nhớ cách cài đặt một giải thuật, nhưng hãy biết đến nó, và vận dụng nó linh hoạt khi phần mềm của bạn cần sử dụng đến nó.
Cơ sở dữ liệu
Khi mình đi học, mình khá coi thường và ít học môn này. Đó thật sự là một sai lầm.
Bạn biết rồi đấy, ngày hôm nay, sản phẩm phần mềm nào cũng dùng tới cơ sở dữ liệu. Kể cả là Game điện thoại hay Web bán hàng, bạn cũng cần lưu thông tin người sử dụng. Đặc biệt, trong các hệ thống lớn, cơ sở dữ liệu là 1 phần tất yếu và vô cùng quan trọng. Cơ sở dữ liệu sẽ là đơn giản, khi phần mềm của bạn chỉ có 10 hay 100 người dùng, số lượng nghiệp vụ chỉ bé tí tẹo và đơn giản như kiểu lưu điểm của học sinh hay thời gian đi làm của một nhân viên. Nhưng hãy suy nghĩ xem, nếu bạn phải làm những hệ thống lớn có hàng triệu người dùng, số lượng bản ghi sinh ra trong từng giây lên đến con số hàng chục triệu, cùng với các quan hệ, nghiệp vụ chồng chéo, bạn sẽ làm như thế nào?
Rất nhiều đồng nghiệp hay chính tôi, đều biết cách viết 1 câu lệnh truy vấn để lấy được thông tin cần thiết. Nhưng chúng tôi không giải quyết được vấn đề, khi dữ liệu lớn, 1 câu lệnh truy vấn có thể tốn hàng chục giây. Nếu học và hiểu rõ về bản chất của cơ sở dữ liệu, các câu lệnh truy vấn, bạn mới thật sự có thể trở thành lập trình viên giỏi và tham gia để xây dựng một sản phẩm có rất đông người dùng
————————
Còn rất nhiều môn đáng học và nên học như: “Mạng máy tính”, “Kiến trúc máy tính”, “Nguyên lý hệ điều hành”, … Mình không khuyên bạn bỏ qua mấy môn này, nhưng trong khuôn khổ và thời gian có hạn, cá nhân mình nghĩ 4 môn bên trên là cần t

12/03/2020 08:25

This ad has expired

Listing ID 6815e698f7b40ab8 61 total views, 1 today
Report problem
Processing your request, Please wait....

Liên hệ người đăng tin

Avatar of vanminh1928

vanminh1928

Listing Owner Member Since: 26/02/2020

Comments