Quay lại blogĐiều giữ chân nhiều lập trình viên Việt không phải là Kỹ thuật

Điều giữ chân nhiều lập trình viên Việt không phải là Kỹ thuật

Đỗ Thành Đạt

Lập trình thời AIKỹ sư phần mềmDeveloper MindsetTương lai nghề lập trìnhSoftware EngineerSoftware Engineering

Tôi luôn thấy có một sự mỉa mai đầy xót xa vương vất trong những văn phòng nơi có những kỹ sư phần mềm như tôi. Nếu nhìn vào những gã kỹ sư đang cặm cụi sau màn hình kia, bạn sẽ nhận ra một sự thật: Chúng ta chính là những kẻ học "ngoại ngữ" điên rồ và xuất chúng nhất.

Chỉ là thứ ngôn ngữ chúng ta học không dành cho loài người.

Dự án ép tiến độ, anh em thức vài đêm là nuốt trọn TypeScript. Sếp hứng lên đòi đổi kiến trúc, chúng ta lại lầm lụi nhai dăm ba cái document khô khốc để đẻ ra hàng ngàn dòng code bằng Golang hay Rust. Framework rụng xuống như lá mùa thu, API mọc lên chằng chịt, chúng ta cứ thế nạp vào đầu, tiếp thu với tốc độ phi mã mà đếch thèm than vãn nửa lời. Chúng ta dư sức thuần hóa những cỗ máy vô hồn bằng mớ ngôn ngữ lạnh lẽo, góc cạnh và phức tạp bậc nhất.

Nhưng, khỉ thật, cớ sao cứ đụng tới tiếng Anh là mọi thứ lại sụp đổ?

Chỉ cần một cái meeting invitation hiện lên, hay một câu hỏi bâng quơ từ đối tác ngoại quốc, bộ óc vĩ đại vừa giải quyết xong mớ thuật toán nhức não bỗng chốc tê liệt hoàn toàn. Bức tường vô hình dựng đứng lên. Chúng ta có thể cào phím viết ra những hệ thống nối liền máy chủ ở hai nửa bán cầu, nhưng lại bất lực đến câm lặng trong việc lấy dăm ba từ vựng tiếng Anh, để bắc một nhịp cầu từ cuống họng bay ra ngoài bờ môi.

Đó là một nghịch lý nhức nhối. Chúng ta giao tiếp với một cái máy mượt mà đến thế, sao lại chấp nhận bó tay trước đồng loại của mình?

Vậy cái quái gì đang xảy ra?

Nhiều người bắt đầu văn vở lôi nền giáo dục ra chửi, hoặc tặc lưỡi tự an ủi rằng tại dân khối A khô khan, EQ mốc meo nên học ngoại ngữ ngu đúng không nào?

Thôi thôi thôi! Dẹp cái văn đó đi!

Khởi nguồn của cái nghịch lý này nó nằm ngay trên cái màn hình mà anh em mình dán mắt vào mười mấy tiếng mỗi ngày ấy. Hãy nói thẳng về cái nghề của chúng ta đi. Ngày nào mở mắt ra, chúng ta cũng bị nhốt trong một thứ áp lực vô hình nhưng cực đoan từ cái giao diện IDE đen ngòm:

Compile Error Syntax Error Build Failed

Cái thế giới của code nó lạnh lùng và tàn nhẫn lắm. Rớt đúng một cái dấu chấm phẩy, sập cả hệ thống. Lệch một cái ngoặc nhọn, màn hình console lập tức hắt thứ ánh sáng đỏ lòm như tát vào mặt. Trong cái nghề này, sai là chết. Hoàn toàn không có khái niệm vùng xám hay châm chước kiểu "khỉ thật, logic tao viết đúng mẹ nó 90% rồi, mày nhắm mắt build đại nốt đi". Không. Máy móc nó khốn nạn ở chỗ nó đòi hỏi sự chính xác tuyệt đối.

Cứ thế, năm này qua năm khác, cái sự hà khắc rợn người ấy nó ngấm từ từ vào máu tụi mình. Thằng dev nào làm lâu cũng mắc hội chứng ám ảnh cưỡng chế với tính chính xác. Chúng ta bị nhào nặn để tin vào một chân lý: Chỉ được phép bấm "Run", chỉ được phép xuất lệnh khi đã rà soát mọi ngóc ngách và chắc chắn nó đúng 100%.

Và rồi, sự bi kịch bắt đầu khi anh em bê nguyên cái tư duy "developer" chết tiệt đó cho việc học tiếng Anh.

Chúng ta tự cấy mịa nó một cái "compiler" vô hình vào ngay cuống họng mình. Vừa định hé môi nói một câu với khách hàng, cái compiler ấy đã chạy rầm rầm trong não: "Khoan! Chỗ này dùng quá khứ đơn hay hiện tại hoàn thành? Động từ thêm 's' chưa? Đọc cái ending-sound thế này liệu bọn nó có cười cho không?".

Chỉ cần một biến số bị lệch, bộ não lập tức cảnh báo nguy cơ dính Syntax Error trong mắt người đối diện. Lệnh Abort lập tức được kích hoạt. Lời nói vừa chạy đến môi lại bị nuốt nghẹn vào trong. Và thế là, chúng ta chọn cách gật gù, chọn một sự im lặng câm điếc đến hèn nhát để bảo vệ cái sự "hoàn hảo" ảo tưởng của mình.

Nhưng cái giá phải trả thì đắt quá

Tôi không muốn nói mấy lời sáo rỗng về "cơ hội toàn cầu" hay "vươn ra biển lớn". Hãy nhìn vào một thứ rất thật trong chính công ty bạn thôi.

Có hai gã kỹ sư. Một gã code như thần, thuật toán trong đầu nhảy số như máy tính, bug nào vào tay cũng fix được. Gã còn lại, code ở mức khá thôi, thi thoảng vẫn viết ra mấy dòng hơi cồng kềnh.

Nhưng gã thứ hai làm được một việc: Mở micro lên và nói chuyện được bằng tiếng Anh. Gã tự tin present cái tính năng mình vừa làm. Gã demo được. Gã ngồi chung mâm với khách hàng, cãi tay đôi để bảo vệ cái giải pháp kiến trúc của team.

Cuối cùng, dự án xong, khách hàng nhớ ai? Lão manager tin tưởng giao trọng trách cho ai? Ai được cất nhắc lên làm Tech Lead, và ai sẽ là người chốt được cái offer remote 5.000 đô một tháng?

Chắc chắn là gã thứ hai. Sự thật nó trần trụi vậy đó.

Chúng ta đang đánh giá sai tiếng Anh

Cái cớ lớn nhất của anh em là nghĩ tiếng Anh nó phải cao siêu lắm. Cứ nhắc đến tiếng Anh là nghĩ ngay đến mấy con số IELTS 7.0, 8.0, nghĩ đến ngữ điệu luyến láy như người bản xứ.

Nhưng trong công việc kỹ thuật, thực tế thực dụng hơn nhiều. Khách hàng đâu có cần bạn làm nhà thơ?

Bạn chỉ cần bập bẹ được vài câu kiểu: "The deployment failed because database is locked", "I think we should use Redis for this", "Can you clarify this ticket?".

Chỉ cần thế thôi là công việc trôi chảy rồi. Tiếng Anh trong tech nó chỉ là cái công cụ, như cái búa, cái cờ-lê vậy. Gõ trúng đinh là được, búa méo mó xước xát một tí ai thèm quan tâm?

Đừng dùng compiler để nói chuyện nữa

Đó là điều cuối cùng tôi nhận ra sau bao nhiêu năm làm nghề. Con người chúng ta không phải là compiler. Hệ thống giao tiếp của con người có khả năng chịu lỗi cực kỳ đỉnh cao.

Bạn nói: "I goed to office yesterday." Người ta nghe, người ta bật cười trong bụng một tí, nhưng người ta vẫn hiểu. Bạn phát âm sai. Người ta vẫn hiểu. Bạn quên chia thì. Người ta vẫn hiểu.

Bởi vì sâu thẳm bên trong, điều duy nhất mà họ - những người ngồi ở đầu dây bên kia nước Mỹ, nước Anh hay Singapore thực sự quan tâm, không phải là ngữ pháp của bạn.

Họ chỉ quan tâm đến ý tưởng của bạn.

Vậy nên, tắt cái trình biên dịch khắt khe trong đầu đi. Cứ nói sai đi, cứ lỗi cú pháp đi, rồi tự fix dần. Đừng để một mớ rào cản ngữ pháp vớ vẩn nhốt bộ óc kỹ thuật tuyệt vời của bạn lại trong bốn bức tường. Cứ mở miệng ra, và "Run" thôi.

Mấy ông có hay kiểu nhờ một Newbie giỏi tiếng Anh giải thích với khách hàng giúp tại mình không tự tin nói tiếng Anh chưa? Mấy ông có tự hỏi liệu cái mấy ông cần nói có truyền tải đúng cách như ông hiểu không? “Fun fact” phần cốt lõi nó lại nằm trong đầu của ông senior “sợ nói tiếng Anh không sang” và rồi nhận lại kết quả ê chề, khách hàng không hiểu ý của người ông đang “tin tưởng” là có tiếng Anh giỏi hơn.

Trong giảng dạy tiếng Anh, nó giống với việc kêu một ông Tây balo 35 tuổi qua Việt Nam xin vào dạy tiếng Anh ở trung tâm để hắn đứng trên bục giảng giải thích ngữ pháp simple present cho học sinh trong khi ông đấy nói cấu trúc đó một cách bản năng chứ ổng đã biết cái đó là gì đâu! Thế là ông Tây đấy phải nhờ đến một đứa teaching assistant: “mày giải thích cái này cho tụi nó, tao không giải thích được”.

Thế nên, những gì mình muốn nói, hãy cho phép bản thân được “thử”.

Kiến thức chỉ là khi lý thuyết cho đến khi nó được áp dụng và thực hành

Tư duy sợ sai có lẽ đã âm thầm bắt nguồn từ lớp học các cấp ở Việt Nam. Giáo viên hầu như chỉ dạy từ A có nghĩa B, đọc nó sẽ như thế nọ thế kia. Ngay cả mấy bài kiểm tra hay thi thố cũng chỉ là trắc nghiệm. Cứ thế, dăm ba cái lý thuyết mà các bạn dành cả chục năm thanh xuân vườn trường đổi lại chả nói được câu đàng hoàng. Vậy chúng ta có nên đổ lỗi cho nền giáo dục chỉ vận hành theo lý thuyết hay không? Tôi nghĩ câu trả lời là dừng đỗ lỗi cho ai mà là bạn cần nhận ra vấn đề và giải quyết sớm nhất có thể.

Đồng ý, muốn nói được phải có từ vựng nhưng liệu nó đã là bước cuối cùng trong quá trình học ngôn ngữ chưa? Dạo tầm 6 7 năm về trước, có một vài quyển sách khá nổi đại loại như 2000, 3000 từ vựng hay dùng trong giao tiếp và hẳn là không ít các bạn sinh viên hay những người đi làm bỏ một mớ tiền kha khá cho những quyển sách như thế. Nói thẳng ra là lúc mua thì rất hào hứng nhưng học được mấy ngày xong vứt một xó để nó chơi với đống bụi trong góc nhà. Hoặc những khóa học giao tiếp cấp tốc với mức phí từ vài triệu cho tới mấy chục triệu được đăng ký với hy vọng viển vông “chắc là học xong là giao tiếp được”. 

Tiếng Anh các bạn học trong khóa học nó chỉ là một trong vô vàn biến thể của câu từ. Sách giáo khoa dạy bạn hỏi “How are you?” tại sao khi giao tiếp người nước ngoài lại hỏi “Hey, how’s it going?" hay "What’s going on?”. Bạn tự hỏi giáo viên dạy sai hay sách lỗi thời? Đơn giản là ngôn ngữ không có khuôn khổ, hàng chục cách nói có thể dùng cho một ý tưởng.

Hãy nhìn vào một ví dụ khác dể hiểu hơn. Bạn học chữ “take” nghĩa là “lấy” nhưng tại sao “take care of” lại là “chăm sóc? Vậy “I will take care of this task” có phải dịch là “tôi sẽ chăm sóc cái nhiệm vụ này” không? Hay chỉ đơn giản là “ờ để tôi làm cái này cho”? Rồi bạn lại tiếp tục mớ hỗn độn trong đầu rằng vậy tôi nói “I will do it” hay “I will cover this task” có được không? Cái nào cũng đều có nghĩa. Đúng rồi, câu trả lời trong đầu của mấy ông đúng rồi đó! Chúng nó như nhau cả.

Từ vựng là cần thiết nhưng bạn phải thật sự dùng nó để nói thì mới gọi là “HỌC” xong nó. Chả đùa chứ bạn chỉ cần khoảng 10 từ vựng để đặt ra 5 7 câu rồi. Câu thì chỉ cần có từ 2 chữ. Bạn biết chữ “sleep” là ngủ, chỉ thế thôi hay bạn mở miệng ra nói “I sleep / I sleep all day / I want to sleep all day / I want to sleep all day because I am so tired / I need to sleep now.” Cho nên hãy cố dùng những từ mà mình có trong đầu và “GHÉP” chúng tại thành câu có nghĩa và nếu có thể thì đừng bận tâm ngữ pháp hay phát âm chính xác. Bởi chính người Mỹ cũng có nói tiếng Anh chuẩn chỉnh đâu? 

Hãy cho phép mình là một đứa trẻ khi nói tiếng Anh

Các bạn nghĩ xem, một đứa trẻ mất bao nhiêu thời gian để nói được những chữ đầu tiên cho đến khi nói được câu hoàn chỉnh truyền đạt được ý? Trung bình từ 2-5 năm. Vậy và đôi khi chúng nó dùng cả ngôn ngữ cơ thể khi vắt óc không ra chữ nhưng người ta vẫn hiểu. Tại sao bạn lại ép bản thân nói tiếng Anh chuẩn chỉnh trong khi nó chỉ là công cụ để giao tiếp? Thế nên tôi xin mấy ông gác cái tư tưởng đấy qua một bên và hãy cho phép mình được quyền bập bẹ từng câu chữ bởi vì chúng ta cũng là một đứa trẻ đang học một ngôn ngữ mới, chỉ khác là từ độ tuổi đôi mươi, ba mươi mà trên thực tế, bạn còn có lợi thế hơn cả một đứa con nít chưa lớn, bạn có tư duy và kinh nghiệm sống hơn chúng gấp nhiều lần. Có khi bạn chỉ mất 1 hay 2 năm thay vì 5 năm như một đứa trẻ mới sinh ra.

Thế nhé!

 

Share

Bài viết liên quan

Sau AI, nghề lập trình vẫn còn. Chỉ là nó không còn như trước

Sau AI, nghề lập trình vẫn còn. Chỉ là nó không còn như trước

Lập trình thời AIAI CodingVibe CodingVibe CodeSoftware EngineerKỹ sư phần mềmSoftware ArchitectureTư duy lập trìnhDeveloper MindsetAI và lập trìnhTương lai nghề lập trìnhLập trình viên có bị AI thay thế khôngCông nghệAI cho DeveloperSoftware EngineeringAI có thay thế lập trình viên khônglập trình viên trong thời đại AIvibe coding là gìvibe code là gì

Lại một chút tản mạn về nghề lập trình, nhớ lại những năm 2020, khi cảm giác trở thành một lập trình viên giỏi gắn liền với rất nhiều đêm muộn. Đêm mu…

Đỗ Thành Đạt

Consumer Group: Điều gì xảy ra sau khi một Event được tạo ra?

Consumer Group: Điều gì xảy ra sau khi một Event được tạo ra?

KafkaEvent-Driven ArchitectureSystem DesignArchitectureScalability

Trong phần giới thiệu về EDA, chúng ta biết rằng mọi thứ bắt đầu từ Business Event, và các service sẽ không giao tiếp với nhau bằng cách gọi trực tiếp…

Nguyễn Trung Dũng

Event-Driven Architecture: Kiến trúc của những hệ thống có khả năng mở rộng

Event-Driven Architecture: Kiến trúc của những hệ thống có khả năng mở rộng

KafkaSystem DesignScalabilityEvent-Driven ArchitectureArchitectural StylesArchitecture

Kiến trúc đóng vai trò cực kì quan trọng trong những hệ thống lớn. Làm sản phẩm công nghệ cũng như xây một toà chung cư, scale càng lớn thì ảnh hưởng…

Nguyễn Trung Dũng