Hôm nay, mọi người đều đổ xô vào học công nghệ thông tin, ai cũng nói rằng ngành này là 'nóng' nhất, triển vọng nhất, tốt nhất và thú vị nhất. Nhưng bây giờ, hãy để mình liệt kê những suy nghĩ 'nghĩ quẩn' của mình về công việc lập trình viên (hoặc kỹ sư phần mềm, chuyên gia phát triển phần mềm, coder, kỹ thuật viên cao cấp,...)
1) Làm phần mềm không mang lại thu nhập cao
Đây là thực tế khó khăn nhất đang áp đặt lên tâm trí của chúng ta, đến mức đôi khi có người không thể nhấn được phím Shift trên bàn phím. Vâng, theo mọi khảo sát về tiền lương, làm việc trong lĩnh vực CNTT có thể đem lại mức lương cao nhất.
Tuy nhiên, điều này vẫn chưa đủ. Mức lương khi mới bắt đầu có vẻ cao, nhưng sau này thì... Làm sao mà chúng ta có thể tập trung hoàn toàn vào việc sửa lỗi nếu biết được rằng đứa bạn từ cấp III của mình đang làm việc cho các tập đoàn nước ngoài với thu nhập hơn 10 triệu đồng. Làm sao mà không cảm thấy bất mãn nếu biết rằng sau khi ra trường, mức lương của họ chỉ bằng một nửa so với chúng ta. Vâng, lương khi mới bắt đầu có vẻ cao, nhưng không tăng lên nhanh chóng. Và nếu có tăng, thì cũng không nhiều. Có nơi có sự tăng lương, nhưng không có phần thưởng. Ngoài những điều đó, chẳng có thu nhập nào khác, và ít có cơ hội để kiếm thêm ngoài công việc chính vì công việc đã quá bận rộn.
2) Làm phần mềm thực sự mệt mỏi
Thách thức đầu tiên là áp lực thời gian. Điều này không cần phải diễn giải nhiều. Giờ, nói về môi trường làm việc. Nếu bạn chưa bao giờ thử sức trong lĩnh vực phần mềm, hãy tưởng tượng thế này. Bước vào một khu nhà rộng lớn, yên bình và hoàn toàn khác biệt với thế giới ngoài kia. Tiếp tục bước vào, bạn sẽ thấy các phòng được chia thành các buồng nhỏ hơn nữa. Mỗi buồng có diện tích như nhau, rất chật hẹp và được trang bị đồ đạc giống nhau. Một máy tính được đặt trong mỗi buồng, nhưng không gian quá chật chội, chỉ đủ cho một người ngồi. Bạn sẽ không di chuyển thoải mái, không nằm thư giãn và thậm chí cả việc xoay người cũng khó khăn vì không gian quá chật hẹp. Ngoài ra, bạn cũng phải đeo một thẻ có mã số ghi trên áo. Mọi người ở đây đều đeo thẻ như vậy. Và bạn chỉ tự do trong không gian chật hẹp của mình; không được tự do sang khu vực khác, thậm chí không được đi vào buồng bên cạnh và đụng vào vật dụng ở đó. Hơn nữa, bạn cũng không được làm ồn và không ảnh hưởng đến các buồng xung quanh.
Mỗi ngày, một người có chức vụ (tạm gọi là đốc công) sẽ đến giao cho bạn một số nhiệm vụ phải hoàn thành. Bạn sẽ làm việc trong buồng của mình, sử dụng các công cụ đã được cung cấp. Khác với nơi làm việc bên ngoài, họ thực hiện chế độ làm việc 'tự do giờ làm việc'. Điều đó có nghĩa là có những người ở cấp cao hơn giao nhiệm vụ cho các đốc công, và định nhiệm vụ theo ngày, tuần hoặc tháng. Sau đó, các đốc công sẽ chia nhỏ nhiệm vụ đó và giao lại cho bạn. Điều đặc biệt là, thời gian được xác định (n) bởi đốc công không có ý nghĩa gì đối với bạn vì bạn làm việc theo chế độ 'tự do giờ làm việc'. Bạn có thể phải làm việc n giờ để hoàn thành nhiệm vụ đó, hoặc có thể cần nhiều hơn n giờ, hoặc thậm chí cần (n + x + y + z) giờ. Quan trọng nhất, đốc công cần kết quả cuối cùng từ bạn.
3) Nghề lập trình không hỗ trợ gì cho gia đình
Đối với người Việt, mục tiêu hàng đầu khi đi làm là kiếm tiền, sau đó là mong muốn có khả năng 'giúp đỡ' gia đình và người thân trong những dịp quan trọng.
Khi bạn dành hầu hết thời gian của mình trước máy vi tính để viết chương trình, bạn sẽ không có bất kỳ 'lợi thế' nào khác trong cuộc sống, cả ngay từ bây giờ và trong tương lai. Thậm chí, một người bạn của tôi làm marketing cho một công ty mỹ phẩm, không có vẻ gì đặc biệt, nhưng hàng tháng vẫn nhận được các sản phẩm như dầu gội đầu, sửa tắm, kem đánh răng và các sản phẩm dành cho phụ nữ hoàn toàn miễn phí. Còn bạn, bạn có thể mang lại điều gì? Một chương trình mà ngay cả bạn cũng không thể tưởng tượng được người ta sẽ sử dụng như thế nào? Hay là giúp đỡ họ hàng khi họ cần sửa lỗi trong một số chương trình. Thậm chí, một số bạn đi du học để làm nghiên cứu, dường như không đóng góp gì đối với gia đình, nhưng họ cũng có danh hiệu là 'tiến sĩ' hoặc 'thạc sĩ'. Nếu bạn làm lập trình viên, dù có cơ hội đi công tác ở nước ngoài, hàng xóm cạnh nhà cũng chỉ biết rằng: 'thằng đó nó đi xuất khẩu lao động'.
4) Làm phần mềm ít cơ hội giao tiếp với bên ngoài
Vì phải sống trong không gian hẹp, đôi mắt của bạn thường chỉ nhìn thấy màn hình, hai bên là vách ngăn, và phía sau là một lập trình viên khác đang cùng trải nghiệm cuộc sống như bạn. Đó là thế giới giới hạn của bạn. Bạn chỉ cảm nhận ánh sáng mặt trời cuối cùng khi nào? Hầu hết mọi người không bao giờ tưởng tượng mình có thể sống trong căn phòng thiếu ánh sáng tự nhiên, nhưng họ không nhận ra họ đã dành hết thời gian ban ngày trong một môi trường như vậy.
Ở môi trường như vậy, bạn ít có cơ hội gặp gỡ thế giới bên ngoài. Ít có khả năng kết bạn với những người có thể thay đổi cuộc sống hoặc sự nghiệp của bạn tích cực. Khi tâm trí bạn chỉ hoạt động trong hai trạng thái: logic (khi làm việc hoặc học tập vào buổi tối) và ngủ, bạn sẽ khó cảm nhận cảm xúc của người khác hoặc biểu đạt ý kiến của mình một cách sâu sắc.
Làm lập trình viên không phải là 'cao cấp' như mọi người nghĩ.
Đa số mọi người coi ngành CNTT là ngành khoa học cao cấp, công nghệ cao. Vì vậy, họ nghĩ làm phần mềm là công việc kỹ thuật cao. Nhưng thực tế không phải như vậy. Làm phần mềm không phải là công việc kỹ thuật cao, mà chính là công việc kỹ thuật thấp. Nhiệm vụ của bạn là chuyển yêu cầu mơ hồ từ khách hàng thành mã lệnh máy tính. Chỉ vậy thôi. Không có gì là cao cấp cả. Nếu dịch giả là công việc kỹ thuật cao thì thực sự là buồn cười.
Sau khi làm việc trong môi trường thực tế, sinh viên CNTT thường mơ ước về một công việc 'cao cấp' với thuật toán, lý thuyết mới và sáng tạo. Nhưng chỉ sau 1,2 năm, họ nhận ra công việc thực tế quá thấp kỹ thuật, quá cơ bắp.
Sử dụng lý thuyết hiện có để phát triển phần mềm là kỹ thuật phần mềm, không có gì cao cấp theo cách mọi người hiểu. Còn nếu muốn tạo ra lý thuyết mới thì đó là một lĩnh vực khác hoàn toàn. Có thể rất cao cấp, nhưng ở Việt Nam có lẽ có rất ít công ty tạo điều kiện cho việc này. Ở nước ngoài, bạn có thể tham gia vào bộ phận nghiên cứu của các công ty lớn. Nhưng công việc đó không còn được gọi là kỹ thuật phần mềm nữa. Vậy nên, nỗi khổ của lập trình viên là gì? Đó là phải làm một công việc rất thấp kỹ thuật trong khi luôn mơ ước về một công việc cao cấp. Hậu quả là công việc đơn điệu, cơ bắp và không có gì mới mẻ.