Những lầm tưởng về lập trình viên Ấn Độ

Bài viết được dịch từ blog Avinashsingh

Lời bàn của Vinacode:

Ở Việt Nam thì bất cứ ai làm công việc lập trình thì đều gọi chung là lập trình viên (mặc dù có thể là tự học, học các khóa ngắn hạn, tốt nghiệp đại học 5 năm, Thạc sĩ,…). Trong bài viết này thì tác giả đã chia người làm phần mềm ra làm 2 loại: loại thứ nhất là programmer (lập trình viên, thường là kỹ sư phần mềm) và loại thứ hai là coder (dạng chỉ viết code thuần túy, thường là tốt nghiệp các khóa ngắn hạn như NIIT, APTECH…).

Như chúng ta đều đã biết, việc gia công phần mềm không có gì là xấu. Nhưng nếu các doanh nghiệp chỉ chăm chăm vào làm outsource mà không quan tâm đến khâu R&D để phát triển sản phẩm cho riêng mình, thì trong tương lai dài hạn các lợi thế cạnh tranh như (nhân công giá rẻ, dân số vàng…) sẽ qua đi. Hơn nữa, người lao động cũng dần trở nên nhàm chán vì công việc không có sự sáng tạo. Bài viết sau đây cho ta thấy bài học từ nền công nghiệp gia công phần mềm của Ấn Độ, người Ấn đi trước chúng ta và dường như đã gặp phải ngưỡng giới hạn. Còn người Việt thì sao? Người ta đang hết sức cổ vũ cho công việc làm gia công này phải không nhỉ? Hay một giấc mơ về Thung lũng Silicon viển vông nào đó?

Để bắt đầu bài viết này, mình xin trích lại một câu nói đùa đã trở nên phổ biến tại Ấn Độ là:

Bangalore có khoảng 40,000 con chó; và cũng có khoảng từng đó lập trình viên. Nếu bạn ném một hòn đá ngẫu nhiên lên không trung, thì hoặc là nó sẽ trúng vào đầu một con chó hoặc sẽ trúng đầu một lập trình viên. Trong khi con chó thì có thể có hoặc không một sợi dây (sợi xích) quanh cổ, nhưng một lập trình viên thì chắc chắn sẽ có.

Ngành công nghiệp phần mềm Việt Nam cũng định hướng làm gia công giống Ấn Độ?Do định hướng gia công nên ngành công nghiệp phần mềm Ấn Độ đang dần đi vào ngõ cụt? Người Việt nhận được bài học gì từ người Ấn?


Họ được quảng cáo là những chàng trai của lớp người thành đạt trong xã hội. Họ được trả lương rất hậu hĩnh, được xem là người thông minh và đi du lịch nước ngoài thường xuyên. Một mình họ đã làm bừng tỉnh những thành phố đang ngủ quên khác ngoài Bangalore.

Những kỹ sư phần mềm Ấn Độ ngày nay đang phải đối mặt với cuộc nổi dậy từ các nước thế giới thứ ba. Nhưng chính xác là họ đang làm cái gì? Đó là một câu hỏi khó trả lời. Tuần rồi, trong suốt hội nghị thường niên của Hiệp hội doanh nghiệp dịch vụ và phần mềm Ấn Độ (NASSCOM), không một ai thốt lên dù chỉ một lời về các lập trình viên Ấn Độ.

Trong sự kiện này, gồm các chuyên gia phần mềm từ khắp nơi trên thế giới, có tới tất cả 29 phiên để thảo luận về viễn cảnh nhằm nâng cao khả năng hoạt động của các doanh nghiệp phần mềm. Các hội đồng lựa chọn đề tài tranh luận một cách rộng rãi về các chủ đề như là quản lý sáng kiến, tăng trưởng kinh doanh và sự phức tạp của các công ty có văn phòng tại nhiều vị trí địa lý khác nhau.

Nhưng tuyệt nhiên không có điều gì đề cập đến các lập trình viên cả, những người được hình dung là lực đẩy phía sau tạo nên sự thành công của các công ty phần mềm Ấn Độ. Có lẽ bạn đã hình dung sai rồi đấy. Một vị điều hành kỳ cựu tại một hãng tư vấn toàn cầu, người đã giúp NASSCOM nghiên cứu về các báo cáo của ngành nói rằng, “Có một sự thật dễ gây tranh cãi mà các công ty phần mềm nội địa tại Ấn Độ sẽ khó chấp nhận. Đó là hầu hết nhân lực làm phần mềm tại Ấn Độ không phải là các lập trình viên (programmer), họ chỉ đơn thuần là các tay coder mà thôi”.

Trong cách nói của ngành, coder thì giống với mấy tay công nhân trong một dây chuyền sản xuất, ngược lại lập trình viên (programmer) là những kỹ sư trong nhà máy. Lập trình viên là người sử dụng bộ não, có sức tưởng tượng tuyệt vời để tạo ra nhiều thứ. Những phần mềm lớn thường có hàng triệu dòng code thì được thiết kế và phát triển bởi một nhóm các lập trình viên (programmer).

Coder thì chỉ nghe theo các chỉ dẫn để viết code, ước lượng và kiểm thử những mô-đun nhỏ trong một chương trình lớn. Một sinh viên ngành Khoa học Máy tính từ Học viện Công nghệ Mumbai sẽ được đặt vào đó nếu công việc lập trình yêu cầu ở mức độ tốt nghiệp đại học với những kiến thức về các thuật toán phức tạp và các phương thức lập trình, ngược lại coder thì chỉ yêu cầu kiến thức tốt nghiệp trung học phổ thông là đủ.

Coding là một công việc khá cơ bắp. Nó thường lặp đi lặp lại và đơn điệu. Coder hiểu rõ điều đó. Họ cảm thấy bị bế tắc trong công việc của mình. Họ đã bị rơi vào một cái bẫy khi mà người ta đã quá cường điệu và thổi phồng về ngành công nghiệp phần mềm và bây giờ khi nhận ra rằng mặc dù địa vị của họ vẫn được ca ngợi trong xã hội, nhưng về mặt trí tuệ thì họ đang lâm vào thế tiến thoái lưỡng nan.

Các công ty không đưa cho họ quyền được mua cổ phiếu ưu đãi nữa và mức lương của họ thì không tăng theo một tỷ lệ ấn tượng như đã từng được vài năm về trước.

“Không có điều gì mới để học từ công việc mà tôi đang làm ở Pune. Tôi có thể hoàn thành công việc đó chỉ với một khóa huấn luyện thậm chí ngay sau khi rời trường trung học phổ thông,” một lập trình viên 25 tuổi, người đã gia nhập công ty gia công phần mềm số một Ấn Độ là Infosys sau khi kết thúc chương trình kỹ sư tại học viện công nghệ Nagpur.

Một nhà phân tích Ấn Độ làm việc cho Microsoft nói rằng, “Giống như ngành công nghiệp chế tạo của chúng ta, ngành phần mềm Ấn Độ thì chỉ là một quy trình lớn. Điều đó nói lên một thực tế rằng chúng ta sẽ không có một sản phẩm phần mềm nội địa giống như Yahoo hoặc Google để sử dụng trong cuộc sống hàng ngày của mình.”

Các kỹ sư tốt nghiệp tại các học viện công nghệ đang cố tình tránh xa những công ty gia công phần mềm nổi tiếng tại Ấn Độ như là Infosys và TCS, mặc dù họ đưa ra lời chào mời với mức lương rất hấp dẫn. Năm ngoái, chỉ tính riêng Học viện Công nghệ Powai có 574 kỹ sư phần mềm tốt nghiệp ra trường, nhưng tốp 3 công ty phần mềm hàng đầu của Ấn Độ chỉ tuyển được có 10 người trong số đó.

Những sinh viên giỏi nhất tốt nghiêp ngành khoa học máy tính thường thích đầu quân vào các công ty của Mỹ như Google và Trilogy. Krishna Prasad tốt nghiệp từ một trường đại học tại Chennai, người mà đã từ chối lời chào mời của công ty Infosys, nói rằng: “Bài thi đầu vào của công ty TCS đúng là nực cười khi so sánh với đề thi vào công ty Trilogy. Nó nói lên cái mà các công ty phần mềm Ấn Độ đang tìm kiếm.”

Một người điều hành có thâm niên tại công ty gia công phần mềm TCS, người yêu cầu được dấu tên, đã thừa nhận rằng sự nhận thức của các coder đang dần thay đổi thậm chí ngay ở trong công ty của ông. Đó là một viễn cảnh khá ảm đạm. Ông tin rằng có rất nhiều việc cần phải làm đối với động lực kinh doanh.

Vị điều hành này là một lập trình viên có trên hai chục năm kinh nghiệm, nói rằng trong nửa cuối những năm 70 và đầu những năm 80 của thế kỷ trước, lĩnh vực phần mềm thu hút rất nhiều người giỏi từ nhiều lĩnh vực khác nhau.

Vào giữa những năm 90, những dự án onsite (cử nhân viên qua nước ngoài làm việc tận nơi khách hàng) tăng lên một cách đột ngột, các công ty phần mềm bắt đầu nhặt tất cả những kỹ sư mà đủ điều kiện để đại sứ quán Mỹ cấp Visa, những người thậm chí vừa mới tốt nghiệp đại học.

“Sau sự kiện Y2K, các công ty tại Mỹ khám phá ra lực lượng nhân công giá rẻ tại Ấn Độ, và yêu cầu nhân lực tăng vọt,” vị điều hành này nói. Hầu hết những người làm phần mềm chỉ là các tay coder. Họ hầu như giống hệt những công nhân, những người mà ngồi nhiều giờ liền để chỉ viết hết dòng code này đến dòng code khác, hoặc kiểm thử một mẩu nhỏ của chương trình.

Họ đã không phàn nàn bởi vì được trả lương và thưởng khá tốt. Nhưng giờ đây, yêu cầu cho công việc coding giảm sút và đang có một sự xáo trộn lớn.

Qua nhiều năm, do sự cải thiện của mạng truyền dữ liệu và uy tín của các doanh nghiệp Ấn Độ tăng lên, nên các dự án mà yêu cầu có một nhân công làm việc trực tiếp tại văn phòng của khách hàng, thường là ở Mỹ, đã thu hẹp lại xuống còn rất ít. Và cùng với nó là sự cần thiết có những kỹ sư đã tốt nghiệp đại học.

Những người tốt nghiệp từ các khóa học ngắn hạn cũng có thể làm công việc ngang với các kỹ sư. Hơn nữa, qua nhiều năm, các công ty phần mềm Ấn Độ đã có code của nhiều ứng dụng phổ biến như là ngân hàng, bảo hiểm và kế toán, họ đã tạo ra những thư viện code để có thể sử dụng lại.

Các công ty phần mềm hàng đầu bây giờ đang bắt đầu tuyển dụng những người tốt nghiệp các khóa học ngắn này, họ sẽ được huấn luyện thêm bên cạnh các kỹ sư và được triển khai trong cùng dự án. Vị CEO của công ty phần mềm thuộc loại lớn nhất Ấn Độ là TCS, ông S Ramadorai, đã giải thích về điều này rằng, “Công việc lập trình phần cốt lõi vẫn yêu cầu những kỹ năng chuyên môn sâu. Nhưng, có những công việc khác chúng tôi nhận thấy rằng có thể hoàn thành bởi những người tốt nghiệp các khóa học ngắn hạn.” Arvind Thakur của NIIT nói rằng, “Chúng tôi luôn xem đó là một khuynh hướng, rằng bằng cấp không phải là yếu tố quan trọng nhất trong nghề lập trình. Trong thực tế, có nhiều trường hợp những người tốt nghiệp các khóa học ngắn hạn lại làm việc còn tốt hơn cả những kỹ sư được đào tạo bài bản tại các học viện công nghệ.”

Các kỹ sư phần mềm ngày càng trở nên thất vọng. Sachin Rao, một trong những coder bế tắc trong công việc hàng ngày, và công việc không còn làm anh cảm thấy hứng thú một chút nào nữa. Anh đã nghĩ đến chuyện nghỉ việc tại Infosys nhưng lại không thể tìm thấy một “cơ hội” tốt nào, những việc mà có thể tận dụng được kinh nghiệm coding của anh.

Anh kết luận rằng cảnh ngộ của mình thì giống với một câu chuyện mà anh đã đọc hồi còn bé, câu chuyện kể về hàng ngàn con sâu bướm đang cố trèo qua một bức tường, chiều cao của bức tường đó thì chúng không biết. Chúng cứ trèo mãi, leo mãi, rớt xuống, lại bắt đầu lại, nhưng vẫn cứ tiếp tục trèo. Chúng không biết rằng cuối cùng chúng sẽ có thể bay được.

Rao không thể nhớ câu chuyện đó đã kết thúc như thế nào, nhưng cảm giác những coder của Ấn Độ ngày nay thì cũng giống hệt như những con sâu bướm đó, cứ làm cật lực theo cách của họ trong khi có nhiều cách hay hơn để vươn tới rất nhiều mục tiêu trong cuộc sống

Các bài viết liên quan:

Advertisements

15 comments on “Những lầm tưởng về lập trình viên Ấn Độ

  1. ” Trong bài viết này thì tác giả đã chia người làm phần mềm ra làm 2 loại: loại thứ nhất là programmer (lập trình viên, thường là kỹ sư phần mềm) và loại thứ hai là coder (dạng chỉ viết code thuần túy, thường là tốt nghiệp các khóa ngắn hạn như NIIT, APTECH…) ”

    ” Trong cách nói của ngành, coder thì giống với mấy tay công nhân trong một dây chuyền sản xuất, ngược lại lập trình viên (programmer) là những kỹ sư trong nhà máy. Lập trình viên là người sử dụng bộ não, có sức tưởng tượng tuyệt vời để tạo ra nhiều thứ. Những phần mềm lớn thường có hàng triệu dòng code thì được thiết kế và phát triển bởi một nhóm các lập trình viên (programmer) “.

    Không biết phải nói thế nào về bài viết này của tác giả. Có lẽ đang có 1 sự phân biệt ra các khái niệm rõ rệt chẳng hạn?
    Programmer: những con người tuyệt vời với việc sử dụng bộ não tuyệt vời, và tốt nghiệp đại học.
    Coder: Đơn thuần là coding như gõ word, kiểu như đi cuốc đất mướn vậy.

    Cố gắng học đại học để làm Programer vậy. Nghe có vẻ lý tưởng! 🙂

    • Sự thật là có hai nhóm là “progammer” và “coder” như tác giả đã đề cập. Nhưng sự khách biệt đó không hoàn toàn nằm ở việc bạn học đại học, là kỹ sư hay bạn học các khóa ngắn hạn. Thực trạng đáng buồn hơn mà bạn cần nhận thấy đó là dù bạn có học cái gì đi chăng nữa (đại học, aptech, NIIT….) thì ra trường bạn đang bị đi theo một xu thế là trở thành Coder chứ không phải một Programmer. Điều này đang rất đúng cho thị trường Việt Nam. Hiện nay, ở VN thuật ngữ “Coder” và “Programmer” đang bị đánh đồng cùng nhau!

  2. Mặc dù đọc bài viết cũng hiểu được phần nào sự khác biệt giữa programmer và coder . Nhưng em vẫn có 1 số câu hỏi: Thường là Sinh viên trường nào, ngành nào ra? (Việt Nam ) Thường có cơ hội làm việc như thế nào? Và cụ thể thì họ làm gì? 😀

  3. Em 15t, mới vào lớp 10, hiện nay em đang học C++ theo giáo trình của anh Lê Trần Đạt trên Dạy Nhau Học, và cũng đã viết được một số chương trình như ” Tính toán nhanh(có tính điểm)”, ” giải phương trình bậc 2″,… do em tự nghĩ ra và biên vào code, mặc dù chỉ chạy trên cửa sổ “đen thui” của window. Em rất thích nghề Lập trình viên và e dự định sau khi hoàn thành chương trình THPT sẽ thi vào trường ĐH Bách Khoa TPHCM, ngành CNTT nhưng trên mấy blog,diễn đàn,… nói là sinh viên ĐH bây giờ thiếu kỹ năng, công ty nước ngoài khi nhận vào phải đào tạo lại; những thú học trong trường ĐH không áp dụng vào công việc được,… Thật sự là em cũng hoang mang lắm,vì em IT là ngành nghề yêu thích của em, là ước mơ của em sau này. Nhưng bây giờ thì em không biết sau khi hoàn thành chương trình phổ thông phải làm gì?, học gì? nữa(-_-)….Anh có thể tư vấn cho em một chút được không anh?

  4. Bài viết hay quá.
    Tiếc là em chưa được tiếp cận sớm hơn. Hiện tại em cũng đang làm phần mềm dưới trướng quản lí của công ty Ấn (dù công ty tổng là Đức), nên cũng hiểu được phần nào nộ dung bài viết.
    Chắc thời gian tới sẽ đọc blog của anh nhiều hơn! 🙂

Trả lời

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Đăng xuất / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Đăng xuất / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Đăng xuất / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Đăng xuất / Thay đổi )

Connecting to %s