Ký sự BrSE

Những nẻo đường kỹ sư cầu nối

Bài phỏng vấn MBA đề tài ngành Outsource phần mềm

Trước giờ toàn đi phỏng vấn người khác, lần đầu tiên có người phỏng vấn mình. Một em gái rất xinh và cực giỏi, đang học thạc sỹ ở Anh.

Bên dưới là nội dung câu hỏi và phần trả lời, ngôn từ hơi cứng để người ta còn làm luận văn, mình không thể viết kiểu bựa bựa như mọi khi được. Nhưng về nội dung thì cũng có nhiều cái hay (tự khen), các bạn tham khảo nhé. Đề tài outsource nhưng đi sâu về mảng nhân sự.

1.    Hiện tại công ty của anh/chị có đang áp dụng một trong những mô hình cải tiến quy trình phần mềm (ví dụ như CMMI, CMMI-Scrum hoặc Six sigma …) không? Đó là mô hình gì và mức độ trưởng thành (maturity) hoặc mức độ áp dụng những mô hình đó đang ở giai đoạn nào? 

Nếu hiện tại công ty đang không áp dụng mô hình nào, vậy trong tương lai công ty có ý định áp dụng mô hình chuẩn hoá nào không? Đó là mô hình nào? Tại sao?

Câu trả lời: Trong quá trình làm việc tôi đã trực tiếp vận hành và áp dụng khá nhiều mô hình phần mềm (software model) như Mô hình thác nước ( Waterfall model), Mô hình xoắn ốc ( Spiral model), mô hình chữ V ( V-Model) … và dạo gần đây áp dụng cả Scrum-Agile. Mỗi một mô hình luôn có những ưu – khuyết điểm riêng mà một người quản lý dự án (Project Mangager) cần phải phân tích kỹ càng input-output cũng như đặc thù dự án của mình để chọn ra 1 hoặc nhiều model trộn lại với nhau một cách linh hoạt  theo từng công đoạn. Làm như vậy mới phát huy hết tất cả ưu điểm cũng như hạn chế khuyết điểm trong quá trình triển khai. Để tôi lấy ví dụ cho dễ hiểu hơn, đối với mô hình thác nước (waterfall) input và output luôn rõ ràng, các công đoạn được định hình sẵn và nếu như tuân thủ các quy tắc sẽ đạt được kết quả tốt nhất về kết quả – chất lượng – và đặc biệt là keep deadline, nhưng có một nhược điểm chết người là nếu có bất kỳ 1 sự thay đổi nào thì luồng chảy công việc sẽ phải quay lại từ đầu, còn đối với Scrum, mọi thứ được chia thành từng Sprint nhỏ cho phép chúng ta tiếp cận gần nhất với enduser và nhanh chóng tạo ra thành phẩm đáp ứng trọn vẹn mong muốn từ khách hàng, nhưng nhược điểm là các Sprint sẽ được tạo ra liên tục và khó khăn trong việc giữ deadline toàn cục cho tới khi mọi thứ được hoàn thiện. Vậy nên trong một dự án phần mềm ta phải phân tích kỹ xem thử áp dụng cái gì – thời điểm nào là phù hợp nhất, tất nhiên không ai cấm cản việc pha trộn 2 hoặc nhiều Model để tạo ra hiệu suất – hiệu quả tốt nhất, nhắm tới mục đích cuối cùng là tạo ra phần mềm chất lượng cao – đáp ứng mong muốn của khách – keep deadline. Tất nhiên là không phải lúc nào cũng đạt được cùng lúc cả 3 nhưng người quản lý dự án phải biết cách cân bằng, không khách hàng nào muốn nhận sản phẩm tuy có chất lượng nhưng trễ deadline … 1 năm cả, trừ khi đó là dự án xây dựng ở các quốc gia đang phát triển.

2.    Những loại dự án outsourcing công ty đang thực hiện (Về tính chất kỹ thuật và về tính chất hợp đồng)? Trong tương lai những loại dự án chiến lược nào sẽ được nhắm tới?

Câu trả lời: Về phần này tôi xin chỉ nói tới phạm vi có thể công khai được. Các dự án mà công ty đang đảm nhận có 2 phần, 1 phần là các project làm cho khách hàng theo cam kết hợp đồng, phần còn lại là các dự án nghiên cứu để cho ra những ứng dụng mới mang tính đột phá. Vế đầu thì hầu hết là thành công, còn vế thứ 2 có vẻ khó khăn nhưng bất kể một công ty outsource tầm trung trở lên nào đều bắt buộc phải có một cái gì đó riêng, và không có cách nào ngoài bỏ một phần ngân sách đổ vào các Product R&D. Tôi sẽ đi cụ thể hơn về mục 1, những dự án làm outsource cho khách hàng. Nó bao gồm 3 dòng chính : Development, Maintainance, Migration.

–       Development là các dự án phát triển mới mà ngay từ đầu sẽ cùng với khách hàng phân tích yêu cầu, basic design, detail design, code và cuối cùng là test nhằm đảm bảo chất lượng. Thường những dự án kiểu này sẽ ký hợp đồng theo từng giai đoạn dựa trên estimation với input chính là những dữ kiện thu được từ công đoạn-giai đoạn trước đó hoặc đôi lúc là ký hợp đồng theo full scope nhưng sẽ lồng thêm điều kiện thay đổi nếu có sự chênh lệch quá lớn giữa dự toán với thực tế. Estiamtion cho ta biết số người cần thiết trên tổng thời gian triển khai, ví dụ : kết quả đưa ra là 100 MM (man month) cho công đoạn code-test, cần hoàn thành sau 10 tháng (deadline) thì mỗi tháng trung bình sẽ cần tới 10 người (10 người x 10 tháng = 100MM), tuy nhiên người PM sẽ cần cân đo đong đếm để thêm bớt người sao cho hợp lý nhất, mà giai đoạn đầu thường chỉ 5-7 người, giữa tăng lên 15-20 và cuối thì rút bớt lại dev, tăng cường QA để kiểm thử sản phẩm.

–       Maintainance có đặc thù khác, tức là scope (phạm vi) sẽ hẹp hơn, thường chỉ code-test một phần chức năng trong hệ thống lớn. Và khách hàng thường yêu cầu chủ yếu là chỉnh sửa, fix các lỗi của phần mềm sẵn có, thêm bớt các chức năng, hoặc có thể chỉ là sửa lại giao diện phần mềm cho đẹp hơn nhằm tăng cường UI-UX. Và hợp đồng cũng đã được định sẵn một con số để các công ty đấu thầu tham gia, đôi khi sẽ có nhiều vender tham gia với phần việc maintain khác nhau trong software system.

–       Migration thì lại là một bài toán đang dần trở nên phổ biến. Các hệ thống cũ đã lỗi thời lại muốn có các tính năng mới nhưng không thể maintian được, việc development sẽ tốn rất nhiều chi phí và sẽ phát sinh khá nhiều vấn đề không đáng có về mặt nghiệp vụ, vì khó nắm hết được toàn bộ luồng xử lý của hệ thống có tuổi đời vài chục năm. Vậy nên migration chính là lời giải cho vấn đề này. Các kiểu migration phổ biến hiện nay bao gồm : VB -> VB.Net, Lotus Notes -> Sharepoint, any thing -> Java/C# … và cả migration local server lên nền tảng Cloud.

Về mặt xu hướng tương lai thì chúng tôi vẫn đang bắt đầu triển khai một lối đi mới đó là giải pháp phần mềm (software solution) tức là tư vấn khách hàng tối ưu hoá hệ thống mà họ đang có. Có thể kể đến Magento và Salesforce là 2 nền tảng công nghệ tuy không mới, nhưng chúng tôi muốn hướng tới hoàn thiện nó và triển khai cho các khách hàng đang cần, đặc biệt là các khách hàng lớn.

3.   Anh/ chị có tham gia vào quá trình tuyển dụng nhân sự của công ty không?

Nếu có, về vấn đề tuyển dụng nhân sự, theo anh/chị đâu là vấn đề nổi bật mà các dự án đang phải đối mặt trong quá trình tuyển dụng nhân sự? Nguyên nhân của vấn để đó là gì và anh/chị có thể gợi ý một số cách giải quyết vấn đề đó?

Câu trả lời: Tôi thuộc bộ phận phát triển nên cũng đôi lúc nhận nhiệm vụ phỏng vấn mảng kỹ thuật hoặc review CV của các ứng viên để xem họ có hợp với yêu cầu dự án – công ty hay không. Đối với các dự án outsource cho Nhật Bản, vấn đề đau đầu nhất đối với các nhà tuyển dụng là vị trí BrSE – kỹ sư cầu nối. Đối với các vị trí khác như Dev – QA, hoặc ngay cả PM tại Việt Nam không khó khăn để tuyển dụng nhưng BrSE thì khác. Đây là vị trí then chốt mang tính quyết định tới thành công cho dự án. Tuy nhiên lượng cầu đang vượt quá cung. Mặc dù mức lương mà các công ty chào mới có thể nói rất cao so với mặt bằng chung của người làm IT nhưng để đáp ứng hết tất cả yêu cầu rồi nhận việc thường phải trải qua khá nhiều vòng khắt khe và thường không tuyển được ai. Rào cản lớn nhất đó là tính đa năng của vị trí này, vì để làm việc độc lập với khách hàng – quản lý team – support kỹ thuật nội bộ – đưa giải pháp để đàm phán cần người BrSE phải giỏi cả 3 kỹ năng : Tiếng Nhật, Kỹ Thuật, Kỹ năng quản lý. Tuy nhiên cũng đã có nhiều lời giải cho bài toán này, mặc dù chưa được trọn vẹn. Đó là việc tuyển dụng và kết hợp 2-3 người nhằm tạo ra một nhóm mang đủ 3 yếu tố trên thay vì chỉ gói gọn trong 1 người. Ngoài ra đó chính là việc đào tạo nội bộ thay vì tuyển dụng, tuy mất thời gian nhưng có tính lâu dài. Tức là chọn lựa ra các member có tư chất, chỉ thiếu 1 trong 3 yếu tố, hoặc đang có đủ cả 3 nhưng còn yếu sẽ được trải qua các khoá training ngắn hạn (thường mất 6 tháng – 1 năm) nhằm bù đắp các mặt thiếu sót.

Một khía cạnh khác về việc tuyển dụng đó là tâm lý ứng viên, thường thì nhân viên HR không phải ai cũng nắm bắt được nguyện vọng của người ứng tuyển để xem thực sự họ cần một mức lương cao, môi trường cởi mở, giờ làm ngắn để chăm sóc gia đình hay công ty lớn để có thể đảm bảo chế độ visa … hoặc tất cả các yếu tố đó. Giải pháp là phải nói chuyện thật nhiều với các ứng viên cũng như các đồng nghiệp ở các vị trí mà mình muốn tuyển dụng, ngoài ra cần phải có thêm các khoá học cần thiết về cách tìm kiếm thông tin cũng như các khoá học về kỹ năng thuyết phục. Tốt nhất nên chọn giảng viên là người có kinh nghiệm thực tế trong nghề HR nhiều năm chứ không phải các giáo sư tiến sỹ mang nặng lý thuyết mà chưa hề 1 ngày làm công việc tuyển dụng.

4.   Về vấn đề quản lý và nâng cao chất lượng nhân sự, theo anh/chị đâu là vấn đề nổi bật mà các dự án đang phải đối mặt trong quá trình quản lý và nâng cao chất lượng nhân sự? Nguyên nhân của vấn để đó là gì và anh/chị có thể gợi ý một số cách giải quyết vấn đề đó?

Câu trả lời: Vấn đề quản lý và nâng cao chất lượng nhân sự luôn bắt buộc phải song hành lẫn nhau. Nổi bật nhất đó chính là chúng ta sẽ không bao giờ có một team hoàn hảo, điều này xuất phát từ mâu thuẫn giữa level member và cost. Nếu ta có một team toàn người giỏi thì cost bỏ ra sẽ lớn, tuy nhiên hiểu quả thu được có tương xứng với con số bỏ ra (lương – thưởng) hay không thì cần phải suy nghĩ kỹ. Và ngược lại, nếu 1 team toàn người yếu mặc dù lợi về giá nhưng chưa chắc sẽ đưa dự án tới đích, minh chứng là trong làng phần mềm đã có quá nhiều thất bại vì chạy theo lợi ích tạm thời kiểu này. Giải pháp tốt nhất cho việc này là sự cân bằng, nó cũng là 1 quy tắc chuẩn trong estimate. Tức là trộn giữa 3 level (giỏi – trung bình – yếu) để tạo ra 1 team, trường hợp dự án lớn sẽ là 1 bộ bao gồm nhiều team kiểu này và trên cùng sẽ là PM quản lý theo kiểu phân tầng. Việc này ngoài giải quyết bài toán về quản lý sẽ giải quyết luôn bài toán về nâng cao chất lượng nhân sự, vì không có cách học nào tốt hơn là làm dự án thật, người yếu sẽ có cơ hội học hỏi từ người giỏi, còn người giỏi sẽ bắt buộc phải giỏi hơn để vừa đảm nhận task khó của team vừa có kiến thức giúp giải quyết các vấn đề thắc mắc mà member khác cần.

5.    Quan điểm của anh/chị về tầm quan trọng của vấn đề đào tạo nhân sự? Theo anh/chị đâu là những kỹ năng/ kiến thức quan trọng nhất cần đào tạo cho nhân viên trong thời điểm hiện tại nhằm nâng cao chất lượng dự án?

Câu trả lời: Về vấn đề đào tạo nhân sự thực sự quan trọng, cực kỳ quan trọng. Có một hiện trạng đau đầu các nhà quản trị nhân sự trong cộng đồng phần mềm đó là việc câu kéo người của nhau bằng nhiều biện pháp. Ở phạm vi câu hỏi này tôi không đi sâu vào các biện pháp đó, mà chỉ nói lên thực trạng. Bạn cứ liên tưởng việc này giống như 4 tay chơi đang ngồi trong sòng bài, tổng giá trị tài sản sẽ luôn bằng hoặc giảm đi vì nhu cầu các tay chơi vẫn cần ăn uống trong lúc suy nghĩ làm sao để thắng. Và cái mất lớn nhất là mất thời gian của tất cả, tất nhiên tuyển dụng nó không mang ý nghĩa về mặt giải trí như chơi bài. Resource (nhân sự) sẽ luân chuyển giữa các công ty với nhau, và nếu không có đào tạo thì tổng giá trị chất lượng nhân sự sẽ không tăng lên, bên cạnh đó cái mất đi chính là tiền để vận hành bộ máy tuyển dụng cũng như thời gian của các bên. 

Về vấn đề đào tạo cái gì – thế nào để nâng cao chất lượng dự án. Theo kinh nghiệm gần 10 năm làm phần mềm mà tôi có cơ hội trải nghiệm, cách tốt nhất là chia việc đào tạo thành 2 phần : ngắn hạn, dài hạn. 

Đối với hình thức ngắn hạn, đối tượng là những người đã có sẵn nền tảng cũng như bộ yêu cầu gần như đáp ứng được với dự án cần.

  •  Về mặt dự án, Nội dung đào tạo là các bài học ngắn, mục đích đưa member tiếp cận nhanh nhất và gần nhất tới các vấn đề kỹ thuật – nghiệp vụ. Cách thức thì có nhiều nhưng hiệu quả nhất vẫn là những người có kinh nghiệm thực chiến để truyền đạt những điểm cốt yếu nhất tới người tiếp nhận, vì không có nhiều thời gian để lan man với mớ kiến thức tổng quan. Trong các dự án mà tôi đã từng làm sẽ luôn có 1 nhóm ưu tú mở đường, tìm hiểu trước mọi thứ để trainning lại cho các member khác trong team, nhằm đảm bảo 2 yếu tố : tăng hiểu quả công việc  + tiết kiệm thời gian – nhân lực. 
  •  Về mặt công ty cũng cần phải có cách serminal để share knowhow, không chỉ về mặt kỹ thuật mà còn là các kỹ năng mềm như đánh giá – xử lý vấn đề phát sinh trong quá trình làm, và cả kỹ năng làm việc nhóm.

Đối với hình thức dài hạn, đối tượng là những key member trong tương lai, nhằm mục đich đào tạo họ thành những cán bộ chủ chốt, những chiến tướng sau này. Thời gian có thể kéo dài hàng năm. Hình thức sẽ có nội bộ kết hợp với thuê ngoài. Còn nội dung sẽ bao gồm 3 mảng : 

  • Kỹ thuật với các khoá trianning kỹ thuật đặc biệt
  • Kỹ năng quản lý với các khoá học quản lý dự án như PMP và các khoá học nâng cao kỹ năng mềm
  • Tiếng Nhật + business mana bằng các khoá học đào tạo kỹ sư cầu nối, thường là mất từ 6 tháng tới 1 năm. Và tôi cũng đã từng tham gia khoá này cách đây 8 năm, hiệu quả mang lại cực lớn mà trước khi tham gia học viên sẽ không tự đánh gía hết được.

Một số người có ý kiến nên đào tạo về tư duy, mindset nhưng theo ý kiến tôi thì không cần, vì điều này sẽ không có hiệu quả thông qua việc chỉ ngồi lắng nghe và ghi chép. Cách tốt nhất là làm, vấp ngã, tự đứng lên rồi rút ra bài học, nếu có mentor thì quá trình này diễn ra nhanh và đúng hướng hơn. Đây cũng là lý do vì sao một kỹ sư như tôi lại bỗng nhiên trở thành bloger, cũng xuất phát từ mong muốn làm mentor cho các bạn trẻ, giúp các bạn đi đúng hướng, hạn chế các thất bại không đáng có.

6.   Quan điểm của anh/chị về xu hướng nhân sự của ngành IT outsourcing trong tương lai là gì? Trong tương lai gần, công ty có ý định thay đổi hoặc cải thiện bất kỳ hoạt động nào trong việc quản lý cũng như lên kế hoạch hoặc tuyển dụng nhân sự không? Nếu có, anh/chị có thể giải thích thêm về những ý định đó được không?

Câu trả lời: Đó cũng chính là điều mà ban giám đốc công ty đã suy nghĩ và đưa ra giải pháp cách đây hơn 2 năm. Theo như nghiên cứu của tổ chức経済産業省 vào tháng 6/2016 đã chỉ ra sự thiếu hụt trầm trọng của IT Engineer tại Nhật, năm 2019 thiếu khoảng 270 nghìn nhân lực IT, đến năm 2030 sẽ thiếu gần 600 nghìn người. Cùng với đó sẽ có 2 xu hướng chính.

–        Nhập khẩu nhân lực có tay nghề từ nước ngoài, phần nhỏ chuyên gia từ Âu Mỹ còn phần lớn sẽ là lực lượng kỹ sư IT từ các nước khác như Trung Quốc – Ấn Độ – Việt Nam … (tất nhiên Việt Nam chúng tôi cũng có nhiều chuyên gia giỏi chứ không chỉ là Engineer tầm trung)

–       Outsource ra bên ngoài phần việc trong nước (Nhật) không đảm nhận được do thiếu nhân lực.

Phía công ty đã và đang phát triển đồng thời cả 2 mảng. Đối với xu hướng 1 thì giải pháp là thành lập bộ phận 人材紹介 chuyên trách đào tạo và giới thiệu nhân lực có tay nghề cho các công ty cần. Còn với mảng outsource thì vẫn tuyển dụng cả 2 phía Nhật với các nhân lực chất lượng cao có kỹ năng quản lý – tiếng nhật – kỹ thuật, còn phía Việt Nam thì ít khắt khe hơn nhưng vẫn tuân thủ các yêu cầu của dự án, chủ yếu là kỹ năng lập trình. Đồng thời đẩy mạnh khâu đào tạo nội bộ để nâng cao chất lượng nhân sự chứ không chỉ tập trung vào mỗi việc tuyển dụng.

4.2/5 - (5 votes)
Nếu thấy hay thì đừng ngại