21 Jan, 2021
Người phát triển và công ti phần mềm
Một cuộc điều tra mới của Mĩ về 2,000 người phát triển phần mềm cho thấy rằng 52% số họ không cập nhật kĩ năng của họ trong thị trường cạnh tranh này.
Lí do được nêu ra là họ quá bận rộn với công việc và không có thời gian làm cái gì khác. Tuy nhiên, cuộc điều tra này cũng thấy rằng 36% số họ thừa nhận họ có chơi trò chơi video thường xuyên (hơn 10 giờ một tuần) cho nên việc nói không có đủ thời gian có thể không phải là lí do chính đáng. Cuộc điều tra này cũng hỏi liệu người phát triển phần mềm có tham dự đào tạo thêm sau công việc không, nếu có, và 73% số họ đã từ chối. Khi được hỏi tại sao, nhiều người nói rằng đào tạo nên được cung cấp trong giờ làm việc như một phần việc làm của họ, không phải sau giờ làm việc vì đó là thời gian riêng của họ, không phải là thời gian của công ti. Cuộc điều tra cho thấy nhiều người phát triển không coi đào tạo kĩ năng thêm là ưu tiên hàng đầu khi họ vẫn có việc làm. Cuộc điều tra kết luận rằng thái độ này là không chấp nhận được khi nhiều công nghệ mới đang nổi lên. Chẳng hạn, ngày nay nền tính toán di động mới đi kèm với hệ thống 64-bit chạy trên các bộ xử lí đa nhân, đang bắt đầu một thời đại mới của lập trình song song. Trừ phi những người phát triển hiện thời tìm ra thời gian để làm chủ những công nghệ mới này, nhiều người trong số họ sẽ thấy kĩ năng hiện thời của họ sẽ sớm bị lạc hậu.
Cuộc điều tra thấy rằng các công ti phần mềm thường buộc những người phát triển có kĩ năng làm việc quá mức trên việc làm hiện thời rồi thay thế họ bằng những người phát triển mới có những kĩ năng hiện đại hơn vì người phát triển hiện thời có kĩ năng lạc hậu đã bị vắt kiệt giá trị của họ cho công ti. Căn nguyên của thực hành này là về tiền vì công nhân hiện thời đòi lương cao hơn công nhân mới thuê và phần lớn họ có kĩ năng lạc hậu. Nhiều công ti bảo vệ thực hành này bằng việc tuyên bố rằng những người phát triển hiện thời có giá trị tới mức không nên đưa ra khỏi công việc để đi đào tạo. Họ trích dẫn sự kiện là nhiều người phát triển không thích học kĩ năng mới khi họ vẫn có việc làm. Nhiều công ti sợ rằng với đào tạo thêm, người phát triển có thể dễ dàng tìm ra việc làm ở đâu đó khác và bỏ đi. Một người quản lí nói với cuộc điều tra: “Đào tạo là đầu tư tốn kém, vài năm trước chúng tôi đã đầu tư nhiều vào đào tạo nhưng sau khi có kĩ năng tốt hơn, phần lớn đã rời bỏ công ti chúng tôi để lấy việc làm được trả lương tốt hơn. Chúng tôi thấy rằng dễ lấy người từ công ti khác hơn là đào tạo người riêng của chúng tôi.” Vài năm trước đây, kinh nghiệm là quan trọng trong kiếm việc làm nhưng với thay đổi nhanh chóng của công nghệ, nhiều công ti không đầu tư vào đào tạo kĩ năng mà thay thế người phát triển bằng sinh viên mới tốt nghiệp có kĩ năng tốt hơn bởi vì họ vừa mới học chúng trong đại học. Ngày nay phần lớn các công ti đều tập trung nhiều hơn vào tuyển mộ sinh viên từ các trường được chọn lựa có chương trình đào tạo được cập nhật nhất. Thực hành thông dụng khác là đem công nhân có kĩ năng từ nước ngoài vào làm việc theo chương trình visa H1B, nếu họ có kĩ năng và sẵn lòng làm việc với ít tiền hơn. Cuộc điều tra này kết luận: “Trong thị trường thay đổi nhanh chóng này, cả người phát triển và các công ti đều “lâm trận” với nhau. Người phát triển không muốn học kĩ năng mới và công ti tận dụng ưu thế của điều đó bằng việc tiếp tục thuê các công nhân có kĩ năng và rồi để họ ra đi khi không có nhu cầu về họ. Công ti đầu tư vào đào tạo thấy rằng người của họ tận dụng ưu thế của đào tạo để tìm việc làm được trả lương cao hơn. Điều đó cũng giải thích vấn đề về thiếu hụt công nhân CNTT đồng thời nhiều công nhân CNTT vẫn không có việc làm.”
Trong thế giới thay đổi nhanh chóng này, học cả đời là yếu tố quan trọng nhất mà nhiều người phát triển phần mềm không để ý. Vấn đề nảy sinh từ quá khứ khi phần lớn những người phát triển có thể dễ dàng chuyển việc làm mà không cần cập nhật nhiều về kĩ năng của họ. Ngày nay trong thị trường toàn cầu hoá nơi các công nhân có kĩ năng có ở mọi nơi và dễ dàng kiếm được, công ti có thể nhanh chóng đáp ứng cho nhu cầu của họ và không cần người phát triển có kinh nghiệm với lương cao và kĩ năng lạc hậu. Toàn cầu hoá mở ra nhiều cơ hội hơn cho công nhân có kĩ năng nhưng cũng trở thành lực tàn nhẫn cho những công nhân không cập nhật kĩ năng của họ. Đó là lí do tại sao trong nhiều năm, tôi bao giờ cũng chủ trương rằng người phát triển phần mềm và nhà chuyên nghiệp CNTT phải nhận trách nhiệm toàn bộ để duy trì kĩ năng của họ để “có thể kiếm được việc làm” vào bất kì lúc nào.
—-English version—-
Developers and software company
A new U.S. industry survey of 2,000 software developers finds that 52% of them do not update their skills in this competitive market. The reason given is they are too busy with works and do not have time to do anything else. However, the survey also finds that 36% of them admitted that they do play video games often (More than 10 hours per week) so the claim of not having enough time may not be a good excuse. The survey also asked whether software developers would attend additional trainings after work, if given and 73% of them declined. When asked why, many said that training should be provided during working hours as part of their jobs, not after since it is their own time, not company time. The survey finds many developers do not consider additional skill training is a top priority when they still have jobs. The survey concludes that this attitude is unacceptable as more new technologies are emerging. For example, today new mobile computing platforms coupled with the new 64-bit systems running on multi-core processors, are about to start a new era of parallel programming. Unless current developers find time to master these new technologies, many of them will find their existing skills soon be obsolete.
The survey finds that software companies are often force skilled developers to overwork on current jobs then replacing them with new developers that have more modern skills because existing developers have obsolete skills already exhausted their value to the company. The root cause of this practice is about money as existing workers require higher salary than new hires and most have obsolete skills. Many companies defend this by practice by claiming that existing developers are too valuable to pull off works and put in training. They cited the fact that many developers do not like to learn new skills as long as they are still having jobs. Many companies afraid that with additional trainings, developers can easily find job elsewhere and leave. One manager told the survey: “Training is an expensive investment, few years ago we invested a lot in training but after had better skills, most left our company for another better paid jobs. We found that it is easier to steal people from another companies than train our own people”. Few years ago, experience is important in getting jobs but with fast changing of technologies, many companies are not investing in skill training but replace developers with new graduates that have better skills because they just learned them in college. Today most companies are focusing more on recruiting students from selected schools that have the most updated training programs. Another common practice is to bring in skilled workers from oversea through the H1B visa program, if they have the skills and willing to work for less. The survey concluded: “In this rapidly changing market, both developers and companies are “at war” with each others. Developers do not want to learn new skills and companies are taking advantage of that by continue to hire skilled workers and let them go when there is no need for them. Company that invests in training found that their people take advantage of training to find higher paid jobs. It also explains the issue of IT workers shortage at the same time many IT workers are unemployed”.
In the fast changing world, lifelong learning is the most important factor that many software developers do not pay attention. The issue stem from the past when most developers could easily switch jobs without significantly upgrading their skills. Today in a globalized market where skilled workers are everywhere and easily be acquired, company can quickly fulfill their needs and no longer need experienced developers with high salary and obsolete skills. Globalization opens more opportunities for skilled workers but also become a brutal force for workers that do not update their skills. That is why for many years, I always advocate that software developers and IT professionals must take full responsibility for maintaining their skills to be “employable” at any time.