Bạn đang tìm đến nghề lập trình vì nghe đồn rằng nghề này rất giàu, kiếm được nhiều tiền hoặc nghề này rất hot, nhu cầu tuyển dụng cao hay thậm chí ai đó nói về lập trình viên là những người rất giỏi Toán, IQ cao... Đó là những hiểu sai phổ biến nhất về nghề lập trình.
Thậm chí nếu bạn đang có ý định dấn thân mảng lập trình hay đã bắt đầu lập trình nhưng vẫn hoài nghi năng lực bản thân, về tương lai của nghề lập trình thì hãy cứ xem tiếp nha.
Những hiểu sai phổ biến của nghề lập trình
Lập trình cần IQ cao và giỏi Toán (Khối A: Toán, Lý, Hoá)
Theo một số tài liệu và bài viết mình tham khảo, Software Engineer (kỹ sư phần mềm) có trung bình IQ là 100-110, thất nhất là 93 và cao nhất là 129. Một số vị trí đặc thù như Computer Science (nhà khoa học máy tính) hoặc Data Science (nhà khoa học dữ liệu) thì có IQ khoảng 130, họ là những người trong top 2% thông minh nhất hành tinh. Tuy nhiên hầu hết ở độ tuổi trưởng thành, trên 18 tuổi, có trung bình IQ khoảng 103.
Bên cạnh đó là kỹ năng Toán học (thậm chí là khối A: Toán, Lý, Hoá). Ở thời điểm mình viết bài này, hầu hết các trường đại học có ngành "kỹ sư phần mềm" đều yêu cầu khối A. Trên thực tế là một lập trình viên hay kỹ sư phầm mềm, bạn hiếm khi dùng đến kiến thức Toán cao cấp cũng như Lý và Hoá. Ngoại trừ việc bạn phát triển những phần mềm có liên quan như lập trình Game (sẽ cần kiến thức Vật Lý và Toán).
Như vậy chúng ta có thể thấy rằng bất kỳ một người bình thường nào cũng có thể theo đuổi, học và làm tốt nghề lập trình.
Lập trình là nghề hái ra rất nhiều tiền
Dạo thời gian gần đây, các phương tiện báo đài truyền thông việc các kỹ sư phần mềm kiếm được rất nhiều tiền, mua được nhà và siêu xe. Theo mình thì đây cách truyền thông "một nửa sự thật" và có thể gây hiểu nhầm.
Bản chất nếu bạn thực sự giỏi trong một lĩnh vực bất kì, bạn đều có thể có thu nhập rất cao. Những bạn lập trình có thu nhập hàng trăm triệu mỗi tháng là những người top (5-10%) trong ngành, phần còn lại cũng bình thường như bao nghề khác.
Bên cạnh đó chúng ta cần hiểu nghề lập trình là lao động trí óc, cần kỹ năng và chuyên môn đặc thù. Các lập trình viên thường sống và làm việc trong áp lực công việc cao. Thu nhập cao đi đôi với trách nhiệm lớn. Việc chọn nghề lập trình không hiển nhiên là chúng ta sẽ giàu có.
Sự thiếu hụt trầm trọng nhân lực lập trình trên thị trường
Sự thiếu hụt nhân sự kỹ sư phần mềm hay lập trình viên là đúng nhưng chưa đủ. Thực ra chỉ thiếu nhân sự "được việc" và "phù hợp" chứ không thiếu người biết làm. Chỉ với 3-6 tháng bạn có thể lập trình được ở mức độ cơ bản dù cho khởi đầu bạn không biết gì. Nhưng để thành công trong nghề này, bạn sẽ cần vô lượng thời gian, nó tuỳ vào: khả năng, đam mê và động lực cũng như nhân duyên của mỗi người.
Hẵn là chúng ta cũng thường nghe về tỉ lệ thất nghiệp sau đại học của các bạn chọn nghề lập trình cũng lớn không kém. Theo Tuổi Trẻ, trong số hơn 55.000 sinh viên công nghệ thông tin (CNTT) tốt nghiệp mỗi năm, chỉ có khoảng 16.500 sinh viên (30%) đáp ứng được những kỹ năng và chuyên môn mà doanh nghiệp cần. Thống kê này chưa tính các trung tâm đào tạo lập trình viên và các bạn học trái nghành tự học lập trình.
Như vậy chúng ta cần hiểu đầy đủ rằng nhân lực thiếu hụt trên thị trường nhưng vẫn rất cạnh tranh. Việc học lập trình không hiển nhiên là sẽ có việc làm. Bạn cần phải học tốt và nỗ lực nghiêm túc.
Nghề lập trình có sự đào thải cao và thay đổi nhanh chóng
Dưới thời địa kỷ nguyên số, công nghệ phát triển rất nhanh. Chúng len lỏi vào mọi ngóc ngách nhu cầu cuộc sống. Nếu trước kia bạn phải tìm một chiếc máy tính để bàn mới có thể làm việc được thì ngày nay chúng ta có những chiếc máy tính bảng, điện thoại thông minh vẫn đủ sức giải quyết công việc hàng ngày. Bên cạnh đó là nhu cầu giải trí, giao tiếp mạng xã hội, điều khiển thiết bị trong nhà,... Tất cả những mảng này đều cần lập trình.
Những công nghệ đáp ứng các nhu cầu lập trình từ đó cũng thay đổi và cập nhật nhanh chóng. Những ngôn ngữ mới, những nền tảng lập trình mới hay công cụ phát triển phần mềm mới đua nhau ra đời. Vì thế, bạn sẽ không phải học một lần rồi đi làm là hết, nó cần bạn phải học liên tục qua thời gian.
Vì thế khi chọn ngành này, các bạn cần xác định rõ lý do bạn chọn nó. Nếu các bạn chọn đơn giản là ngoài máy tính ra bạn không biết những cái khác hay vì thu nhập cao thì hãy cân nhắc kỹ. Có thể bạn còn những thiên phú khác hay những sở thích mà bản thân bạn chưa kịp khám phá ra. Đừng lo, ai cũng có, vì hầu hết mọi người sẽ hiểu người khác hơn chính bản thân mình.
Việc không rõ những điều trên có thể khiến cho con đường sự nghiệp của bạn gặp rất nhiều khó khăn, hệ quả là không "thiết kế được cuộc đời mà bạn mong muốn".
Bắt đầu học lập trình như thế nào để hiệu quả?
Có nhiều cách tiếp cận và tự học lập trình, tuy nhiên mình sẽ kể lại câu chuyện của chính bản thân mình nhé. Biết đâu bạn cũng đã hoặc đang giống mình ngày xưa thì sao!
Ngày xưa mình rất mê game. Vì tò mò game hoạt động thế nào, và vì muốn làm website để tải nhạc game Audition mà mình đã vô tình tìm tới nghề này. Nó là công cụ để mình làm được những thứ mình cần. Đây là động lực chính khiến mình say mê lập trình từ sớm, có thể là một may mắn với bản thân mình.
Mình đã bắt đầu với với HTML, một ngôn ngữ để hiển thị các nội dung trên website. Khi đó mình viết một dòng code mà cho chữ nó chạy qua chạy lại. Thật ra nó đơn giản là vầy:
<marquee>Viet</marquee>
Mình ngỡ như đã trở thành một hacker có thể làm được mọi thứ. Và đương nhiên là để tiến đến mục tiêu làm website phát nhạc Audition mình đã phải dành rất rất nhiều thời gian, công sức nữa. Nhưng giả định nếu ngày đó mình chỉ học lập trình với mục tiêu là nộp đơn đi làm và giàu sang thì rõ ràng mình cũng không biết là nên học cái gì cho đủ. Vì lập trình rất rất rộng lớn, không ai có thể biết được tất cả mọi thứ trong nghề này.
Hiện tại, nghề lập trình đã phát triển rất nhiều, phần lớn cũng đã phổ cập cho nhiều người biết đến hơn. Chúng ta cũng sử dụng nhiều sản phẩm công nghệ hơn nên hẳn là các bạn sẽ thích một vài trong số chúng. Song cũng là một trở ngại vì rất nhiều bạn cũng không biết nên lập trình cho mảng nào, cho cái gì và sản phẩm làm ra sẽ thế nào.
Lời khuyên của mình là bạn hãy chọn một mảng hoặc một sản phẩm (app, game) mà bạn quan tâm nhất để bắt đầu.
Đừng vội khi mới học lập trình
Khi mới bắt đầu có thể các bạn sẽ mong muốn rất nhiều thứ. Nào là kiến trúc ứng dụng, hiệu năng cao, tư duy lập trình, thuật toán, clean code,... bên cạnh việc muốn trở thành full stack làm A-Z,... Những điều đó vẫn là một thử thách lớn thậm chí với những người đã làm lâu năm.
Cái sự học có một quy luật bất biến: muốn giải bài toán lớn thì các bạn phải giải qua những bài toán nhỏ. Thay vì muốn một bước lên mây, các bạn cần tìm lấy cho mình lộ trình phù hợp rồi bước từng bước nhỏ. Khi bước lên thì vững vàng chứ đừng bước lùi lại... Cứ như thế sau một thời gian bạn đã ở một đỉnh cao mà rất nhiều người vẫn nhìn bạn ở vạch xuất phát.
Theo kinh nghiệm cá nhân của mình, các bạn có thể bắt đầu với ngôn ngữ Javascript hoặc Python để có được nền tảng đủ tốt và đủ dùng cho nhiều hướng đi khác nhau. Sau một thời gian, bạn có thể chọn tiếp nên chuyên sâu mảng nào. Lựa chọn này là của riêng bạn, dựa trên sở thích, đam mê, nhu cầu và "nhân duyên" như mình đã nói. Hãy hạnh phúc với lựa chọn của mình!
Chúc các bạn sớm tìm được hành trình thành công với nghề. Có thể đích đến mỗi người là khác nhau nhưng hành trình luôn là sự thú vị.
Các thống kê tham khảo trong bài viết
Việt Trần
Yêu thích tìm hiểu các công nghệ cốt lõi, kỹ thuật lập trình và thích chia sẻ chúng tới cộng đồng
follow me :
Bài viết liên quan
Apple lên tiếng về AI: Chúng ta có đang đánh giá quá cao Trí tuệ của nó?
Nov 21, 2024 • 8 min read
Whisper AI là gì? Công cụ chuyển giọng nói thành văn bản của Open AI
Oct 17, 2024 • 8 min read
Cursor AI là gì? Hướng dẫn Sử dụng Cursor AI cơ bản
Sep 16, 2024 • 13 min read
IDE là gì? Những công cụ IDE phổ biến nhất hiện nay
Aug 22, 2024 • 11 min read
Cookies là gì? Cookies được sử dụng như thế nào?
Aug 12, 2024 • 9 min read
SDLC là gì? Các mô hình Software Development Life Cycle phổ biến
Jul 13, 2024 • 27 min read