KIỂMĐỊNHPHẦNMỀM Nghề kiểmđịnhphầnmềm (software testing) hiện vẫn chưa được cộng đồng công nghệ thông tin Việt Nam đánh giá cao. Đây cũng chính là lý do khiến các doanh nghiệp khó tuyển dụng nhân sự cho công việc này… Vấn đề này đã được bàn tới tại cuộc hội thảo “Kiểm định chất lượng trong các công ty phần mềm” do Hội Tin học TPHCM và Câu lạc bộ Công nghệ thông tin - Viễn thông (ICT Partnership) tổ chức hồi giữa tháng 9 vừa qua. “Khát” nhân lực do đâu? “Lang thang” trên những diễn đàn của dân lập trình sẽ gặp vô số những lời than phiền về nghề của “tester” (nhân viên kiểmđịnhphần mềm). Theo họ, hiện nay tại Việt Nam đang tồn tại những suy nghĩ cho rằng nghề kiểmđịnh chỉ là “cấp thấp”, nghề lập trình mới thật sự là “hình thức bậc cao”. Điều này xuất phát từ nhiều nguyên nhân, nhưng cơ bản từ chính nơi sử dụng nguồn nhân lực. Ở một số công ty sản xuất và gia công phần mềm, những nhân viên mới được tuyển dụng nếu hơi yếu về kỹ năng lập trình, có thể được đưa vào làm công tác kiểm định. Khi làm tốt công việc kiểmđịnh họ mới được “thăng cấp” làm lập trình viên. Trong khi đối với các nhân viên khác trong cùng công ty, tương lai “có vẻ” hanh thông hơn, thì nhân viên kiểmđịnh cảm thấy ít có cơ hội thăng tiến nghề nghiệp. Nhiều công ty thường tuyển sinh viên mới tốt nghiệp để đào tạo thành nhân viên kiểm định. Vô hình trung, làm sinh viên ngộ nhận rằng kiểm địnhphầnmềm là một công việc nhàm chán, lạc lõng và mất định hướng trong công việc về sau. Điều này càng góp phần làm cho các doanh nghiệp trở nên “khát” nhân lực kiểmđịnhphần mềm. Ông Ngô Văn Toàn, quyền Phó tổng giám đốc phụ trách đào tạo và hệ thống chất lượng của Công ty Global CyberSoft (GCS), cho biết khoảng 30% nhân sự hiện nay ở GCS liên quan đến kiểmđịnhphần mềm. Thông thường, chỉ khoảng 15% trong tổng số ứng viên dự tuyển vượt qua các kỳ tuyển dụng nhân sự của GCS. Thậm chí, có những vị trí được rao tuyển đến nửa năm vẫn không thể tìm được người thích hợp. Nếu đi vào những mức độ kiểmđịnh cao cấp như bảo mật (testing securities) hay đòi hỏi kinh nghiệm… thì càng khó kiếm nhân viên. Hiểu đúng nghề kiểmđịnhphầnmềm Những nhà quản lý tham dự cuộc hội thảo đến từ các công ty lớn trong ngành như GCS, CSC, TMA, FPT, PSD… đều nhận định rằng kiểmđịnh là khâu quan trọng trong quy trình của một doanh nghiệp phầnmềm và đòi hỏi nhân viên kiểmđịnh phải giỏi nghề. Theo trình bày của ông Ngô Văn Toàn tại hội thảo, kiểmđịnhphầnmềm gồm bốn mức: 1. Unit Test (Kiểm tra mức đơn vị). 2. Integration Test (Kiểm tra tích hợp) 3. System Test (Kiểm tra mức hệ thống). 4. Acceptance Test (Kiểm tra chấp nhận sản phẩm) và khâu Regression Test (Kiểm tra hồi quy). Cả bốn mức độ này đều đòi hỏi nhân viên kiểmđịnh phải thực hiện tỉ mỉ, chính xác và chuyên nghiệp. Do vậy, một nhân viên kiểmđịnh giỏi là người nắm vững không chỉ kiến thức lập trình mà còn kiến thức về lĩnh vực (domain knowledge) mà họ tham gia. Họ là người quyết định chất lượng của sản phẩm trước khi chuyển giao cho khách hàng, vì thế phải có những tố chất, kỹ năng và trách nhiệm đặc biệt. Theo ông Toàn, những nhân viên kiểmđịnh xuất sắc rất thông thạo ngôn ngữ lập trình, có kiến thức chuyên sâu về lĩnh vực và đặc biệt là giỏi trong các bài toán tổ hợp để đặt nghi vấn, phỏng đoán và xử lý tình huống cho đến khi sản phẩm hoàn thiện. Trong thực tế, nhiều người không có kiến thức sâu về công nghệ thông tin, nhưng chính kiến thức rộng và chuyên sâu về phạm vi hệ thống họ quản lý, cách tư duy logic đã giúp họ trở thành người xuất sắc “như sinh ra là để làm nghề kiểm định”. Mặc dù kiểmđịnh chất lượng là khâu sống còn của việc phát triển phầnmềm như đã nói trên, tâm lý của sinh viên ngành công nghệ thông tin chỉ thích trở thành người lập trình (developer) hay viết mã (coder) hơn là tester vẫn chưa thể thay đổi ngay được. Nghề và nghiệp Tâm lý cho rằng kiểm địnhphầnmềm là “nghề cấp hai”, “cấp thấp” cũng tác động tiêu cực đến việc đào tạo ở các công ty. Theo ông Toàn, việc đào tạo một kỹ sư kiểmđịnh giỏi khó hơn đào tạo một kỹ sư lập trình giỏi, vì động cơ trở thành lập trình viên giỏi rất phổ biến trong cộng đồng công nghệ thông tin. “Để có thể đào tạo họ thành công, trước hết tự họ phải có niềm đam mê với công việc đó”, ông Toàn khẳng định. Ở Công ty CSC Vietnam - nơi có khoảng 25% nhân sự làm trong khâu kiểmđịnhphầnmềm - sinh viên mới ra trường hay người có kinh nghiệm khi gia nhập vào công ty cũng phải qua một giai đoạn đào tạo để hội nhập với dự án, với nhóm và môi trường công ty vì đặc thù của mỗi dự án và mỗi doanh nghiệp là khác nhau. Bà Nguyễn Thị Huỳnh Mai, Trưởng bộ phậnKiểm tra chất lượng của Công ty CSC Vietnam, cho biết CSC đào tạo nhân viên mới theo các chứng chỉ để giúp từng cá nhân hệ thống hóa kiến thức của mình, không phân biệt kiểmđịnh hay các lĩnh vực khác. Bà Mai cho rằng, một nhân viên kiểmđịnh phải được trang bị kiến thức về hệ thống và lĩnh vực liên quan đến dự án mà họ tham gia. Ví dụ, khi kiểmđịnh về hệ thống thanh toán ngân hàng, nhất thiết phải được trang bị kiến thức liên quan đến lĩnh vực này. Xa hơn, theo ông Toàn, vì kiểmđịnh là một bộ phận độc lập, nếu bộ phận này dính liền với các bộ phận khác là một rủi ro. Vì thế, khung huấn luyện kỹ sư bắt đầu từ khâu tuyển dụng - huấn luyện kiến thức cơ bản về công việc và kiến thức chung về công ty - tham gia các dự án phụ - dự án chính thức và các vị trí tùy vào đặc thù của mỗi dự án. Thậm chí họ cần phải nắm vững cách ửng xử khi có xung đột với người quản lý đội ngũ kiểm định. Nhưng chưa hết, một kỹ sư muốn trưởng thành luôn phải có định hướng nghề nghiệp, biết mình là ai, giữ vai trò gì trong nhóm (team), hướng phát triển, nghề nghiệp tương lai… “Họ chỉ có thể làm việc tốt khi cảm thấy nghề của mình được tôn trọng”, ông Toàn khẳng định. Theo bà Trần Thị Mỹ Dung (Công ty PSD) thành công chỉ đến khi có giải pháp hợp lý về nguồn nhân lực. Giải pháp tối ưu trong khâu kiểm định là làm sao phân công công việc đúng người để họ thể hiện cao nhất khả năng. Với đặc trưng của nghề kiểmđịnhphầnmềm như vậy, doanh nghiệp nên chú trọng xây dựng một đội ngũ tốt với một môi trường tốt, khuyến khích nhân viên tự đào tạo; ủy thác công việc cho những thành viên tiềm năng để tham gia độc lập vào một dự án và thể hiện năng lực của họ. Điều này giúp họ phát huy năng lực để làm tốt dự án, giảm chi phí và rủi ro. Vốn có kinh nghiệm nhiều năm về kiểmđịnhphần mềm, bà Võ Phương Tâm, Trưởng bộ phận Tư vấn công nghệ thông tin của TÜV Rheinland Vietnam, cho rằng một công ty đầu tư tốt cho khâu chất lượng luôn nhắm đến việc điều hành và quản trị khâu kiểm định, xác định vị trí, vai trò của nó trong quy trình phát triển phần mềm. Bà Tâm chia sẻ kinh nghiệm: một nhà quản lý giỏi luôn có một kế hoạch khoa học cho dự án, xác định phạm vi cần kiểm tra của phầnmềm để hoạch định khối lượng công việc, thời gian và đội ngũ; rồi phải xác định môi trường kiểmđịnh để không đi ra khỏi phạm vi nhằm bảo đảm chất lượng và thời gian; tính toán khi nào công việc được xem là thành công, những tiêu chí gì buộc phải ngừng công đoạn kiểm định. “Để thành công, bất cứ nhà quản lý nào cũng cần đội ngũ có kiến thức chuyên môn kỹ thuật và nhiều yếu tố cộng hưởng. Điều này giải thích vì sao kiểmđịnh đóng vai trò quan trọng trong quy trình đó”, bà Tâm nói. Khó nhưng có tiềm năng Theo các doanh nghiệp, ngành công nghiệp phần mềm, dù sản xuất hay gia công đều không thể tách rời khỏi khâu kiểm định, vì đó là khâu tích hợp trong quy trình. Ngoài ra nó còn là một ngành gia công độc lập, tạo nên một nguồn doanh thu lớn khi mà các hãng chỉ thuê đối tác gia công thực hiện công việc kiểmđịnh cho mình. Nhưng điều khó khăn của hoạt động kiểmđịnhphầnmềm Việt Nam là hiện tại vẫn chưa có một chương trình đào tạo chuyên sâu về ngành này, trong khi đây lại là một ngành khá mới mẻ, để phát triển cần phải có trang bị những kỹ năng chuyên sâu. Muốn thiết lập bộ phậnkiểmđịnh các công ty phải tự đào tạo nhưng không phải công ty nào cũng có đủ khả năng tổ chức chuyên nghiệp. Theo một chuyên gia về kiểmđịnhphần mềm, ông Nguyễn Quốc Hùng, Giám đốc điều hành LogiGear, một công ty Mỹ chuyên về kiểmđịnhphầnmềm tại Việt Nam, đây là nghề còn rất mới không chỉ ở Việt Nam mà cả ở nhiều nước trên thế giới. Yêu cầu quan trọng - không chỉ của riêng ngành này mà là yêu cầu chung của rất nhiều ngành khác - là nắm vững kỹ thuật và các kiến thức tổng quát. Ngành này cũng đòi hỏi lực lượng nhân sự cao, trình độ chuyên môn, óc sáng tạo, và cả trình độ tiếng Anh để tiếp cận kiến thức mới của thế giới. “Theo tôi, kỹ sư kiểmđịnhphầnmềm cũng giống như bác sĩ chẩn bệnh, phải nắm vững kiến thức mới có thể chẩn đoán chính xác,” theo ông Hùng. Tại Việt Nam, lâu nay kỹ năng của nhân lực kiểmđịnhphầnmềm chưa được chú trọng, đó là lý do làm cho đội ngũ này còn hạn chế về số lượng. Nhưng theo ông Hùng, lợi thế của ngành này là nhân viên kiểmđịnh không nhất thiết phải giới hạn trong ngành phần mềm, họ có thể có các kiến thức khác trong ngành công nghệ thông tin, viễn thông, kinh tế… Chính vì lẽ đó mà khả năng tìm kiếm nhân lực đáp ứng cho nhu cầu này không phải là quá khó khăn. Theo Thời báo Vi tính Sài Gòn Kiểmđịnhphầnmềm (Software Testing) là một lĩnh vực mới ở Việt Nam. Kỷ sư phầnmềm Việt Nam có tài, rất chăm học hỏi và có nhiều ý chí cầu tiến. Tuy nhiên, kỷ sư chúng ta chưa được trang bị đầy đủ kiến thức về kiểmđịnhphầnmềm nên không đủ khả năng để thực hiện các công việc liên quan đến kiểmđịnhphần mềm. Hiện nay nhu cầu tuyển dụng nhân viên kiểmđịnhphầnmềm (SQA Engineer) là rất lớn. Các công ty phát triểnphần mềm lớn như Global Cybersoft, PSV, TMA, PSD…etc luôn rất khác kỷ sư kiểmđịnhphầnmềm có kinh nghiệm. Tuy nhiên, các công ty này không thể hoặc tuyển được rất ít nhân viên kiểmđịnhphầnmềm vừa ý. Để góp phần nâng cao kiển thức về kiểmđịnhphầnmềm cho các kỷ sư Việt Nam, chúng tôi, các chuyên gia kiểmđịnhphầnmềm (Senior SQA Engineers) có hơn 5 năm kinh nghiệm hiện đang công tác tại các công ty phát triền phầnmềm lớn tại thành phố Hồ Chí Minh tiến hành mở các lớp về kiểmđịnhphầnmềm như sau: 1. Lớp A: • Giới thiệu về kiểmđịnhphần mềm. • Black box testing, white box testing, và grey box testing. • Phương pháp thiết kế các trường hợp kiểmđịnh (test cases) cho black box testing và white box testing. • Phương pháp & kỷ thuật báo cáo các trường hợp xảy ra lỗi (Report bugs/defects). • Lập kế hoạch kiểmđịnhphầnmềm (Test Planning). 2. Lớp B: • Giới thiệu về Automation Testing. • Phương pháp và kỷ thuật tiến hành Automation Testing. • Sử dụng Tool QuickTest Pro. 3. Lớp C: • Giới thiệu về Performance Testing. • Tiếp cận và các kỷ thuật về Performance Testing. • Sử dụng tool LoadRunner. Mọi chi tiết xin lien hệ: Cô Yến Nhi. Mobile : 0903773726 Email : digicomvn@gmail.com Kinh nghiệm/Kỹ năng chi tiết: - Tốt nghiệp đại học, cao đẳng chuyên ngành công nghệ thông tin, ngoại ngữ. - Có kỹ năng đọc hiểu, viết tài liệu tiếng Anh tốt. - Có hiểu biết về hệ thống quản lý chất lượng, quy trình phát triển phần mềm. Ưu tiên các ứng viên có kinh nghiệm về ISO 9001:2000, CMMI; tham gia các dự án phầnmềm > 300 man.day với khách hàng nước ngoài. - Sử dụng tốt các ứng dụng văn phòng (Word, Excel, PowerPoint). - Cẩn thận, nghiêm túc, nhiệt tình, chủ động trong công việc; có khả năng giao tiếp tốt . viên kiểm định phần mềm vừa ý. Để góp phần nâng cao kiển thức về kiểm định phần mềm cho các kỷ sư Việt Nam, chúng tôi, các chuyên gia kiểm định phần mềm. kiểm định phần mềm nên không đủ khả năng để thực hiện các công việc liên quan đến kiểm định phần mềm. Hiện nay nhu cầu tuyển dụng nhân viên kiểm định phần