Với ý nghĩ này, luận án Thạc sĩ nhằm mục đích hỗ trợ các công ty cải thiện quy trình tuyển dụng và lựa chọn thông qua việc sử dụng tự động hóa quy trình robot và khoa học dữ liệu để hiểu
GIỚI THIỆU ĐỀ TÀI
Hiện nay, thế giới đã giới thiệu nhiều công nghệ, cách các tổ chức đang vận hành, nguồn nhân lực thực hiện nhiệm vụ hằng ngày được hỗ trợ mạnh mẽ bởi các công nghệ phần cứng, phần mềm mới cùng với các thiết bị thông minh Phong cách sống của con người đã bị thay đổi do văn hóa đa quốc gia, sự hợp tác, cùng với các công nghệ mới như Dữ liệu lớn (Big Data), Internet vạn vật (IoT), Học sâu (Deep Learning), Học máy (Machine Learning), Trí tuệ nhân tạo (AI) và các công nghệ liên quan khác Bên cạnh đó, các ứng dụng tự động hóa quy trình bằng rô-bốt được phát hiện và hiện đang bắt đầu tác động đến quy trình quản lý nhân sự
Tự động hóa quy trình bằng rô-bốt (RPA) là một công nghệ mới nổi trong ngành tuyển dụng và sẽ giúp các ngành khác nhau tiến bộ và cạnh tranh để giúp doanh nghiệp luôn dẫn đầu trên thị trường Hầu hết các bộ phận nhân sự của bất kỳ doanh nghiệp nào đều chịu trách nhiệm về nhiều nhiệm vụ trong quá trình từ tuyển dụng, lựa chọn nhân sự cho đến khi nghỉ hưu, trong đó có nhiều hoạt động lặp đi lặp lại, tiêu tốn thời gian và một số công việc cần hoàn thành vẫn phụ thuộc vào quy trình thủ công Quy trình này khá tốn kém và không hiệu quả, đôi khi sẽ dẫn đến tỷ lệ gây lỗi cao hơn
Tự động hóa quy trình bằng rô-bốt là một phần mềm nhúng công nghệ sử dụng rô-bốt để thay thế các hành động của con người nhằm thực hiện các nhiệm vụ quản trị Phần mềm RPA tích hợp với các chức năng & công cụ hiện có để xử lý các tác vụ cơ bản thông qua tự động hóa và nhờ đó giảm tiêu tốn thời gian, gánh nặng chi phí cho quy trình, bên cạnh việc hoàn thành các tác vụ riêng lẻ
MỤC TIÊU, GIỚI HẠN VÀ ĐỐI TƯỢNG NGHIÊN CỨU
Mục tiêu
Bài nghiên cứu “Ứng dụng RPA tự động hóa quy trình nghiệp vụ tuyển dụng nhân sự” này được thực hiện với mục đích:
- Giả lập việc thực hiện tuyển dụng trên môi trường thực tế
- Nghiên cứu quy trình tuyển dụng hiện tại nói chung (As-is)
- Nghiên cứu, mô phỏng cách vận dụng phần mền tự động hóa quy trình UiPath vào quy trình tuyển dụng thực tế
- Đề xuất một số quy trình mới phù hợp hơn mang tính khái quát với sự tích hợp của phần mền tự động hóa (To-be)
Từ đó, giúp mang lợi ích cho doanh nghiệp như:
- Giảm thời gian thực hiện quy trình tuyển dụng
- Giảm tải khối lượng công việc tuyển dụng, các công việc mang tính lặp đi lặp lại, nâng cao năng suất làm việc.
Giới hạn và đối tượng nghiên cứu
Nghiên cứu này đưa ra quy trình tuyển dụng chung sử dụng công nghệ RPA nhưng không đề cập đến quy trình, hệ thống cụ thể của từng doanh nghiệp Ngoài ra, nghiên cứu chỉ giới hạn ứng dụng tự động hóa dựa trên phần mềm UiPath.
- Quy trình nghiệp vụ tuyển dụng nhân sự dưới góc độ của nhà tuyển dụng
PHƯƠNG PHÁP NGHIÊN CỨU
Cơ sở lý thuyết
1 Quy trình tuyển – chọn ứng viên:
Tuyển dụng là quá trình cung cấp cho tổ chức một nhóm ứng viên đủ tiêu chuẩn để lựa chọn Quy trình tuyển dụng bao gồm bốn bước:
Hình 3.1 Quy trình tuyển dụng (nguồn: open.lib.umn.edu,2016)
1.1.1 Xác định nhu cầu tuyển dụng:
Trước khi các công ty tuyển dụng, họ phải thực hiện các kế hoạch nhân sự phù hợp và dự báo trước để xác định họ sẽ cần bao nhiêu người Cơ sở của dự báo sẽ là ngân sách hàng năm của tổ chức và các kế hoạch ngắn hạn đến dài hạn của tổ chức Dự báo dựa trên cả yếu tố bên trong và bên ngoài
Các yếu tố bên trong bao gồm:
• Hạn chế về ngân sách
• Dự kiến hoặc xu hướng nghỉ việc của nhân viên
• Doanh số tăng hoặc giảm
• Kế hoạch mở rộng thị trường
Các yếu tố bên ngoài có thể bao gồm:
• Những thay đổi trong công nghệ
• Những thay đổi trong luật
• Sự thay đổi ở khu vực thành thị, ngoại ô và nông thôn
• Tính cạnh tranh của thị trường
Sau khi dữ liệu dự báo được thu thập và phân tích, chuyên gia nhân sự có thể thấy những nút thắt đang tồn tại và bắt đầu tuyển dụng những cá nhân có kỹ năng, trình độ học vấn và nền tảng phù hợp
1.1.2 Phát triển bảng phân tích công việc:
Phân tích công việc là một kỹ thuật có hệ thống để xác định những nhiệm vụ mà mọi người thực sự hoàn thành trong công việc Phân tích công việc được sử dụng để xác minh rằng công việc và người đó có phù hợp hay không, cũng như để thiết lập cách đo lường hiệu suất của nhân viên Phân tích dựa trên nhiệm vụ tập trung vào các nhiệm vụ công việc, trong khi phân tích dựa trên năng lực tập trung vào kiến thức và khả năng cụ thể mà một người nên có để thực hiện công việc Một bảng câu hỏi phân tích công việc thường bao gồm các loại câu hỏi sau, rõ ràng là tùy thuộc vào loại ngành:
• Thông tin nhân viên: như chức danh công việc, đảm nhiệm bao lâu, trình độ học vấn, kinh nghiệm bao nhiêu năm trong ngành
• Nhiệm vụ và trách nhiệm chính: mô tả công việc hàng ngày, công việc…
Đưa ra quyết định và giải quyết vấn đề: Yêu cầu nhân viên liệt kê các tình huống mà nhân viên phải giải quyết vấn đề, loại quyết định được thực hiện hoặc giải pháp được đưa ra.
• Mức độ thân thiện: với đồng nghiệp, người quản lý, khách hàng…
• Yêu cầu về thể chất của công việc, chẳng hạn như khối lượng công việc nặng nhọc hoặc khả năng nhìn, nghe hoặc đi lại
• Năng lực cá nhân cần thiết để thực hiện công việc—tức là, các đặc điểm cá nhân cần thiết để thực hiện tốt ở vị trí tuyển dụng
• Các kỹ năng cụ thể cần thiết để thực hiện công việc
• Các chứng chỉ để thực hiện công việc
1.1.3 Viết bản mô tả công việc và tiêu chuẩn công việc:
Cả bản mô tả công việc và yêu cầu công việc đều được viết dựa trên kết quả thông tin thu thập được từ phân tích công việc Phần đầu là danh sách các nhiệm vụ, trách nhiệm và nghĩa vụ của một vị trí Phần sau thể hiện các kỹ năng và tài năng mà một
5 người phải sở hữu để thực hiện công việc Cả hai được gắn với nhau, vì mô tả công việc thường được viết để bao gồm các đặc tả công việc
Sau khi hoàn thành phân tích công việc, mô tả công việc và thông số kỹ thuật phải bao gồm các yếu tố sau để đảm bảo sự toàn diện và rõ ràng:
• Tên công việc, chức vụ, phòng ban
• Nhiệm vụ và trách nhiệm công việc
• Trình độ và Kỹ năng công việc
• Quyền lợi và mức lương cho nhân sự
1.1.4 Tìm kiếm nguồn nhân sự tài năng:
Xác định đúng tài năng, thu hút họ và thúc đẩy họ nộp đơn là những khía cạnh quan trọng nhất của quá trình tuyển dụng Có thể tìm kiếm nguồn ứng viên bằng cách quảng cáo nội bộ để tạo sự giới thiệu trong doanh nghiệp sau đó đăng tin trên các trang mạng xã hội phổ biến và ứng dụng tìm kiếm việc làm
Để tiếp cận nhiều ứng viên hơn, các nhà tuyển dụng có thể tham gia các hội chợ việc làm, đồng thời đăng tải thông tin tuyển dụng trên các ấn phẩm uy tín trong ngành.
Nói chung, có hai nguồn tuyển dụng có thể được khai thác để tìm kiếm tài năng:
- Nguồn tuyển dụng nội bộ
Khi các nhà tuyển dụng sử dụng các nguồn nội bộ để tuyển dụng, nó có tác dụng thúc đẩy các nhân viên hiện tại làm việc hiệu quả hơn và tối đa hóa sự hài lòng trong công việc cũng như cảm giác an toàn của họ Việc tuyển dụng thông qua các nguồn nội bộ cũng làm giảm tỷ lệ hao hụt cùng với chi phí và công sức
• Chuyển giao : Nhà tuyển dụng có thể lấp chỗ trống ở một vị trí khác mà không có bất kỳ thay đổi nào về vai trò, địa vị hoặc mức lương của nhân viên bằng cách chuyển một ứng viên phù hợp từ trong tổ chức
• Tăng cấp bậc và lương: Vị trí tuyển dụng cũng có thể được lấp đầy bằng cách đề nghị một nhân viên có hiệu suất cao đảm nhận một vị trí cấp cao trong tổ chức để giải quyết các trách nhiệm bổ sung cùng với việc tăng lương Điều đó giúp doanh nghiệp chắc chắn được năng lực của ứng viên và tiết kiệm thời gian cũng như chi phí tuyển dụng
• Các ứng viên trước đây: Việc lưu giữ những ứng viên đã nộp đơn trước đó sẽ tạo ra một cơ sở dữ liệu dồi dào Có thể liên hệ với họ khi các vị trí phù hợp mở ra
Nhân viên hiện tại là những người ủng hộ ẩn danh có thể truyền bá thông tin và tạo tiếng vang cho các vị trí tuyển dụng trên các tài khoản mạng xã hội cá nhân của họ, từ đó giúp bạn thu hút thêm nhiều ứng viên tiềm năng.
- Nguồn tuyển dụng bên ngoài
Công nghệ ứng dụng
UiPath là một công ty phần mềm có nguồn gốc từ Romania, chuyên về tự động hóa quy trình UiPath dẫn đầu trong Báo cáo Forrester Wave, bao gồm 14 nhà cung cấp Công ty đã nhận được điểm số cao nhất cho “Chiến lược”, “Sự hiện diện trên thị trường” và cho các chức năng RPA như phát triển rô-bốt, giao diện người dùng cốt lõi và các chức năng của máy tính để bàn (Forrester, 2021)
Nền tảng UiPath bao gồm ba thành phần chính: UiPath Studio, UiPath Orchestrator và UiPath Robot UiPath Studio là môi trường phát triển dùng để xây dựng quy trình tự động hóa Người dùng có thể dễ dàng mô hình hóa quy trình nghiệp vụ từ đầu đến cuối thành dạng sơ đồ Sau khi quy trình được thiết kế trong UiPath Studio, UiPath Robot sẽ tự động hóa quy trình bằng cách phân bổ các nhiệm vụ khác nhau và thực hiện giống như con người mà không cần sự can thiệp thủ công UiPath Orchestrator được sử dụng để kiểm soát, quản lý robot và cung cấp thông tin phân tích về quá trình thực hiện tự động hóa.
UiPath Studio là một môi trường phát triển trực quan nơi nhiều loại quy trình khác nhau được tự động hóa bằng cách thiết kế theo cách trực quan Đó là một môi trường mã thấp, nơi việc xây dựng quy trình làm việc trong studio được thực hiện bằng cách kéo và thả các hoạt động Ứng dụng UiPath Studio được xây dựng dựa trên Windows
The Workflow Foundation of the Net Framework is required for this application to run on a Microsoft Windows machine (UiPath, 2022) There are three main types of workflows in UiPath Studio, including sequences, flowcharts, and state machines.
Hình 3.7 Giao diện UiPath Studio
Trình tự là loại phần nhỏ nhất và hoạt động như một thùng chứa riêng lẻ kết nối một số hoạt động Khi thực hiện quy trình công việc, các hoạt động bên trong chuỗi được thực hiện từ trên xuống dưới UiPath Studio dường như không có mã trên Giao diện người dùng (UI) vì chức năng lập trình được chứa trong các hoạt động Tuy nhiên, vì nó được phát triển trên Net Framework, nó hỗ trợ tất cả các loại biến VB.Net ngoài các loại biến riêng của chúng, cũng như cách sử dụng các hàm Net khi làm việc với các biến này trong các hoạt động (UiPath, 2022)
Hình 3.8 Các phần chính trong UiPath Studio
Các tab ruy-băng (1) hiển thị ba khu vực chính trong UiPath Studio
• Home bao gồm mở và tạo dự án, định cấu hình UiPath Studio, cài đặt
• Design là khu vực tự động hóa quy trình được xây dựng bằng cách sử dụng các công cụ và hoạt động có sẵn từ Bảng hoạt động (2)
• Debug là nơi có thể thiết lập một bộ công cụ toàn diện để gỡ lỗi quy trình công việc
Bảng Hoạt động (2) bao gồm nhiều hoạt động có sẵn khác nhau giúp nâng cao hiệu quả quy trình làm việc Người dùng có thể tìm kiếm hoạt động cần thiết theo tên hoặc mô tả, sau đó dễ dàng kéo và thả vào dự án hiện tại Trong UiPath Studio, một số hoạt động mặc định bao gồm:
Tích hợp ứng dụng bao gồm toàn bộ các hoạt động từ đọc tệp CSV, Excel và Thư đến truy xuất dữ liệu từ những ứng dụng đó và cả trả lời và gửi email.
• Computer Vision là một hoạt động trí tuệ nhân tạo cho phép hệ thống nhìn, nhận dạng và phân tích tất cả các yếu tố giao diện
• Orchestrator bao gồm việc thêm các cảnh báo tùy chỉnh và đưa ra các yêu cầu
HTTP tới API của Orchestrator
• Programing bao gồm tạo, gộp bảng dữ liệu, sửa lỗi, định dạng giá trị
• System bao gồm việc quản lý các quy trình, chẳng hạn như lấy quy trình, hủy quy trình, phạm vi kích hoạt, v.v Ngoài ra, có tùy chọn gọi VBScript hoặc Power Shell
• UI Automation chứa tất cả các hoạt động cơ bản cần thiết để tạo các dự án tự động hóa Chẳng hạn, mở trình duyệt, nhấp vào phần tử giao diện người dùng, di chuột, chụp ảnh màn hình
• User Events có thể được sử dụng để kích hoạt một trình tự cụ thể khi nhà phát triển nhấp vào một phần tử hoặc hình ảnh
• Workflow làm việc bao gồm các chức năng để kiểm soát quy trình làm việc Có các vòng lặp While, vòng lặp For Each, vòng lặp Repeat Number of Times, vòng lặp Break (UiPath, 2022)
Bảng thiết kế (3) hiển thị quy trình tự động hóa hiện tại, cho phép người dùng thực hiện các thay đổi và cung cấp quyền truy cập nhanh vào các biến, đối số và nhập (4)
Các biến được sử dụng để lưu trữ nhiều loại dữ liệu UiPath Studio hỗ trợ nhiều loại như văn bản, số, đúng hoặc sai, bảng dữ liệu, ngày và giờ Bảng 2 mô tả các loại biến khác nhau trong UiPath Studio
Bảng 3.2 Các loại thuộc tính
Thuộc tính Mô tả Loại thuộc tính
Biến văn bản có thể được sử dụng để lưu trữ giá trị văn bản như tên người dùng, tên nhân viên và chuỗi khác string
Số (Number) Biến số được dùng để lưu thông tin số Int32 Đúng hoặc sai
Biến này có hai giá trị có thể, đúng hoặc sai Nó có thể được sử dụng để đưa ra quyết định boolean
Biến bảng dữ liệu là một cấu trúc dữ liệu dùng để lưu trữ một tập hợp các giá trị Biến này có thể hoạt động như một cơ sở dữ liệu hoặc một bảng tính với nhiều hàng và cột, cho phép truy xuất và thao tác dữ liệu một cách hiệu quả.
(Date and time) Được sử dụng để lưu trữ thông tin về ngày và giờ System.DateTime
UiPath Selector là một công nghệ mà UiPath đã phát triển để xác định các phần tử hoặc đối tượng trên giao diện người dùng trong khi tương tác với bất kỳ hệ thống ứng dụng nào Bộ chọn là một chuỗi XML, lưu trữ các thuộc tính của phần tử GUI và phần tử cha của nó Bộ chọn do UiPath Studio tạo tự động, nhưng chúng cũng có thể được tạo thủ công và tùy chỉnh để có độ chính xác và mạnh mẽ hơn
UiExplorer là một công cụ nâng cao do UiPath phát triển để tạo bộ chọn tùy chỉnh cho các phần tử giao diện người dùng cụ thể Công cụ này có chức năng xác định và xác thực các phần tử hiện có Ngoài ra, UiExplorer còn cung cấp bảng điều khiển phân cấp trực quan dưới dạng cây cho phép người dùng điều hướng và tương tác với cấu trúc giao diện người dùng một cách dễ dàng.
THỰC NGHIỆM
Quy trình lựa chọn ứng viên hiện tại (As-Is)
Hình 4.1 Quy trình lựa chọn ứng viên hiện tại (As-is)
2 Các thách thức trong quy trình lựa chọn ứng viên:
2.1 Tiếp nhận hồ sơ ứng viên – Lựa chọn ứng viên phỏng vấn:
Ở bước sàng lọc hồ sơ ban đầu, nhà tuyển dụng tiến hành xem xét các thông tin trong hồ sơ và lý lịch trích xuất từ danh sách hồ sơ ứng tuyển Họ áp dụng phương pháp quét thông tin thủ công để xác định những ứng viên phù hợp với yêu cầu công việc Tuy nhiên, phương pháp này có thể dẫn đến sự hiểu lầm hoặc bỏ sót thông tin quan trọng, dẫn đến việc loại bỏ nhầm những ứng viên có năng lực.
Theo Ladders Inc (2018), các nhà tuyển dụng xem sơ yếu lý lịch trung bình 7 giây/ ứng viên, so với chỉ 6 giây/ ứng viên vào năm 2012 Ngày nay, các nhà tuyển dụng chỉ lướt qua sơ yếu lý lịch trong trung bình 7,4 giây Tuy nhiên, việc chọn người phỏng vấn xin việc từ sơ yếu lý lịch chỉ trong 7,4 giây có phải là quá nhanh? Điều đó có thể xảy ra nếu đây chỉ ở vòng loại đầu tiên Nếu số lượng ứng viên vượt qua vòng tuyển chọn đầu tiên nhiều hơn số lượng cuộc gọi phỏng vấn Tất nhiên sẽ có vòng loại thứ hai toàn diện hơn Tùy thuộc vào công ty và bộ phận nhân sự của công ty, việc cân nhắc việc mời người đến phỏng vấn sẽ tốn nhiều hay ít thời gian Tuy nhiên, đây là một nhiệm vụ lặp đi lặp lại và có thể có sai sót hoặc sai lệch do con người thực hiện Nếu quy trình này mất nhiều thời gian, chắc chắn nó cũng sẽ ảnh hưởng đến các quy trình tuyển dụng khác Theo thống kê từ Glassdoor (2015) chỉ ra rằng mỗi vị trí ứng tuyển được mở sẽ thu hút 250 hồ sơ 4 đến 6 ứng viên trong số đó sẽ được liên hệ để phỏng vấn, nhưng chỉ một người sẽ được chọn vào vị trí này Đây là một ví dụ khác về việc tất cả các sơ yếu lý lịch có thể mất nhiều thời gian để được xem xét cho một vị trí và điều này có thể khiến quá trình tuyển dụng người làm việc tốn nhiều thời gian hơn Báo cáo Quốc gia Nhà tuyển dụng (Jobvite, 2021) cho thấy chỉ 16% nhà tuyển dụng tuyển được nhân sự trong vòng 14 ngày, nhưng hơn 54% và 21% nhà tuyển dụng lần lượt tuyển được nhân sự trong vòng lần lượt 14-30 ngày và 31-60 ngày
2.2 Phỏng vấn điện thoại và Lên lịch hẹn phỏng vấn trực tiếp:
Sau khi đã tiếp nhận ứng viên, nhà tuyển dụng tiếp tục gọi phỏng vấn để đánh giá lại những thông tin chung của ứng viên ghi trong hồ sơ; đồng thời sắp xếp thời gian phỏng vấn sao cho phù hợp với người phỏng vấn và người được phỏng vấn Nhiệm
26 vụ này có thể mất nhiều thời gian hơn do phải phân bổ người và lịch trình của họ vì nó đòi hỏi nhiều cuộc trao đổi qua lại Đặc biệt, việc gửi thư mời phỏng vấn cũng là một thách thức đối với họ bởi họ không chỉ cần khuyến khích ứng viên đến dự phỏng vấn mà còn phải giữ liên lạc với ứng viên như một người bạn hoặc một mối quan hệ thân thiết để duy trì mạng lưới nếu ứng viên từ chối phỏng vấn xin việc
2.3 Gửi thông báo từ chối cho Ứng viên và Gửi lời mời làm việc cho Ứng viên:
Sau khi phỏng vấn, nhà tuyển dụng sẽ gửi email thông báo kết quả cho ứng viên Việc gửi email là một công việc thường ngày, lặp đi lặp lại đối với các nhà tuyển dụng, bất kể mục đích của email là gì.
Emily Hackeling (2020) cũng chỉ ra rằng một người trung bình dành 28% thời gian làm việc trong tuần cho email, hơn 11 giờ một tuần Với một người trung bình gửi và nhận 124 email mỗi ngày hoặc 620 email mỗi tuần, chúng ta sẽ dành trung bình 1,1 phút cho mỗi email Bên cạnh đó, Deb Tennen (2019) cũng chia sẻ rằng để công việc trở nên hiệu quả, một email lý tưởng nên viết trong vòng 30 giây, và không quá
Quy trình đề xuất (To-be)
27 Hình 4.2 Quy trình lựa chọn ứng viên đề xuất (To-be)
So với quy trình hiện tại, quy trình đề xuất tích hợp RPA vào các bước tiếp nhận hồ sơ, trích xuất dữ liệu ứng viên, gửi lịch phỏng vấn, báo kết quả ứng tuyển Điều này giúp giảm đáng kể thời gian xử lý và hạn chế thiếu sót, từ đó nâng cao chất lượng tuyển dụng Mặc dù ban đầu đòi hỏi một khoản đầu tư lớn, nhưng về lâu dài, chi phí sẽ được tiết kiệm đáng kể nhờ hiệu quả vận hành tự động của RPA.
Chi tiết các tác vụ, quy trình tích hợp RPA sẽ được trình bày ở các mục bên dưới
2 Quy trình tiếp nhận và đánh giá hồ sơ ứng viên:
2.1 Mô hình hóa quy trình:
Hình 4.3 Quy trình tự động Chọn lọc ứng viên
- Xây dựng rô-bốt hỗ trợ tải các file hồ sơ ứng viên thông qua email gửi cho nhà tuyển dụng
- Đọc và trích xuất thông tin ứng viên
- Gửi kết quả thông tin ứng viên về cho bô phận tuyển dụng
2.3 Các bước thực hiện trong quy trình:
2.3.1 Tạo thư mục mới (theo ngày chạy job) Đầu tiên, rô-bốt tiến hành tạo tạo thư mục chứa các file
Hình 4.4 Quy trình tạo thư mục mới
2.3.2 Tải file từ Outlook Để lấy các file mà ứng viên đã gửi về địa chỉ email của Phòng tuyển dụng, trước khi hết địa chỉ email phải có giao thức hỗ trợ cho phép người dùng đọc email thông qua các ứng dụng trung gian Vì vậy, việc xuất chủ đề sẽ dựa trên Outlook của Microsoft sẽ được dùng để truy cập email và tải file Khi đã lựa chọn được phương thức kết nối, tiến hành thiết lập vào Activity:
UiPath.Mail.Outlook.Activities.GetOutlookMailMessages trong UiPath Studio với cấu hình như sau:
Hình 4.5 Cấu hình email Chi tiết các thông số của cấu hình bao gồm:
- DislayName: Tên của hoạt động
- TimeoutMS: Thời gian cụ thể của hoạt động để chờ trước khi xuất hiện
- Account: Tài khoản đăng nhập
- MailFolder: Thư mục để truy xuất mail
- Private: Nếu được chọn thì các giá trị của biến và đối số sẽ không được sử dụng ở các hàm khác
- Filter: Điều kiện lọc mail
- FilterByMessages: Điều kiện lọc mail chứa những thông tin được chỉ định
- MarkAsRead: Đánh dấu mail đã được đọc hay không
- OnlyUnreadMessages: Chỉ đọc những mail chưa được đọc
- OrderByDate: Thứ tự ưu tiên đọc mail theo ngày
- Top: lấy số lượng mail đầu tiên
- Message: Biến được gắn để lưu mail
Sau khi thiết lập xong tài khoản email, thiết lập quy trình đọc từng email và tải và lưu file đính kèm vào thư mục chỉ định (Attachments_Folder "C:\Users\Max\Desktop\UIpath_thesis\Data\Attachments")
Hình 4.6 Quy trình tải file đính kèm trong email
2.3.3 Phân loại danh sách file là hồ sơ ứng viên
Sau khi hoàn tất việc tải các file, để thống nhất định dạng file hỗ trợ các bước tiếp theo, tác giả thiết lập chuyển đổi các file có định dạng là doc hoặc docx (Word) sang định dạng pdf như sau:
- files: Biến xác định thông tin các file trong thư mục
- Condition: path.GetExtension(currentItem)= ".doc" or path.GetExtension(currentItem)= ".docx" nhằm lấy ra các file có định dạng là .doc và docx để tiến hành chuyển đổi
- File path to save as: "C:\Users\Max\Desktop\UIpath_thesis\Data\Attachments\"+ Path.GetFilename(currentItem) + ".pdf" để xác định tên file được lưu sau khi chuyển đổi
Hình 4.7 Quy trình chuyển file dạng word sang pdf Sau khi đã chuyển đổi định dạng file sang pdf, robot sẽ tiến trình đọc từng file định dạng pdf bằng cách sử dụng công cụ OCR của UiPath OCR này được cấu hình như hình
Hình 4.8 Thông số cấu hình OCR
Với kết quả đọc được trên, robot sẽ so sánh với các từ khóa đã định nghĩa nhằm xác định file đã đọc có phải là hồ sơ ứng viên hay không Các từ khóa được khai báo bao gồm: CV, Resume, Professional, executive summary, professional experience, Skills, Education, Work Experience Trường hợp thông tin file có chứa thông tin của từ khóa, robot sẽ di chuyển file sang thư mục đã tạo từ 1.3.1 Trường hợp còn lại sẽ được di chuyển sang mục khác
Hình 4.9 Quy trình phân loại file
Vì vậy, sau bước thực hiện này, các file hồ sơ ứng viên đã được phân loại, phục vụ cho các bước tiếp theo
2.3.4 Phân tích hồ sơ ứng viên:
Bằng việc tận dụng khả năng nhận thức con người, các cá nhân hoặc nhà tuyển dụng có thể dễ dàng nhận biết và xác định từng thành phần của bản mô tả công việc, từ đó nắm bắt thông tin cần thiết Tuy nhiên, tự động trích xuất và nhận dạng dữ liệu lại là một thách thức đối với máy tính Vì vậy, khi ứng dụng AI để trích xuất dữ liệu, con người cần huấn luyện dữ liệu bằng một lượng mẫu khổng lồ để phân loại tiểu sử theo bố cục và thông tin của nó Để tiết kiệm thời gian xây dựng mô hình máy học, việc tích hợp với một bên thứ ba như Edenai.co là lựa chọn phù hợp Các trường dữ liệu dự kiến được trích xuất bao gồm:
[1]: Phần Thông tin cá nhân: Họ tên khách hàng, chức danh, điện thoại, email và link
[2]: Phần kỹ năng: Danh sách bộ kỹ năng của ứng viên
[3]: Phần Ngôn ngữ: Danh sách ngôn ngữ của ứng viên
[4]: Phần tóm tắt: Mô tả ngắn gọn về đam mê, điểm mạnh, điểm yếu, thành tích,…
[5]: Phần Kinh nghiệm làm việc: Tên công ty cũ, vị trí công việc trước đây, trách nhiệm công việc, thời gian làm việc, thành tích nổi bật (nếu có)
[6]: Phần giáo dục: Tên trường cũ, thời gian học và chuyên ngành
[7]: Phần chứng chỉ: danh sách các chứng chỉ đã đạt được của thí sinh
Tác giả tiến hành kết hợp gọi API với Edenai.co với cấu hình (theo hướng dẫn của Edenai.co) như sau:
- End point: điểm cuối gọi API
- Timeout: Thời gian chờ trước khi lệnh được thực thi
- Request Method: phương thức yêu cầu
Các thông số cần thiết để gọi API bao gồm Authorization (key để đăng gọi API), Providers (nhà cung cấp dịch vụ) và Language (ngôn ngữ sử dụng) Trong trường hợp này, tác giả sử dụng Affinda làm nhà cung cấp dịch vụ và tiếng Anh làm ngôn ngữ giao tiếp.
- Attachment: o File: file hồ sơ ứng viên
- Output: o Reponse content: kết quả trả về
37 Hình 4.10 Cấu hình kết nối API
Hình 4.11 Quy trình phân tích hồ sơ ứng viên
2.3.5 Gửi kết quả phân tích:
Sau khi hoàn thiện kết quả phân tích ứng viên, rô-bốt sẽ tự động gửi kết quả với nội dung như sau:
- To: địa chỉ người nhận
Datetime.Now.ToLocalTime().Tostring("ddMMyyyy") là tiêu đề gửi mail
- Body: "Please find candidate list file " +
Datetime.Now.ToLocalTime().Tostring("ddMMyyyy") + "above" là nội dung email sẽ gửi
Attachments_Folder+Datetime.Now.ToLocalTime().Tostring("ddMMyyyy")
+"\"+"CandidateInfo_"+Datetime.Now.ToLocalTime().Tostring("ddMMyyyy")
+".csv" là file sẽ gửi thông tin
Hình 4.12 Nội dung gửi email báo cáo
- Đầu vào: là các hồ sơ ứng viên đã gửi email
Hình 4.13 Danh sách hồ sơ ứng viên
Bảng 4.1 Kết quả kiểm thử
Số lượng hồ sơ trích xuất thông tin 5
Số lượng email đã gửi 1
Hình 4.14 Kết quả chạy thực nghiệm
Hình 4.15 Email báo kết quả
Hình 4.16 Nội dung file đính kèm
2.5 Đánh giá hiệu quả quy trình:
Với kết quả chạy thực nghiệm, tác giả đo lường hiệu quả quy trình như sau:
- Thời gian: tính thời gian xem nhanh hồ sơ và nhập liệu (300s cho cập nhật dữ liệu + 7s đọc hồ sơ)
- Chi phí: không có số liệu của chi phí tuyển dụng; số tiền phải trả cho EdenAI cho việc trích xuất dữ liệu
- Chất lượng: số lần hoàn thành việc xem và nhập liệu hồ sơ
- Linh hoạt: o Trước khi biến đổi: xem hồ sơ và nhận liệu o Sau khi biến đổi: xem hồ sơ
Bảng 4.2 Đánh giá hiệu quả quy trình
Thời gian Chi phí Chất lượng Linh hoạt
Trước khi biến đổi 307s - 1 lần 2 bước
Sau khi biến đổi 58s $0,07 ~5,3 lần 1 bước
3 Quy trình Phỏng vấn điện thoại và Lên lịch hẹn phỏng vấn trực tiếp:
3.1 Mô hình hóa quy trình:
Hình 4.17 Quy trình phỏng vấn điện thoại và lên lịch hẹn phỏng vấn
- Xây dựng rô-bốt hỗ trợ nhà tuyển dụng gửi thông tin lịch hẹn phỏng vấn
3.3 Các bước thực hiện trong quy trình:
Bước 1: Gọi điện thoại phỏng vấn và lên lịch phỏng vấn:
Sau khi lựa chọn ứng viên phù hợp, nhà tuyển dụng sẽ gọi phỏng vấn vòng 1 Khi cảm thấy ứng viên phù hợp với mục tiêu tuyển dụng, nhà tuyển dụng sẽ lên lịch phỏng vấn với ứng viên (thời gian, địa điểm phỏng vấn)
Bước 2: Cập nhật thông tin lịch hẹn phỏng vấn trong file excel
Sau khi hoàn tất cuộc gọi phỏng vấn, nhà tuyển dụng cập nhật thông tin theo template:
Bảng 4.3 Nội dung cập nhật lịch hẹn phỏng vấn
No số thứ tự tăng dần
Candidate Name Tên ứng viên
Applied Position Vị trí ứng tuyển
Interview Date Ngày phỏng vấn
Interview Time Giờ phỏng vấn
Interviewer Tên người phỏng vấn
Email receive Email ứng viên
Created Date Ngày gọi phỏng vấn
Send Email Đã gửi kêt quả phỏng vấn chưa? (“X”: có, trống: không) Ô cập nhật
Thiết lập mở file excel cần đọc lấy thông tin để tạo lịch phỏng vấn
"C:\Users\Max\Desktop\UIpath_thesis\EmailsToSend_Interview.xlsx" xác định file excel cần đọc o Reference as: định dạng file
Hình 4.18 Cấu hình mở file excel chỉ định
Bước 4: Đọc thông tin trong file excel:
Chỉ định đọc từng dòng của file excel để xác định thông tin của từng ứng viên
Trong đó: o For each: CurrentRow xác định rô-bốt cần đọc từng dòng thông tin trong bảng file excel o In range: Excel.Sheet("Sheet1") xác định phạm vi (trang) để rô-bốt đọc thông tin o Has header: xác định bảng có tiêu đề, xác định được tên các cột
Hình 4.19 Cấu hình nội dung excel cần lấy thông tin
Xây dựng hàm điều kiện gửi email phỏng vấn để có thể lọc ra những ứng viên chưa được gửi lịch phỏng vấn
Theo đó: o Condition (điều kiện): CurrentRow.ByField("Send Email") "X" để lấy được ứng viên đủ điều kiện gửi lịch phỏng vấn
Hình 4.20 Điều kiện gửi lịch phỏng vấn
Bước 5: Tạo thư mời phỏng vấn:
When there is a flow of information of qualified candidates, the robot will proceed to create an interview schedule Accordingly: Account: hr_recruitment@outlook.com.vn is the email of the recruiter to send information to candidates: Title/Subject: "Interview Invitation: " + CurrentRow.ByField("Candidate Name") + " - " + CurrentRow.ByField("Job Title") + " - " + CurrentRow.ByField("Requisition ID") + " - " + CurrentRow.ByField("Company Name") + " - " + CurrentRow.ByField("Candidate Email").
Name") là dòng tiêu đề email Thông tin được lấy từ cột Candidate Name trong file excel o Required attendees: CurrentRow.ByField("Email receive") là email của ứng viên tham dự phỏng vấn, được lấy từ cột Email receive o Start date: CurrentRow.ByField("Interview Date") là ngày phỏng vấn, được lấy từ cột Interview Date o Start time: CurrentRow.ByField("Interview Time") là giờ phỏng vấn, được lấy từ cột Interview Time o Location: "Head Office" là địa diêm phỏng vấn o Email body: Nội dung email gửi có dạng:
"Dear " + CurrentRow.ByField("Candidate Name") + "," +
46 vbCrLf + vbCrLf + "Thank you for applying to become a part of our team." + vbCrLf + vbCrLf + "We would like to invite you for an interview via MS Teams to share more about the position, get to know you better, and see if this job is right for you Details are as below:" + vbCrLf + vbCrLf + "Position: " + CurrentRow.ByField("Applied Position") + "." + vbCrLf + "Date: " + CurrentRow.ByField("Interview Date") + "" + vbCrLf + "Time: " + CurrentRow.ByField("Interview Time") + vbCrLf + "Location: Head Office" + vbCrLf + "Duration: 60 mins" + vbCrLf + "Interviewer: " + CurrentRow.ByField("Interviewer") + vbCrLf + vbCrLf + "You can always reach out to me if you have any questions before the interview." + vbCrLf + vbCrLf + "I look forward to meeting you." + vbCrLf + vbCrLf + "Best regards," + vbCrLf + vbCrLf + "Recruitment Team "
Hình 4.21 Cấu hình gửi lịch phỏng vấn
Bước 6: Gửi thư mời phỏng vấn:
Sau khi tạo thành công, rô-bốt sẽ tiến hành gửi thông tin cho ứng viên với các nội dung trong bước 5
Bước 7: Cập nhật trạng thái đã gửi:
Sau khi gửi thành công, rô-bốt sẽ tự động cập nhật trạng thái đã gửi lịch phỏng vấn cho ứng viên
Theo đó: o What to write: “X” là giá trị cần cập nhật (“X” là đã gửi)
48 o Where to write: CurrentRow.ByField("Send Email") là cột cần được cập nhật
Hình 4.22 Cấu hình cập nhật trạng thái đã gửi Các bước 4, 5, 6 và 7 sẽ được thực hiện tuần tự cho đến khi đọc hết các dòng thông tin trong file excel được chỉ định từ trước
Tác giả đã cho tiến hành chạy thử quy trình tự động với các điều kiện như sau:
- Đầu vào: là danh sách ứng viên theo template của mục 2.2
Hình 4.23 Thông tin đầu vào
Bảng 4.4 Kết quả kiểm thử
Số lượng email đã gửi 3
Thời gian thực thi 1s o File excel được cập nhật đã gửi:
Hình 4.24 Kết quả đầu ra tạo lịch phỏng vấn o Các email đã gửi:
Hình 4.25 Các email đã gửi thành công o Nội dung email được nhận:
Hình 4.26 Nội dung email gửi thành công
3.5 Đánh giá hiệu quả quy trình:
Với kết quả chạy thực nghiệm, tác giả đo lường hiệu quả quy trình như sau:
- Thời gian: tổng thời gian cập nhật dữ liệu và gửi email, không tính thời gian gọi hẹn phỏng vấn (120s cho cập nhật dữ liệu + 300s soạn email)
- Chi phí: không có số liệu của chi phí việc gửi email
- Chất lượng: số lần thực hiện cập nhật dữ liệu và gửi email
- Linh hoạt: o Trước biến đổi: gọi hẹn, cập nhật thông tin, soạn mail o Sau khi biến đổi: gọi hẹn phỏng vấn, cập nhật thông tin
Bảng 4.5 Đánh giá hiệu quả quy trình
Thời gian Chi phí Chất lượng Linh hoạt
Trước khi biến đổi 420s - 1 lần 3 bước
Sau khi biến đổi 120.3s - ~ 3.5 lần 2 bước
Khoản tiết kiệm/ hiệu suất 239.7s - 1 bước
4 Quy trình gửi thông báo kết quả tuyển dụng:
4.1 Mô hình hóa quy trình:
Hình 4.27 Quy trình gửi kết quả phỏng vấn
- Xây dựng rô-bốt hỗ trợ nhà tuyển dụng gửi thông báo kết quả tuyển dụng đến các ứng viên Bao gồm:
• Thư mời làm việc: đối với các ứng viên trúng tuyển
• Kết quả trượt phỏng vấn: đối với các ứng viên không trúng tuyển
4.3 Các bước xây dựng tự động quy trình:
Bước 1: Nhà tuyển dụng cập nhật thông tin kết quả phỏng vấn:
Sau khi kết thúc buổi phỏng vấn, nhà tuyển dụng tiến hành cập nhật kết quả buổi phỏng vấn vào file excel và bỏ vào thư mục được chỉ định, với biểu mẫu như sau:
Bảng 4.6 Nội dung cập nhật kết quả phỏng vấn
Bước 2: Rô-bốt mở file excel
Thiết lập mở file excel cần đọc lấy thông tin để tạo lịch phỏng vấn
"C:\Users\Max\Desktop\UIpath_thesis\EmailsToSend_Interview result.xlsx" xác định file excel cần đọc o Reference as: định dạng file
No số thứ tự tăng dần
Applied Position Vị trí ứng tuyển
Interview Date Ngày phỏng vấn
Interview Time Giờ phỏng vấn
Interviewer Tên người phỏng vấn
Email receive Email ứng viên
Result Kết quã phỏng vấn
Offer Salary Mức lương đề nghị
Date of Join Ngày bắt đầu làm việc
CreatedDate Ngày cập nhật kết quả phỏng vấn
Send Email Đã gửi kêt quả phỏng vấn chưa? (“X”: có, trống: không) Ô cập nhật
Hình 4.28 Cấu hình mở file excel chỉ định
Bước 3: Rô-bốt đọc thông tin trong file excel