thảo luận Một vài chia sẻ có thể hữu ích cho các bạn trẻ trong sự nghiệp ngành IT

  • Người tạo chủ đề Người tạo chủ đề laptrinhvienu40
  • Ngày bắt đầu Ngày bắt đầu
Topic hay, chia sẻ kn cho nhiều bạn mới. Mà mình ko đồng ý ở cái số 5 lắm. Về vụ làm 1 công việc 2-3 năm. Mình thấy cái này tùy thuộc vào khả năng của mỗi người và công ty đó nữa. Nếu cảm thấy công ty ko ổn thì đi sớm. Hoặc cảm thấy mình học tốt đc 1 mảng nào đó rồi, muốn đi trả nghiệm những môi trường mới thì cứ đi.
Và đặc biệt là mình ko đồng ý ở vụ làm 10-15 năm rồi đc đẩy lên quản lý. Nói câu này ra dễ làm các bạn trẻ nản lòng lắm. Thực tế là đi làm 3-4 năm là đã có nhiều bạn lên lead rồi. hoặc cũng có nhiều bạn làm tốt, khả năng học tốt, tích lũy kiến thức và kinh nghiệm nhanh, cũng đc đưa lên làm lead từ năm thứ 2-3.
Việc đưa các bạn ấy lên lead sớm thì có nhiều lý do, kỹ năng tốt, tinh thần làm việc tốt, hiểu sâu về domain công việc, có thể cty lúc đó thiếu người nữa... Nhưng những bạn đc lên lead sớm mình đều thấy 1 đặc điểm đó là các bạn hiểu sâu về domain của dự án đang làm, có 1 số bạn giỏi xuất sắc --> cho lead dự án đó luôn. Có 1 số trường hợp thì cty cảm thấy bạn đó là người có tiềm năng, khả năng học tốt, tính cách + tinh thần làm việc tốt nên muốn tạo điều kiện cho bạn phát triển hơn....
Còn cái cuối là vụ quản lý, sau nhiều năm làm việc, tích lũy đc kinh nghiệm + kỹ năng tốt rồi thì cũng có nhiều hướng để đi, chứ ko chỉ riêng quản lý. Ví dụ bạn thích về tech, thì có thể lên tech lead, Solution Architect
 
Nhiều bạn đề cao Fsoft quá @@". Nếu các bạn ko vào được Fsoft thì cũng đừng buồn. Ngoài Fsoft ra còn rất nhiều các công tốt khác. Kể cả những công ty nhỏ, startup, 20 người hay chỉ có vài người.
Mình cũng thuộc thế hệ cuối 8x. Các bạn của mình có rất nhiều người sau khi ra trường vào làm trong fsoft. Nhưng cũng có rất nhiều người làm ở các công ty nhỏ ở ngoài, thậm chí là công ty chỉ có 5 người (mình nhớ lúc đó python bắt đầu hot, mấy a ấy làm startup về game gì đó và cũng dùng python làm luôn). Tuy xuất phát từ những cty khác nhau, size khác nhau nhưng mình thấy cuộc sống của các bạn ấy từ hồi đó đến giờ đều rất ổn (tích lũy kiến thức, chuyên môn, vị trí hiện tại, thu nhập, work life balance...)
Nên là đừng có buồn khi ko vào hoặc ko vào đc fsoft nhé :D. Cũng đừng thấy cty bé mà nghĩ ngợi kiểu nó ko ngon = các cty to nhé :D
 
Topic hay, chia sẻ kn cho nhiều bạn mới. Mà mình ko đồng ý ở cái số 5 lắm. Về vụ làm 1 công việc 2-3 năm. Mình thấy cái này tùy thuộc vào khả năng của mỗi người và công ty đó nữa. Nếu cảm thấy công ty ko ổn thì đi sớm. Hoặc cảm thấy mình học tốt đc 1 mảng nào đó rồi, muốn đi trả nghiệm những môi trường mới thì cứ đi.
Và đặc biệt là mình ko đồng ý ở vụ làm 10-15 năm rồi đc đẩy lên quản lý. Nói câu này ra dễ làm các bạn trẻ nản lòng lắm. Thực tế là đi làm 3-4 năm là đã có nhiều bạn lên lead rồi. hoặc cũng có nhiều bạn làm tốt, khả năng học tốt, tích lũy kiến thức và kinh nghiệm nhanh, cũng đc đưa lên làm lead từ năm thứ 2-3.
Việc đưa các bạn ấy lên lead sớm thì có nhiều lý do, kỹ năng tốt, tinh thần làm việc tốt, hiểu sâu về domain công việc, có thể cty lúc đó thiếu người nữa... Nhưng những bạn đc lên lead sớm mình đều thấy 1 đặc điểm đó là các bạn hiểu sâu về domain của dự án đang làm, có 1 số bạn giỏi xuất sắc --> cho lead dự án đó luôn. Có 1 số trường hợp thì cty cảm thấy bạn đó là người có tiềm năng, khả năng học tốt, tính cách + tinh thần làm việc tốt nên muốn tạo điều kiện cho bạn phát triển hơn....
Còn cái cuối là vụ quản lý, sau nhiều năm làm việc, tích lũy đc kinh nghiệm + kỹ năng tốt rồi thì cũng có nhiều hướng để đi, chứ ko chỉ riêng quản lý. Ví dụ bạn thích về tech, thì có thể lên tech lead, Solution Architect
cám ơn chia sẻ kinh nghiệm thực tế của bạn nhé, ngành này đúng là nếu ai giỏi thì 5 năm lên Tech Lead là bình thường, vì họ ngoài chuyên môn còn có kỹ năng lãnh đạo tốt.
 
Nhiều bạn đề cao Fsoft quá @@". Nếu các bạn ko vào được Fsoft thì cũng đừng buồn. Ngoài Fsoft ra còn rất nhiều các công tốt khác. Kể cả những công ty nhỏ, startup, 20 người hay chỉ có vài người.
Mình cũng thuộc thế hệ cuối 8x. Các bạn của mình có rất nhiều người sau khi ra trường vào làm trong fsoft. Nhưng cũng có rất nhiều người làm ở các công ty nhỏ ở ngoài, thậm chí là công ty chỉ có 5 người (mình nhớ lúc đó python bắt đầu hot, mấy a ấy làm startup về game gì đó và cũng dùng python làm luôn). Tuy xuất phát từ những cty khác nhau, size khác nhau nhưng mình thấy cuộc sống của các bạn ấy từ hồi đó đến giờ đều rất ổn (tích lũy kiến thức, chuyên môn, vị trí hiện tại, thu nhập, work life balance...)
Nên là đừng có buồn khi ko vào hoặc ko vào đc fsoft nhé :D. Cũng đừng thấy cty bé mà nghĩ ngợi kiểu nó ko ngon = các cty to nhé :D
thì nó tốt chả đề cao, bác bị bệnh đi ngược đám đông à, tất nhiên có chỗ nó cũng tốt, nhưng fsoft là 1 nơi nổi bật, và fsoft nó to, nên nhiều công ty trực thuộc, vào được thì chả tốt :D
 
về việc thực tập càng sớm càng tốt thì liệu các công ty có nhận sinh viên cuối năm 2 như em thực tập trong hè này không ạ
 
Với góc nhìn của mình thì mình thấy còn thiếu 1 thứ khá quan trọng mà nhiều bạn trẻ không để ý tích lũy cho mình, đó là kĩ năng phỏng vấn. Với mình thì kĩ năng này rất quan trọng vì dù bạn muốn hay không thì hầu như chúng ta đều cần trải qua phỏng vấn đề có job, và phỏng vấn thì nó không chỉ đánh giá kiến thức mà còn đánh giá mindset, kĩ năng mềm, kinh nghiệm và nhiều khía cạnh khác. Và để có offer thì chúng ta phải chứng minh rằng mình là ứng viên "hợp" nhất với họ.
Nói ra kinh nghiệm thì khá dài, nên mình tóm tắt vài ý thôi:
1. Hãy đi pv thật nhiều dù có nhu cầu chuyển việc hay không, tốt nhất 1 năm/ 1 lần. Có những điểm lợi sau:
  • Bạn sẽ có dịp ôn lại kiến thức của mình -> hệ thống lại và đào sâu kiến thức.
  • Biết được thị trường đang cần skill gì -> học nó -> tăng giá trị bản thân và dễ kiếm việc sau này.
  • Biết được thị trường ngoài kia đang trả như nào -> tránh bị trả thấp. Nếu có offer tốt nhì nhảy luôn :)))
2. Viết CV: Trước mình thấy dễ nhưng dạo này cạnh tranh gắt quá, rớt vòng CV như cơm bữa nên cần chăm chút CV nhiều hơn, có cả 1 thread về vấn đề này, mn tham khảo ở đây nhé
3. Hãy cố gắng mở rộng mối quan hệ của mình, mình thấy job ngon thường đến từ connection mình nhiều hơn bản thân tự tìm :v
4. Với những câu hỏi về coding và xa hơn là system design sự tương tác với interviewer rất quan trọng, đừng assume trong đầu quá nhiều, hãy biết cách đặt câu hỏi cho interviewer, xem họ như là 1 đồng dội của mình đang cùng mình giải quyết 1 vấn đề
5. Vòng behavior hay culture fit có thể các bạn trẻ không gặp nhiều nhưng mình cũng muốn chia sẻ để các bạn aware nó. Hãy học cách trình bày theo STAR, có khá nhiều câu hỏi sẵn để tham khảo -> Hãy google thêm chỗ này nhé -> Mình thấy các cty top đầu đều đánh giá vòng này khá nghiêm túc.
6. Kĩ năng deal lương: Tránh bị deal hố thì mình cần biết range lương thì đa số HR k share cho mình đâu, Mình phải chủ động tìm range lương thôi, cách 1 mà mình share là 1 cách, còn không có thể truy cập 1 số trang như NodeFlair, hoặc tham khảo trên voz cũng dc. mà lưu ý các case trên voz mình thấy khá outstanding nên chỉ tham khảo thôi nhé :)))

Tới đây mỏi tay quá, có gì mình share thêm sau :v
đọc bài của bạn lâu lâu phải ra tra từ" assume", "outstanding"..
 
Nói tới nói lui rốt cuộc ai trái ngành muốn theo it thì phải học chính quy đàng hoàng chấp nhận thi lại, chấp nhận học phí cao ngất ngưỡng, chấp nhận mất thêm 4y, học trường top mặc kệ bn bao nhiu tuổi k có bằng hẳn hỏi auto thua, thời buổi bây h xuất thân bình thường mà mất định hướng, chọn ngành nghề sai chỉ lần là xuống đáy xh
 
Sửa lần cuối:
Nói tới nói lui rốt cuộc ai trái ngành muốn theo it thì phải học chính quy đàng hoàng chấp nhận thi lại, chấp nhận học phí cao ngất ngưỡng, chấp nhận mất thêm 4y, học trường top mặc kệ bn bao nhiu tuổi k có bằng hẳn hỏi auto thua, thời buổi bây h xuất thân bình thường mà mất định hướng, chọn ngành nghề sai chỉ lần là xuống đáy xh
chính xác rồi đó bạn, thời nay đất chật người đông, nên để nổi bật hơn đám đông thì phải giỏi và môi trường học đại học là cực kỳ quan trọng để giúp cho làm quen với nhiều người giỏi hơn.
 
[Các môn học cần thiết cho ngành CNTT khi học ở Đại học]

Chào các bạn trẻ, mình lập trình viên U40, có vài chia sẻ về các môn học mình thấy cần thiết khi đi học Đại học mà các bạn có thể tham khảo khi bước vào năm 1. Lúc trước mình đi học Đại học ngành CNTT thì nhà trường đưa cho 1 quyển danh sách các môn học và mình không biết môn học nào cần thiết để học cả, nên mình học nhiều nhất có thể, nhưng thật ra thì như vậy không phải là điều tốt để giúp các bạn có thể tốt nghiệp sớm và có kinh nghiệm thực tế để được tuyển dụng.

Không có khái niệm "đào tạo lại" sau khi bạn tốt nghiệp ở các công ty. Trái lại bạn sẽ phải học rất nhanh và rất nhiều trong thời gian ngắn khi đi làm để hoà nhập với các công việc được giao. Vì vậy, hãy chăm chỉ học tập khi đi học, thay vì chờ đợi sau khi tốt nghiệp sẽ có công ty tuyển bạn về, dậy lại cho bạn kiến thức.

Mình sẽ liệt kê các môn học mà mình thấy quan trọng theo từng năm học, ở mỗi trường Đại học sẽ có các môn học tương tự nhau với tên gọi khác nhau.
Đại học sẽ không dậy cho bạn kỹ năng đủ tốt để có thể đi làm, nhưng sẽ dậy cho bạn các kỹ năng cần thiết và bạn học thêm để bổ sung cho các kỹ năng đó để có thể đi làm được.

1. Năm 1

Đây là lúc các bạn bắt đầu nhập học, nhiều bạn sẽ vẫn còn cảm giác vui sướng khi đã thi đỗ đại học và chưa chuẩn bị tinh thần cho việc đi học Đại học. Thực tế thì các bạn cần chuẩn bị tâm lý sẵn là khi đi học Đại học sẽ rất khác so với khi học cấp 3, khi bạn sẽ phải làm quen với những người bạn mới, cách học mới khi bạn phải tự tìm hiểu, tự tìm thông tin trên mạng, thay vì có người dậy bạn, chỉ cho bạn từng bước.

Về cơ bản thì năm 1 bạn sẽ học các môn đại cương không liên quan đến ngành CNTT như Toán, Lý, Hoá, các môn xã hội học bắt buộc. Các bạn không cần tập trung thời gian vào những môn học này, đủ điểm qua môn là được và tập trung chính vào học thật tốt.

Tiếng Anh là yêu cầu bắt buộc và các bạn ngoài học trên trường, cần học tiếng Anh ở nhà, ở trung tâm nếu có điều kiện, chủ yếu là nâng cao kỹ năng đọc hiểu trước, sau đó là kỹ năng giao tiếp.

- Ngôn ngữ lập trình đầu tiên mà chương trình dậy. Ngôn ngữ tốt nhất để học lập trình từ khi bắt đầu là Python / Javascript. Vì sao? Vì cú pháp rất đơn giản, dễ hiểu và không phải biên dịch loằng ngoằng như C++, Java. Bạn cần học thật tốt ngôn ngữ lập trình này để nắm vững các khái niệm cơ bản của lập trình như biến, vòng lặp, if else, hàm, mảng, các toán tử,...để tạo ra các chương trình cơ bản trên nền console, ví dụ tính tổng các số đầu vào và in kết quả ra 1 file.

- Tiếp theo là 1 ngôn ngữ lập trình hướng đối tượng. Trước đây trường mình dậy C++ là ngôn ngữ lập trình bắt đầu cho sinh viên và dậy trong 2 kỳ. Mình thấy đây là điều không tốt vì C++ là ngôn ngữ lập trình khó cho người mới học, đặc biệt là với khái niệm tham chiếu và con trỏ, nó quá phức tạp. Ngôn ngữ lập trình hướng đối tượng mình thấy tốt nhất là Java vì cú pháp rõ ràng, rất nhiều tài liệu để học. Sau khi học xong lập trình hướng đối tượng thì bạn phải nắm vững 4 tính chất: đóng gói, kế thừa, đa hình, trừu tượng, phân biệt rõ khi nào dùng abstract class, khi nào dùng Interface, biết cách tạo ra các class với các thuộc tính, các phương thức phù hợp.

Tóm lại, năm 1 học xong bạn phải biết 1 ngôn ngữ lập trinh dạng script như Python/Javascript và 1 ngôn ngữ lập trình hướng đối tượng như Java/C#.

2. Năm 2

Trong năm thứ 2, thì bạn sẽ tiếp tục học các môn Toán, Lý, Hóa và các môn xã hội bắt buộc và các bạn cũng chỉ cần đủ điểm để qua môn. Năm này thì cái các bạn cần tập trung nhất là về:

- Toán rời rạc: đây là môn Toán cần thiết nhất cho sinh viên ngành CNTT khi dậy về logic, đồ thị,...

- Cấu trúc dữ liệu và giải thuật: đây là môn học vô cùng quan trọng với các bạn làm lập trình, khi các bạn sẽ học các thuật toán như sắp xếp, xử lý chuỗi, thuật toán cây, duyệt đồ thị,...Các kiến thức của môn học này sẽ được sử dụng rất nhiều (đặc biệt là xử lý chuỗi) sau này và các thuật toán sắp xếp sẽ được hỏi thường xuyên khi phỏng vấn.

- Cơ sở dữ liệu: đây là môn học vô cùng quan trọng vì mọi phần mềm đều cần có chỗ lưu và xử lý dữ liệu tối ưu. Học xong môn này bạn sẽ nắm rõ 1 cơ sở dữ liệu quan hệ phổ biến như MySQL, Microsoft SQL. Nếu bạn học thêm được NoSQL nữa thì tốt.

Tóm lại, năm 2 học xong bạn phải biết về thuật toán và cách cài đặt 1 số thuật toán cơ bản để giải quyết các bài toán phổ biến như sắp xếp danh sách, duyệt đồ thị, duyệt cây. Phải có khả năng sử dụng ngôn ngữ truy vấn SQL để truy vấn cơ sở dữ liệu.

3. Năm 3

Đây là năm quan trọng nhất trong quãng đường đi học Đại học của các bạn vì sự phân biệt rõ ràng giữa bạn nào học tốt và không tốt sẽ bắt đầu từ đây. Các bạn nào đã có nền tảng tốt về lập trình hướng đối tượng, cơ sở dữ liệu, thuật toán thì sẽ bắt đầu chọn hướng mà bạn muốn học để sau đi thực tập và có công việc làm theo ngành bạn muốn. Các môn học trong năm này sẽ chủ yếu là các môn học chuyên ngành, bạn sẽ chọn các môn học mà phù hợp nhất với mảng CNTT mà bạn muốn theo đuổi.

Nếu là theo hướng làm lập trình thì bạn sẽ chọn các môn học liên quan đến:

- Hệ điều hành: nắm được khái niệm cơ bản về hệ điều hành của máy tính

- Mạng máy tính: nắm được khái niệm cơ bản về mạng và truyền dữ liệu

- Công nghệ phần mềm: nắm được các khái niệm về quy trình phát triển phần mềm

- Kiểm thử và đảm bảo chất lượng phần mềm: học cách test phần mềm để có ít lỗi nhất

- Phân tích thiết kế hướng đối tượng: học cách viết tài liệu để xây dựng nên 1 hệ thống phần mềm

- Lập trình web: môn học bắt buộc để bạn có kiến thức lập trình Frontend (HTML, CSS, Javascript) và Backend (PHP, Java, C#, Javascript).
Mục tiêu là bạn học cách sử dụng 1 Framework ở Frontend cho Javascript và 1 Framework ở Backend. Đây là điều khó để học vì quá nhiều kiến thức mới để lập trình được 1 Website, nhưng việc học kiến thức cơ bản và có kinh nghiệm về Framework sẽ giúp bạn có công việc thực tập trong năm 3.

- Lập trình di động: nếu bạn thích theo hướng phát triển ứng dụng di động, theo hướng Frontend.


Mục tiêu là các bạn có những sản phẩm dự án đầu tiên do bạn tự làm và đưa code lên github cá nhân. Thời gian còn lại thì bạn có thể phát triển thêm các projects để đưa lên github của bạn, quan trọng nhất là bạn biết sử dụng Framework ở Frontend và Backend tuỳ theo ngôn ngữ mà bạn chọn để phát triển.

Tóm lại, nếu bạn nào giỏi thì đầu năm 3, khá thì từ giữa năm 3 đã có thể đi thực tập sau khi hoàn thành môn học lập trình Web hoặc lập trình di động.
Các bạn nên chọn các công ty lớn có chính sách đào tạo chuẩn chỉ, dù là làm thực tập không lương, cái này hơn rất nhiều so với việc bạn được trả vài triệu nhưng không học được gì.

4. Năm 4

Năm này thì bạn chủ yếu học thêm 1 số môn học chuyên ngành ít quan trọng còn lại, học cải thiện điểm các môn học nếu bạn muốn nếu điểm tổng kết quá thấp (mình thấy là các bạn chỉ cần cố gắng loại khá là được, không cần phải cố gắng học giỏi các môn để có điểm cao, nếu bạn chỉ có mong muốn đi làm sau khi tốt nghiệp). Nếu thấy kiến thức còn hổng hoặc có kỹ năng nào đó bạn muốn học thêm mà không có thời gian thì việc bỏ tiền đi học thêm các khoá học ở các trung tâm uy tín là lựa chọn tốt để tăng cơ hội tìm việc sau khi bạn tốt nghiệp.

Quan trọng nhất là trong năm này, bạn sẽ cần phải làm đồ án tốt nghiệp và hướng đến là xây dựng 1 hệ thống phần mềm tương đối lớn, có áp dụng nhiều kỹ năng lập trình nâng cao, công nghệ mới, áp dụng càng nhiều càng tốt. Các bạn đi thực tập bên ngoài sẽ có cơ hội áp dụng những kiến thức nhà truờng không dậy để mang vào đồ án tốt nghiệp.

Ngoài ra, thì lúc này bạn đang đi thực tập nên thời gian sẽ rất ít để làm đồ án, vì vậy, nếu bạn thấy khó cân được cả 2 thì có thể nghỉ thực tập, tập trung vài tháng để phát triển đồ án, còn nếu giỏi thì ngày đi thực tập, tối về cầy đồ án.

Mục tiêu là trong năm 4, bạn phải tốt nghiệp đúng hạn và điểm loại khá trở lên, đặc biệt điểm đồ án tốt nghiệp phải cố gắng để cao nhất.

5. Tổng kết

Trước đây mình có mắc sai lầm là chỉ chăm vào học cho điểm số tốt vì mình e ngại do mình học trường tư, chất lượng trung bình nên sau này không được ưu tiên tuyển dụng. Nhưng mà mình đã sai vì thực tế bằng đại học chỉ giúp bạn vượt qua vòng CV, còn phỏng vấn để được tuyển hay không là do việc bạn có khả năng thuật toán đến đâu, kinh nghiệm làm việc với các công nghệ các công ty đang sử dụng ra sao. Muốn biết các công ty cần gì thì bạn chỉ cần vào các trang tuyển dụng như itviec, topdev mà tìm tên công ty và các kỹ năng họ yêu cầu.

Nếu bạn bắt đầu đi thực tập từ giữa năm thứ 3 thì đến khi tốt nghiệp, bạn đã có hơn 1 năm kinh nghiệm + kinh nghiệm làm với các Framework các công ty đang sử dụng thì đây là điểm mạnh nhất của bạn (trong phần lớn vị trí tuyển dụng làm lập trình viên) so với CV của các bạn khác, có điểm số tốt hơn nhưng lại chưa có kinh nghiệm thực tế.

Ngoài ra, bạn cần có 1 thái độ chăm chỉ, chịu khó, không ngại khi làm những gì mà bạn chưa được học, vui vẻ, hoà đồng với mọi người, mở rộng nhiều kết nối với các anh chị đi trước sẽ là điểm cộng để giúp bạn có vị trí thực tập và tìm công viêc sau này.
 
Thực chiến nhiều vào, đừng đợi thầy cô, công ty giao việc mới tìm hiểu. Làm cái gì cũng được, miễn là làm.
Tôi duyệt CV mấy ứng viên phần nhiều liệt kê dự án khủng vãi, cuối cùng lúc phỏng vấn thì toàn làm 1 tính năng nhỏ, có khi không liên quan đến chức năng chính của dự án, hay tệ hơn là đi sửa lỗi chứ không được làm tính năng luôn.
 
[Các môn học cần thiết cho ngành CNTT khi học ở Đại học]

Chào các bạn trẻ, mình lập trình viên U40, có vài chia sẻ về các môn học mình thấy cần thiết khi đi học Đại học mà các bạn có thể tham khảo khi bước vào năm 1. Lúc trước mình đi học Đại học ngành CNTT thì nhà trường đưa cho 1 quyển danh sách các môn học và mình không biết môn học nào cần thiết để học cả, nên mình học nhiều nhất có thể, nhưng thật ra thì như vậy không phải là điều tốt để giúp các bạn có thể tốt nghiệp sớm và có kinh nghiệm thực tế để được tuyển dụng.

Không có khái niệm "đào tạo lại" sau khi bạn tốt nghiệp ở các công ty. Trái lại bạn sẽ phải học rất nhanh và rất nhiều trong thời gian ngắn khi đi làm để hoà nhập với các công việc được giao. Vì vậy, hãy chăm chỉ học tập khi đi học, thay vì chờ đợi sau khi tốt nghiệp sẽ có công ty tuyển bạn về, dậy lại cho bạn kiến thức.

Mình sẽ liệt kê các môn học mà mình thấy quan trọng theo từng năm học, ở mỗi trường Đại học sẽ có các môn học tương tự nhau với tên gọi khác nhau.
Đại học sẽ không dậy cho bạn kỹ năng đủ tốt để có thể đi làm, nhưng sẽ dậy cho bạn các kỹ năng cần thiết và bạn học thêm để bổ sung cho các kỹ năng đó để có thể đi làm được.

1. Năm 1

Đây là lúc các bạn bắt đầu nhập học, nhiều bạn sẽ vẫn còn cảm giác vui sướng khi đã thi đỗ đại học và chưa chuẩn bị tinh thần cho việc đi học Đại học. Thực tế thì các bạn cần chuẩn bị tâm lý sẵn là khi đi học Đại học sẽ rất khác so với khi học cấp 3, khi bạn sẽ phải làm quen với những người bạn mới, cách học mới khi bạn phải tự tìm hiểu, tự tìm thông tin trên mạng, thay vì có người dậy bạn, chỉ cho bạn từng bước.

Về cơ bản thì năm 1 bạn sẽ học các môn đại cương không liên quan đến ngành CNTT như Toán, Lý, Hoá, các môn xã hội học bắt buộc. Các bạn không cần tập trung thời gian vào những môn học này, đủ điểm qua môn là được và tập trung chính vào học thật tốt.

Tiếng Anh là yêu cầu bắt buộc và các bạn ngoài học trên trường, cần học tiếng Anh ở nhà, ở trung tâm nếu có điều kiện, chủ yếu là nâng cao kỹ năng đọc hiểu trước, sau đó là kỹ năng giao tiếp.

- Ngôn ngữ lập trình đầu tiên mà chương trình dậy. Ngôn ngữ tốt nhất để học lập trình từ khi bắt đầu là Python / Javascript. Vì sao? Vì cú pháp rất đơn giản, dễ hiểu và không phải biên dịch loằng ngoằng như C++, Java. Bạn cần học thật tốt ngôn ngữ lập trình này để nắm vững các khái niệm cơ bản của lập trình như biến, vòng lặp, if else, hàm, mảng, các toán tử,...để tạo ra các chương trình cơ bản trên nền console, ví dụ tính tổng các số đầu vào và in kết quả ra 1 file.

- Tiếp theo là 1 ngôn ngữ lập trình hướng đối tượng. Trước đây trường mình dậy C++ là ngôn ngữ lập trình bắt đầu cho sinh viên và dậy trong 2 kỳ. Mình thấy đây là điều không tốt vì C++ là ngôn ngữ lập trình khó cho người mới học, đặc biệt là với khái niệm tham chiếu và con trỏ, nó quá phức tạp. Ngôn ngữ lập trình hướng đối tượng mình thấy tốt nhất là Java vì cú pháp rõ ràng, rất nhiều tài liệu để học. Sau khi học xong lập trình hướng đối tượng thì bạn phải nắm vững 4 tính chất: đóng gói, kế thừa, đa hình, trừu tượng, phân biệt rõ khi nào dùng abstract class, khi nào dùng Interface, biết cách tạo ra các class với các thuộc tính, các phương thức phù hợp.

Tóm lại, năm 1 học xong bạn phải biết 1 ngôn ngữ lập trinh dạng script như Python/Javascript và 1 ngôn ngữ lập trình hướng đối tượng như Java/C#.

2. Năm 2

Trong năm thứ 2, thì bạn sẽ tiếp tục học các môn Toán, Lý, Hóa và các môn xã hội bắt buộc và các bạn cũng chỉ cần đủ điểm để qua môn. Năm này thì cái các bạn cần tập trung nhất là về:

- Toán rời rạc: đây là môn Toán cần thiết nhất cho sinh viên ngành CNTT khi dậy về logic, đồ thị,...

- Cấu trúc dữ liệu và giải thuật: đây là môn học vô cùng quan trọng với các bạn làm lập trình, khi các bạn sẽ học các thuật toán như sắp xếp, xử lý chuỗi, thuật toán cây, duyệt đồ thị,...Các kiến thức của môn học này sẽ được sử dụng rất nhiều (đặc biệt là xử lý chuỗi) sau này và các thuật toán sắp xếp sẽ được hỏi thường xuyên khi phỏng vấn.

- Cơ sở dữ liệu: đây là môn học vô cùng quan trọng vì mọi phần mềm đều cần có chỗ lưu và xử lý dữ liệu tối ưu. Học xong môn này bạn sẽ nắm rõ 1 cơ sở dữ liệu quan hệ phổ biến như MySQL, Microsoft SQL. Nếu bạn học thêm được NoSQL nữa thì tốt.

Tóm lại, năm 2 học xong bạn phải biết về thuật toán và cách cài đặt 1 số thuật toán cơ bản để giải quyết các bài toán phổ biến như sắp xếp danh sách, duyệt đồ thị, duyệt cây. Phải có khả năng sử dụng ngôn ngữ truy vấn SQL để truy vấn cơ sở dữ liệu.

3. Năm 3

Đây là năm quan trọng nhất trong quãng đường đi học Đại học của các bạn vì sự phân biệt rõ ràng giữa bạn nào học tốt và không tốt sẽ bắt đầu từ đây. Các bạn nào đã có nền tảng tốt về lập trình hướng đối tượng, cơ sở dữ liệu, thuật toán thì sẽ bắt đầu chọn hướng mà bạn muốn học để sau đi thực tập và có công việc làm theo ngành bạn muốn. Các môn học trong năm này sẽ chủ yếu là các môn học chuyên ngành, bạn sẽ chọn các môn học mà phù hợp nhất với mảng CNTT mà bạn muốn theo đuổi.

Nếu là theo hướng làm lập trình thì bạn sẽ chọn các môn học liên quan đến:

- Hệ điều hành: nắm được khái niệm cơ bản về hệ điều hành của máy tính

- Mạng máy tính: nắm được khái niệm cơ bản về mạng và truyền dữ liệu

- Công nghệ phần mềm: nắm được các khái niệm về quy trình phát triển phần mềm

- Kiểm thử và đảm bảo chất lượng phần mềm: học cách test phần mềm để có ít lỗi nhất

- Phân tích thiết kế hướng đối tượng: học cách viết tài liệu để xây dựng nên 1 hệ thống phần mềm

- Lập trình web: môn học bắt buộc để bạn có kiến thức lập trình Frontend (HTML, CSS, Javascript) và Backend (PHP, Java, C#, Javascript).
Mục tiêu là bạn học cách sử dụng 1 Framework ở Frontend cho Javascript và 1 Framework ở Backend. Đây là điều khó để học vì quá nhiều kiến thức mới để lập trình được 1 Website, nhưng việc học kiến thức cơ bản và có kinh nghiệm về Framework sẽ giúp bạn có công việc thực tập trong năm 3.

- Lập trình di động: nếu bạn thích theo hướng phát triển ứng dụng di động, theo hướng Frontend.


Mục tiêu là các bạn có những sản phẩm dự án đầu tiên do bạn tự làm và đưa code lên github cá nhân. Thời gian còn lại thì bạn có thể phát triển thêm các projects để đưa lên github của bạn, quan trọng nhất là bạn biết sử dụng Framework ở Frontend và Backend tuỳ theo ngôn ngữ mà bạn chọn để phát triển.

Tóm lại, nếu bạn nào giỏi thì đầu năm 3, khá thì từ giữa năm 3 đã có thể đi thực tập sau khi hoàn thành môn học lập trình Web hoặc lập trình di động.
Các bạn nên chọn các công ty lớn có chính sách đào tạo chuẩn chỉ, dù là làm thực tập không lương, cái này hơn rất nhiều so với việc bạn được trả vài triệu nhưng không học được gì.

4. Năm 4

Năm này thì bạn chủ yếu học thêm 1 số môn học chuyên ngành ít quan trọng còn lại, học cải thiện điểm các môn học nếu bạn muốn nếu điểm tổng kết quá thấp (mình thấy là các bạn chỉ cần cố gắng loại khá là được, không cần phải cố gắng học giỏi các môn để có điểm cao, nếu bạn chỉ có mong muốn đi làm sau khi tốt nghiệp). Nếu thấy kiến thức còn hổng hoặc có kỹ năng nào đó bạn muốn học thêm mà không có thời gian thì việc bỏ tiền đi học thêm các khoá học ở các trung tâm uy tín là lựa chọn tốt để tăng cơ hội tìm việc sau khi bạn tốt nghiệp.

Quan trọng nhất là trong năm này, bạn sẽ cần phải làm đồ án tốt nghiệp và hướng đến là xây dựng 1 hệ thống phần mềm tương đối lớn, có áp dụng nhiều kỹ năng lập trình nâng cao, công nghệ mới, áp dụng càng nhiều càng tốt. Các bạn đi thực tập bên ngoài sẽ có cơ hội áp dụng những kiến thức nhà truờng không dậy để mang vào đồ án tốt nghiệp.

Ngoài ra, thì lúc này bạn đang đi thực tập nên thời gian sẽ rất ít để làm đồ án, vì vậy, nếu bạn thấy khó cân được cả 2 thì có thể nghỉ thực tập, tập trung vài tháng để phát triển đồ án, còn nếu giỏi thì ngày đi thực tập, tối về cầy đồ án.

Mục tiêu là trong năm 4, bạn phải tốt nghiệp đúng hạn và điểm loại khá trở lên, đặc biệt điểm đồ án tốt nghiệp phải cố gắng để cao nhất.

5. Tổng kết

Trước đây mình có mắc sai lầm là chỉ chăm vào học cho điểm số tốt vì mình e ngại do mình học trường tư, chất lượng trung bình nên sau này không được ưu tiên tuyển dụng. Nhưng mà mình đã sai vì thực tế bằng đại học chỉ giúp bạn vượt qua vòng CV, còn phỏng vấn để được tuyển hay không là do việc bạn có khả năng thuật toán đến đâu, kinh nghiệm làm việc với các công nghệ các công ty đang sử dụng ra sao. Muốn biết các công ty cần gì thì bạn chỉ cần vào các trang tuyển dụng như itviec, topdev mà tìm tên công ty và các kỹ năng họ yêu cầu.

Nếu bạn bắt đầu đi thực tập từ giữa năm thứ 3 thì đến khi tốt nghiệp, bạn đã có hơn 1 năm kinh nghiệm + kinh nghiệm làm với các Framework các công ty đang sử dụng thì đây là điểm mạnh nhất của bạn (trong phần lớn vị trí tuyển dụng làm lập trình viên) so với CV của các bạn khác, có điểm số tốt hơn nhưng lại chưa có kinh nghiệm thực tế.

Ngoài ra, bạn cần có 1 thái độ chăm chỉ, chịu khó, không ngại khi làm những gì mà bạn chưa được học, vui vẻ, hoà đồng với mọi người, mở rộng nhiều kết nối với các anh chị đi trước sẽ là điểm cộng để giúp bạn có vị trí thực tập và tìm công viêc sau này.
Cảm ơn những chia sẻ của bác.
Bác cho em hỏi em đã đỗ sớm IT. Bây giờ em đang cày thêm Tiếng Anh hàng ngày và muốn học sơ về C/C++
Mà em search để lên lộ trình về C/C++ thì thấy nhiều người bảo trước khi học 1 ngôn ngữ nào đó phải học nền các môn: Kiến trúc máy tính, Hệ điều hành, Mạng mt, CSDL,...
Nhưng em lại thấy học kĩ mấy môn đó xong thì cũng phải mất kha khá tgian mà mốt lên ĐH cũng học lại. Vậy theo bác em nên học những môn trên rồi vô C/C++ hay em nên vô thẳng C/C++ vậy ạ.
Em cảm ơn bác
 
Cảm ơn những chia sẻ của bác.
Bác cho em hỏi em đã đỗ sớm IT. Bây giờ em đang cày thêm Tiếng Anh hàng ngày và muốn học sơ về C/C++
Mà em search để lên lộ trình về C/C++ thì thấy nhiều người bảo trước khi học 1 ngôn ngữ nào đó phải học nền các môn: Kiến trúc máy tính, Hệ điều hành, Mạng mt, CSDL,...
Nhưng em lại thấy học kĩ mấy môn đó xong thì cũng phải mất kha khá tgian mà mốt lên ĐH cũng học lại. Vậy theo bác em nên học những môn trên rồi vô C/C++ hay em nên vô thẳng C/C++ vậy ạ.
Em cảm ơn bác
Học ngôn ngữ lập trình không cần phải học bất kỳ các môn học gì mà "mọi người" nói cho em đâu. Em chỉ cần biết gõ 10 ngón thế là được rồi.
Thay vì học C/C++ em học ngôn ngữ Python trước vì nó dễ học hơn nhiều, sau vào trường Đại học nếu họ dậy C/C++ thì em sẽ học sau, nhưng lúc đó đã có nền tảng cơ bản về lập trình rồi.
 
Thực chiến nhiều vào, đừng đợi thầy cô, công ty giao việc mới tìm hiểu. Làm cái gì cũng được, miễn là làm.
Tôi duyệt CV mấy ứng viên phần nhiều liệt kê dự án khủng vãi, cuối cùng lúc phỏng vấn thì toàn làm 1 tính năng nhỏ, có khi không liên quan đến chức năng chính của dự án, hay tệ hơn là đi sửa lỗi chứ không được làm tính năng luôn.
Hoàn toàn đồng ý với bạn, cũng không cần phải tự làm gì quá nhiều, dành thời gian gõ code lại từ những bài học trên mạng và thay đổi 1 chút theo ý hiểu cũng rất tốt rồi.
 

Thống kê chủ đề

Ngày tạo
laptrinhvienu40,
Người trả lời cuối
jesus dev,
Trả lời
148
Lượt xem
34.660
Quay lại
Lên đầu trang