Đối với doanh nghiệp, website tuyển dụng giúp tiết kiệm chi phí quảng cáo, nâng cao sức cạnh tranh hơn so với loại hình tuyển dụng truyền thống, tiếp cận được nhiều ứng viên hơn, tiết ki
CÁCH TIẾP CẬN VÀ PHẠM VI NGHIÊN CỨU
4 Kết quả dự kiến đạt được
Chương 1 Cơ sở lý thuyết
Chương 2 Khảo sát và phân tích hiện trạng
Chương 3 Mô hình hoá yêu cầu
Chương 4 Thiết kế phần mềm
4.3 Thiết kế cơ sở dữ liệu
Chương 5 Cài đặt và kiểm thử
[1] Nguồn ảnh ReactJS: https://media.licdn.com/dms/image/C4D12AQH3qYOED91Ueg/article-cover_image- shrink_720_1280/0/1572723455110?e!47483647&vta&t=pQM3HJnzSDbXv9h9zM8EXfTgbBkf_j V-6bf_FPCu1mE
[2] Nguồn ảnh NodeJS: https://img-c.udemycdn.com/course/750x422/3567445_8642_4.jpg
[3] Nguồn ảnh MongoDB: https://mma.prnewswire.com/media/384058/MongoDB_Logo.jpg?pebook
[4] Website TOPCV: https://www.topcv.vn/viec-lam
[5] Website Vieclam24h: https://vieclam24h.vn/
[6] NodeJS document: https://nodejs.org/docs/latest/api/
[7] Learn ReactJS: https://react.dev/learn
[8] ExpressJS document: https://expressjs.com/en/4x/api.html
[9] Mongoose document: https://mongoosejs.com/docs/api/mongoose.html
[10] Typescript document: https://www.typescriptlang.org/docs/handbook/typescript-in-5-minutes.html
[11] ReactJS document: https://legacy.reactjs.org/docs/getting-started.html
[12] Redux document: https://redux.js.org/
[13] TailwindCSS document: https://v2.tailwindcss.com/docs
STT Thời gian Công việc Ghi chú
- Tìm hiểu về NodeJS, ReactJS
- Tham khảo các trang web tuyển dụng như TOPCV, Vieclam24h,
Bắt đầu khóa luận tốt nghiệp
- Thảo luận và đề ra các chức năng, giao diện chính của ứng dụng
- Từ đó, lên kế hoạch cho luận văn
- Thực hiện mô hình hoá các yêu cầu, thiết kế các diagram, đặc tả chi tiết
- Từ đó xây dựng database phù hợp với các chức năng, liệt kê các giao diện chức năng, các API cần sử dụng
- Cài đặt database và tìm kiếm dữ liệu
- Thực hiện xây dựng và thiết kế giao diện trang web một cách chi tiết Thiết kế các API cần sử dụng
+ Cài đặt các giao diện phía ứng viên
+ Tạo liên kết giữa các trang với nhau
+ Thực hiện kết nối với database, xây dựng trang web theo mô hình MVC
+ Cài đặt các API đăng nhập, đăng xuất và phía ứng viên
+ Cài đặt các giao diện phía nhà tuyển dụng
+ Tạo liên kết giữa các trang với nhau
+ Cài đặt các API phía nhà tuyển dụng
+ Cài đặt các giao diện phía quản trị viên
+ Tạo liên kết giữa các trang với nhau
+ Cài đặt các API phía quản trị viên
- Tiến hành test toàn bộ hệ thống để hoàn thiện trang web
- Chỉnh sửa các tính năng đã cài đặt hoặc thêm các tính năng mới để tối ưu hơn
- Tìm hiểu Deploy hệ thống và tiến hành Deploy Tiến hành viết báo cáo
09/07/2024 - Hoàn thành báo cáo Kết thúc khóa luận tốt nghiệp
Ngày tháng 07 năm 2024 Người viết đề cương Ý kiến của giáo viên hướng dẫn
(ký và ghi rõ họ tên)
LỜI CẢM ƠN 1 ĐỀ CƯƠNG LUẬN VĂN TỐT NGHIỆP 2
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI 14
2 MỤC ĐÍCH CỦA ĐỀ TÀI 15
3 CÁCH TIẾP CẬN VÀ PHẠM VI NGHIÊN CỨU 15
4 KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC 16
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 17
CHƯƠNG 2: KHẢO SÁT VÀ PHÂN TÍCH HIỆN TRẠNG 22
CHƯƠNG 3: MÔ HÌNH HÓA YÊU CẦU 30
CHƯƠNG 4: THIẾT KẾ PHẦN MỀM 48
4.3 THIẾT KẾ CƠ SỞ DỮ LIỆU 62
CHƯƠNG 5: CÀI ĐẶT VÀ KIỂM THỬ 89
Hình 6: Lược đồ usecase phía ứng viên 30
Hình 7: Lược đồ usecase phía nhà tuyển dụng 30
Hình 8: Lược đồ usecase phía quản trị viên 31
Hình 9: Lược đồ tuần tự đăng nhập 48
Hình 10: Lược đồ tuần tự tìm kiếm công việc 49
Hình 11: Lược đồ tuần tự tìm kiếm nhà tuyển dụng 49
Hình 12: Lược đồ tuần tự cập nhật thông tin cá nhân 50
Hình 13: Lược đồ tuần tự ứng viên tạo resume 50
Hình 14: Lược đồ tuần tự ứng tuyển công việc 51
Hình 15: Lược đồ tuần tự hủy ứng tuyển công việc 52
Hình 16: Lược đồ tuần tự ứng viên tìm kiếm dơn ứng tuyển 53
Hình 17: Lược đồ tuần tự cập nhật thông tin công ty 53
Hình 18: Lược đồ tuần tự nhà tuyển dụng tạo công việc 54
Hình 19: Lược đồ tuần tự nhà tuyển dụng duyệt đơn ứng tuyển 54
Hình 20: Lược đồ tuần tự nhà tuyển dụng tìm kiếm đơn ứng tuyển 55
Hình 21: Lược đồ tuần tự nhà tuyển dụng nâng cấp tài khoản 55
Hình 22: Lược đồ tuần tự nhà tuyển dụng hủy nâng cấp tài khoản 56
Hình 23: Lược đồ tuần tự nhà tuyển dụng tìm kiếm resume 56
Hình 24: Lược đồ tuần tự nhà tuyển dụng thống kê công việc 57
Hình 25: Lược đồ tuần tự nhà tuyển dụng thống kê đơn ứng tuyển 57
Hình 26: Lược đồ tuần tự quản trị viên duyệt nhà tuyển dụng 58
Hình 27: Lược đồ tuần tự quản trị viên duyệt công việc 58
Hình 28: Lược đồ tuần tự quản trị viên thống kê doanh thu 59
Hình 29: Lược đồ tuần tự quản trị viên thống kê công việc 59
Hình 30: Lược đồ tuần tự quản trị viên thống kê nhà tuyển dụng 60
Hình 31: Lược đồ tuần tự quản trị viên thống kê hồ sơ ứng tuyển 60
Hình 33: Lược đồ thực thể kết hợp 62
Hình 34: Giao diện đăng nhập 72
Hình 35: Giao diện đăng tin tuyển dụng 72
Hình 36: Giao diện việc làm đã đăng tuyển 73
Hình 37: Giao diện danh sách việc làm chưa duyệt 73
Hình 38: Giao diện chi tiết công việc 74
Hình 39: Giao diện duyệt công việc 74
Hình 40: Giao diện danh sách hồ sơ của ứng viên 75
Hình 41: Giao diện chọn mẫu hồ sơ 75
Hình 42: Giao diện tạo hồ sơ 76
Hình 43: Giao diện tìm kiếm công việc 76
Hình 44: Giao diện thông tin chi tiết công việc 77
Hình 45: Giao diện ứng tuyển công việc 77
Hình 46: Giao diện nhà tuyển dụng xem danh sách hồ sơ ứng tuyển vào công việc 78
Hình 47: Giao diện nhà tuyển dụng xem thông tin hồ sơ 78
Hình 48: Giao diện nhà tuyển dụng duyệt hồ sơ 79
Hình 49: Giao diện trạng thái hồ sơ sau khi được nhà tuyển dụng duyệt 79
Hình 50: Giao diện ứng viên xem lịch sử công việc đã ứng tuyển 80
Hình 51: Giao diện nhà tuyển dụng cập nhật thông tin công ty 80
Hình 52: Giao diện thông tin công ty cũ hiển thị trên hệ thống khi chưa được duyệt 81
Hình 53: Giao diện danh sách nhà tuyển dụng chưa được duyệt 81
Hình 54: Giao diện duyệt nhà tuyển dụng 82
Hình 55: Giao diện thông tin nhà tuyển dụng trên hệ thống sau khi được duyệt 82
Hình 56: Giao diện nhà tuyển dụng hủy nâng cấp tài khoản 83
Hình 57: Giao diện nhà tuyển dụng nâng cấp tài khoản 83
Hình 58: Giao diện thanh toán sử dụng VNPAY 84
Hình 59: Giao diện kết quả thanh toán 84
Hình 60: Giao diện dịch vụ thống kê hồ sơ 85
Hình 61: Giao diện dịch vụ thống kê công việc 85
Hình 62: Giao diện dịch vụ tìm kiếm ứng viên 86
Hình 63: Giao diện ứng viên cho phép nhà tuyển dụng tìm kiếm hồ sơ 86
Hình 64: Giao diện quản trị viên thống kê doanh thu 87
Hình 65: Giao diện quản trị viên thống kê nhà tuyển dụng mới 87
Hình 66: Giao diện quản trị viên thống kê công việc trong hệ thống 88
Hình 67: Giao diện quản trị viên thống kê hồ sơ ứng tuyển trong hệ thống 88
Bảng 2: Usecase tìm kiếm công việc 32
Bảng 3: Usecase xem thông tin chi tiết nhà tuyển dụng 32
Bảng 4: Usecase xem thông tin chi tiết công việc 33
Bảng 5: Usecase cập nhật thông tin cá nhân 34
Bảng 7: Usecase ứng tuyển công việc 35
Bảng 8: Usecase cập nhật thông tin công ty 36
Bảng 9: Usecase tìm kiếm và lọc danh sách việc làm đã đăng tuyển 36
Bảng 10: Usecase tạo công việc 37
Bảng 11: Usecase xem danh sách hồ sơ ứng tuyển vào công việc 38
Bảng 12: Usecase tìm kiếm danh sách hồ sơ ứng tuyển vào công việc 39
Bảng 13: Usecase xem chi tiết hồ sơ ứng tuyển của ứng viên 39
Bảng 14: Usecase xử lý hồ sơ của ứng viên đã ứng tuyển vào công việc 40
Bảng 15: Usecase nâng cấp tài khoản 41
Bảng 16: Usecase sử dụng dịch vụ thống kê 42
Bảng 17: Usecase xem danh sách hồ sơ nổi bật của các ứng viên 42
Bảng 18: Usecase tìm kiếm hồ sơ trong danh sách hồ sơ nổi bật của ứng viên 43
Bảng 19: Usecase hủy gói nâng cấp tài khoản 44
Bảng 20: Usecase xem thống kê số liệu 45
Bảng 21: Usecase phê duyệt công ty 45
Bảng 22: Usecase phê duyệt công việc 46
Bảng 37: Bảng kiểm thử một số chức năng 89
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Tuyển dụng trực tuyến đang phát triển nhanh chóng tại Việt Nam, trở thành một trong những lĩnh vực có cơ hội bứt phá Thị trường tuyển dụng trực tuyến hiện nay là một trong những thị trường nóng nhất, với các website tuyển dụng là nền tảng phổ biến cho cả người tìm việc và nhà tuyển dụng Sự phát triển mạnh mẽ của internet cùng với công nghệ thông tin và số hóa đã thúc đẩy sự ra đời và phát triển của các website tuyển dụng trực tuyến.
Nắm bắt xu thế hiện nay, các doanh nghiệp tuyển dụng có thể xây dựng website riêng để tiết kiệm chi phí quảng cáo và nâng cao sức cạnh tranh so với phương thức tuyển dụng truyền thống Website tuyển dụng không chỉ giúp tiếp cận nhiều ứng viên hơn mà còn tối ưu hóa việc quản lý và thống kê hồ sơ ứng viên Đối với ứng viên, họ có thể dễ dàng tìm kiếm thông tin việc làm và nộp hồ sơ trực tuyến trên website, mang lại sự thuận tiện và hiệu quả trong quá trình tìm kiếm việc làm.
Các website tuyển dụng hàng đầu như TopCV, Vieclam24h, VietnamWorks và CareerBuilder đang đáp ứng nhu cầu tuyển dụng và tìm việc của thị trường TopCV nổi bật với tính năng tạo CV trực tuyến và nhiều mẫu CV chuyên nghiệp dễ dàng tùy chỉnh Vieclam24h cung cấp tin tuyển dụng mới nhất và cho phép ứng viên nộp hồ sơ trực tuyến nhanh chóng VietnamWorks kết nối doanh nghiệp lớn với ứng viên chất lượng cao, cung cấp công cụ hỗ trợ tuyển dụng đa dạng CareerBuilder mang đến dịch vụ tuyển dụng toàn diện, bao gồm đánh giá kỹ năng và phát triển nghề nghiệp.
Dự án "Website tuyển dụng cho doanh nghiệp" nhằm đáp ứng nhu cầu quản lý và tuyển dụng, giúp tiết kiệm chi phí, nâng cao hiệu quả và tạo ra môi trường tuyển dụng chuyên nghiệp hơn cho các doanh nghiệp.
2 MỤC ĐÍCH CỦA ĐỀ TÀI
Mục tiêu của đề tài là phát triển một trang tuyển dụng tích hợp đầy đủ các chức năng cơ bản, đồng thời kết hợp những tính năng nổi bật từ các trang tuyển dụng lớn, mang lại sự thuận tiện cho người dùng Bên cạnh đó, sản phẩm còn cung cấp những tính năng mới mẻ và sáng tạo, nhằm nâng cao trải nghiệm người sử dụng.
3 CÁCH TIẾP CẬN VÀ PHẠM VI NGHIÊN CỨU Đối tượng nghiên cứu:
Người tìm việc bao gồm nhiều đối tượng khác nhau, từ sinh viên mới tốt nghiệp đến những người có nhiều năm kinh nghiệm Họ không chỉ tìm kiếm cơ hội việc làm mới mà còn có thể muốn chuyển đổi công việc hoặc khám phá cơ hội trong các ngành nghề khác.
Nhà tuyển dụng bao gồm các công ty và tổ chức có nhu cầu tuyển dụng nhân sự cho nhiều vị trí khác nhau, cùng với các nhà quản lý nhân sự hoặc người phụ trách tuyển dụng trong doanh nghiệp.
- Các trung gian tuyển dụng: Các công ty hoặc tổ chức cung cấp dịch vụ tuyển dụng, headhunter, hoặc các đơn vị tư vấn nhân sự
Website cung cấp chức năng tìm kiếm việc làm và đăng tin tuyển dụng, với các tính năng hỗ trợ như tạo hồ sơ và CV trực tuyến, công cụ lọc và gợi ý việc làm phù hợp, theo dõi hồ sơ ứng tuyển, quản lý ứng tuyển, quản lý công việc, quản lý nhà tuyển dụng, quản lý bài viết và thống kê hiệu quả.
- Trải nghiệm người dùng: Giao diện thân thiện với người dùng, hiệu quả và tiện lợi trong việc sử dụng trang web
- Hiệu quả tuyển dụng: Nghiên cứu thời gian và chi phí tuyển dụng, chất lượng ứng viên được tuyển dụng thông qua website.
KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC
Về kiến thức
Hiểu rõ quy trình phát triển phần mềm là cần thiết để nâng cao kiến thức về NodeJS trong việc thiết kế các Restful API Bên cạnh đó, việc sử dụng ReactJS để xây dựng giao diện người dùng và gọi API cũng rất quan trọng Ngoài ra, WebSocket được áp dụng cho các tính năng real-time, giúp cải thiện trải nghiệm người dùng.
- Nâng cao khả năng tự học và đọc tài liệu, kỹ năng giải quyết vấn đề
- Rèn luyện được kỹ năng làm việc nhóm và giải quyết vấn đề của tập thể
- Rèn luyện kỹ năng quản lý thời gian cũng như phân chia công việc.
Về đề tài
Tạo ra được một trang tuyển dụng cơ bản với những chức năng cốt lõi như:
- Tạo tài khoản người dùng
- Quản lý thông tin cá nhân
- Quản lý công việc tuyển dụng
- Quản lý hồ sơ ứng tuyển và ứng tuyển
- Duyệt tài khoản nhà tuyển dụng
- Theo dõi trạng thái ứng tuyển
CƠ SỞ LÝ THUYẾT
MONGODB
Chương 2 Khảo sát và phân tích hiện trạng
Chương 3 Mô hình hoá yêu cầu
Chương 4 Thiết kế phần mềm
4.3 Thiết kế cơ sở dữ liệu
Chương 5 Cài đặt và kiểm thử
[1] Nguồn ảnh ReactJS: https://media.licdn.com/dms/image/C4D12AQH3qYOED91Ueg/article-cover_image- shrink_720_1280/0/1572723455110?e!47483647&vta&t=pQM3HJnzSDbXv9h9zM8EXfTgbBkf_j V-6bf_FPCu1mE
[2] Nguồn ảnh NodeJS: https://img-c.udemycdn.com/course/750x422/3567445_8642_4.jpg
[3] Nguồn ảnh MongoDB: https://mma.prnewswire.com/media/384058/MongoDB_Logo.jpg?pebook
[4] Website TOPCV: https://www.topcv.vn/viec-lam
[5] Website Vieclam24h: https://vieclam24h.vn/
[6] NodeJS document: https://nodejs.org/docs/latest/api/
[7] Learn ReactJS: https://react.dev/learn
[8] ExpressJS document: https://expressjs.com/en/4x/api.html
[9] Mongoose document: https://mongoosejs.com/docs/api/mongoose.html
[10] Typescript document: https://www.typescriptlang.org/docs/handbook/typescript-in-5-minutes.html
[11] ReactJS document: https://legacy.reactjs.org/docs/getting-started.html
[12] Redux document: https://redux.js.org/
[13] TailwindCSS document: https://v2.tailwindcss.com/docs
STT Thời gian Công việc Ghi chú
- Tìm hiểu về NodeJS, ReactJS
- Tham khảo các trang web tuyển dụng như TOPCV, Vieclam24h,
Bắt đầu khóa luận tốt nghiệp
- Thảo luận và đề ra các chức năng, giao diện chính của ứng dụng
- Từ đó, lên kế hoạch cho luận văn
- Thực hiện mô hình hoá các yêu cầu, thiết kế các diagram, đặc tả chi tiết
- Từ đó xây dựng database phù hợp với các chức năng, liệt kê các giao diện chức năng, các API cần sử dụng
- Cài đặt database và tìm kiếm dữ liệu
- Thực hiện xây dựng và thiết kế giao diện trang web một cách chi tiết Thiết kế các API cần sử dụng
+ Cài đặt các giao diện phía ứng viên
+ Tạo liên kết giữa các trang với nhau
+ Thực hiện kết nối với database, xây dựng trang web theo mô hình MVC
+ Cài đặt các API đăng nhập, đăng xuất và phía ứng viên
+ Cài đặt các giao diện phía nhà tuyển dụng
+ Tạo liên kết giữa các trang với nhau
+ Cài đặt các API phía nhà tuyển dụng
+ Cài đặt các giao diện phía quản trị viên
+ Tạo liên kết giữa các trang với nhau
+ Cài đặt các API phía quản trị viên
- Tiến hành test toàn bộ hệ thống để hoàn thiện trang web
- Chỉnh sửa các tính năng đã cài đặt hoặc thêm các tính năng mới để tối ưu hơn
- Tìm hiểu Deploy hệ thống và tiến hành Deploy Tiến hành viết báo cáo
09/07/2024 - Hoàn thành báo cáo Kết thúc khóa luận tốt nghiệp
Ngày tháng 07 năm 2024 Người viết đề cương Ý kiến của giáo viên hướng dẫn
(ký và ghi rõ họ tên)
LỜI CẢM ƠN 1 ĐỀ CƯƠNG LUẬN VĂN TỐT NGHIỆP 2
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI 14
2 MỤC ĐÍCH CỦA ĐỀ TÀI 15
3 CÁCH TIẾP CẬN VÀ PHẠM VI NGHIÊN CỨU 15
4 KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC 16
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 17
CHƯƠNG 2: KHẢO SÁT VÀ PHÂN TÍCH HIỆN TRẠNG 22
CHƯƠNG 3: MÔ HÌNH HÓA YÊU CẦU 30
CHƯƠNG 4: THIẾT KẾ PHẦN MỀM 48
4.3 THIẾT KẾ CƠ SỞ DỮ LIỆU 62
CHƯƠNG 5: CÀI ĐẶT VÀ KIỂM THỬ 89
Hình 6: Lược đồ usecase phía ứng viên 30
Hình 7: Lược đồ usecase phía nhà tuyển dụng 30
Hình 8: Lược đồ usecase phía quản trị viên 31
Hình 9: Lược đồ tuần tự đăng nhập 48
Hình 10: Lược đồ tuần tự tìm kiếm công việc 49
Hình 11: Lược đồ tuần tự tìm kiếm nhà tuyển dụng 49
Hình 12: Lược đồ tuần tự cập nhật thông tin cá nhân 50
Hình 13: Lược đồ tuần tự ứng viên tạo resume 50
Hình 14: Lược đồ tuần tự ứng tuyển công việc 51
Hình 15: Lược đồ tuần tự hủy ứng tuyển công việc 52
Hình 16: Lược đồ tuần tự ứng viên tìm kiếm dơn ứng tuyển 53
Hình 17: Lược đồ tuần tự cập nhật thông tin công ty 53
Hình 18: Lược đồ tuần tự nhà tuyển dụng tạo công việc 54
Hình 19: Lược đồ tuần tự nhà tuyển dụng duyệt đơn ứng tuyển 54
Hình 20: Lược đồ tuần tự nhà tuyển dụng tìm kiếm đơn ứng tuyển 55
Hình 21: Lược đồ tuần tự nhà tuyển dụng nâng cấp tài khoản 55
Hình 22: Lược đồ tuần tự nhà tuyển dụng hủy nâng cấp tài khoản 56
Hình 23: Lược đồ tuần tự nhà tuyển dụng tìm kiếm resume 56
Hình 24: Lược đồ tuần tự nhà tuyển dụng thống kê công việc 57
Hình 25: Lược đồ tuần tự nhà tuyển dụng thống kê đơn ứng tuyển 57
Hình 26: Lược đồ tuần tự quản trị viên duyệt nhà tuyển dụng 58
Hình 27: Lược đồ tuần tự quản trị viên duyệt công việc 58
Hình 28: Lược đồ tuần tự quản trị viên thống kê doanh thu 59
Hình 29: Lược đồ tuần tự quản trị viên thống kê công việc 59
Hình 30: Lược đồ tuần tự quản trị viên thống kê nhà tuyển dụng 60
Hình 31: Lược đồ tuần tự quản trị viên thống kê hồ sơ ứng tuyển 60
Hình 33: Lược đồ thực thể kết hợp 62
Hình 34: Giao diện đăng nhập 72
Hình 35: Giao diện đăng tin tuyển dụng 72
Hình 36: Giao diện việc làm đã đăng tuyển 73
Hình 37: Giao diện danh sách việc làm chưa duyệt 73
Hình 38: Giao diện chi tiết công việc 74
Hình 39: Giao diện duyệt công việc 74
Hình 40: Giao diện danh sách hồ sơ của ứng viên 75
Hình 41: Giao diện chọn mẫu hồ sơ 75
Hình 42: Giao diện tạo hồ sơ 76
Hình 43: Giao diện tìm kiếm công việc 76
Hình 44: Giao diện thông tin chi tiết công việc 77
Hình 45: Giao diện ứng tuyển công việc 77
Hình 46: Giao diện nhà tuyển dụng xem danh sách hồ sơ ứng tuyển vào công việc 78
Hình 47: Giao diện nhà tuyển dụng xem thông tin hồ sơ 78
Hình 48: Giao diện nhà tuyển dụng duyệt hồ sơ 79
Hình 49: Giao diện trạng thái hồ sơ sau khi được nhà tuyển dụng duyệt 79
Hình 50: Giao diện ứng viên xem lịch sử công việc đã ứng tuyển 80
Hình 51: Giao diện nhà tuyển dụng cập nhật thông tin công ty 80
Hình 52: Giao diện thông tin công ty cũ hiển thị trên hệ thống khi chưa được duyệt 81
Hình 53: Giao diện danh sách nhà tuyển dụng chưa được duyệt 81
Hình 54: Giao diện duyệt nhà tuyển dụng 82
Hình 55: Giao diện thông tin nhà tuyển dụng trên hệ thống sau khi được duyệt 82
Hình 56: Giao diện nhà tuyển dụng hủy nâng cấp tài khoản 83
Hình 57: Giao diện nhà tuyển dụng nâng cấp tài khoản 83
Hình 58: Giao diện thanh toán sử dụng VNPAY 84
Hình 59: Giao diện kết quả thanh toán 84
Hình 60: Giao diện dịch vụ thống kê hồ sơ 85
Hình 61: Giao diện dịch vụ thống kê công việc 85
Hình 62: Giao diện dịch vụ tìm kiếm ứng viên 86
Hình 63: Giao diện ứng viên cho phép nhà tuyển dụng tìm kiếm hồ sơ 86
Hình 64: Giao diện quản trị viên thống kê doanh thu 87
Hình 65: Giao diện quản trị viên thống kê nhà tuyển dụng mới 87
Hình 66: Giao diện quản trị viên thống kê công việc trong hệ thống 88
Hình 67: Giao diện quản trị viên thống kê hồ sơ ứng tuyển trong hệ thống 88
Bảng 2: Usecase tìm kiếm công việc 32
Bảng 3: Usecase xem thông tin chi tiết nhà tuyển dụng 32
Bảng 4: Usecase xem thông tin chi tiết công việc 33
Bảng 5: Usecase cập nhật thông tin cá nhân 34
Bảng 7: Usecase ứng tuyển công việc 35
Bảng 8: Usecase cập nhật thông tin công ty 36
Bảng 9: Usecase tìm kiếm và lọc danh sách việc làm đã đăng tuyển 36
Bảng 10: Usecase tạo công việc 37
Bảng 11: Usecase xem danh sách hồ sơ ứng tuyển vào công việc 38
Bảng 12: Usecase tìm kiếm danh sách hồ sơ ứng tuyển vào công việc 39
Bảng 13: Usecase xem chi tiết hồ sơ ứng tuyển của ứng viên 39
Bảng 14: Usecase xử lý hồ sơ của ứng viên đã ứng tuyển vào công việc 40
Bảng 15: Usecase nâng cấp tài khoản 41
Bảng 16: Usecase sử dụng dịch vụ thống kê 42
Bảng 17: Usecase xem danh sách hồ sơ nổi bật của các ứng viên 42
Bảng 18: Usecase tìm kiếm hồ sơ trong danh sách hồ sơ nổi bật của ứng viên 43
Bảng 19: Usecase hủy gói nâng cấp tài khoản 44
Bảng 20: Usecase xem thống kê số liệu 45
Bảng 21: Usecase phê duyệt công ty 45
Bảng 22: Usecase phê duyệt công việc 46
Bảng 37: Bảng kiểm thử một số chức năng 89
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Tuyển dụng trực tuyến đang phát triển nhanh chóng tại Việt Nam, trở thành một trong những lĩnh vực nóng nhất hiện nay Các website tuyển dụng cung cấp nền tảng phù hợp cho cả người tìm việc và nhà tuyển dụng Sự phát triển mạnh mẽ của internet và ứng dụng công nghệ thông tin đã thúc đẩy sự ra đời và phát triển của các nền tảng tuyển dụng trực tuyến.
Nắm bắt xu thế hiện nay, doanh nghiệp có thể xây dựng website tuyển dụng riêng để tiết kiệm chi phí quảng cáo và nâng cao sức cạnh tranh so với phương thức tuyển dụng truyền thống Website tuyển dụng giúp tiếp cận nhiều ứng viên hơn, tiết kiệm thời gian và tối ưu hóa việc quản lý, thống kê hồ sơ ứng viên Đối với ứng viên, họ có thể dễ dàng tìm kiếm thông tin việc làm và nộp hồ sơ trực tuyến trên website.
Các trang web tuyển dụng hàng đầu như TopCV, Vieclam24h, VietnamWorks và CareerBuilder đang đáp ứng nhu cầu tuyển dụng và tìm việc của thị trường TopCV nổi bật với tính năng tạo CV trực tuyến và nhiều mẫu CV chuyên nghiệp dễ tùy chỉnh Vieclam24h cung cấp tin tuyển dụng mới nhất, cho phép ứng viên nộp hồ sơ trực tuyến nhanh chóng VietnamWorks kết nối doanh nghiệp lớn với ứng viên chất lượng cao và cung cấp công cụ hỗ trợ tuyển dụng hiệu quả CareerBuilder mang đến dịch vụ tuyển dụng toàn diện, bao gồm đánh giá kỹ năng và phát triển nghề nghiệp.
Dự án "Website tuyển dụng cho doanh nghiệp" giúp doanh nghiệp quản lý và tuyển dụng hiệu quả hơn, tiết kiệm chi phí và tạo ra môi trường tuyển dụng chuyên nghiệp.
2 MỤC ĐÍCH CỦA ĐỀ TÀI
Mục tiêu của đề tài là phát triển một trang tuyển dụng tích hợp đầy đủ các chức năng cơ bản, đồng thời kết hợp những tính năng nổi bật từ các trang tuyển dụng lớn để mang lại sự thuận tiện cho người dùng Bên cạnh đó, sản phẩm còn hướng đến việc cung cấp những tính năng mới mẻ và sáng tạo.
3 CÁCH TIẾP CẬN VÀ PHẠM VI NGHIÊN CỨU Đối tượng nghiên cứu:
Người tìm việc bao gồm nhiều đối tượng, từ sinh viên mới ra trường đến những cá nhân có nhiều năm kinh nghiệm Họ có thể là những người muốn chuyển đổi nghề nghiệp hoặc tìm kiếm cơ hội mới trong các lĩnh vực khác nhau.
Nhà tuyển dụng bao gồm các công ty và tổ chức có nhu cầu tìm kiếm nhân sự cho nhiều vị trí khác nhau, cùng với các nhà quản lý nhân sự hoặc người phụ trách tuyển dụng trong doanh nghiệp.
- Các trung gian tuyển dụng: Các công ty hoặc tổ chức cung cấp dịch vụ tuyển dụng, headhunter, hoặc các đơn vị tư vấn nhân sự
Website cung cấp nhiều chức năng hữu ích cho người tìm việc và nhà tuyển dụng, bao gồm khả năng tìm kiếm việc làm và đăng tin tuyển dụng Các công cụ hỗ trợ như tạo hồ sơ và CV trực tuyến, lọc và gợi ý việc làm phù hợp, theo dõi hồ sơ ứng tuyển, quản lý ứng tuyển, quản lý công việc, và quản lý nhà tuyển dụng giúp tối ưu hóa quá trình tuyển dụng Bên cạnh đó, hệ thống quản lý bài viết và thống kê cũng góp phần nâng cao hiệu quả hoạt động của website.
- Trải nghiệm người dùng: Giao diện thân thiện với người dùng, hiệu quả và tiện lợi trong việc sử dụng trang web
- Hiệu quả tuyển dụng: Nghiên cứu thời gian và chi phí tuyển dụng, chất lượng ứng viên được tuyển dụng thông qua website
Thị trường tuyển dụng hiện nay đang có nhiều biến động với sự gia tăng nhu cầu ở các ngành nghề như công nghệ thông tin, y tế và dịch vụ Xu hướng công nghệ mới, bao gồm trí tuệ nhân tạo và tự động hóa, đang định hình lại cách thức tuyển dụng, giúp các doanh nghiệp tối ưu hóa quy trình tìm kiếm ứng viên Các phương pháp tuyển dụng hiện đại như phỏng vấn trực tuyến và sử dụng nền tảng mạng xã hội đang trở thành phổ biến, tạo điều kiện thuận lợi cho việc kết nối giữa nhà tuyển dụng và ứng viên tiềm năng.
- Phân tích cạnh tranh: So sánh với các website tuyển dụng khác về các tính năng, ưu và nhược điểm
4 KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC
Hiểu biết về quy trình phát triển phần mềm là rất quan trọng, đặc biệt khi sử dụng NodeJS để thiết kế các Restful API Việc áp dụng ReactJS giúp tạo ra giao diện người dùng hiệu quả và dễ dàng gọi API Bên cạnh đó, việc sử dụng WebSocket cho các tính năng real-time sẽ nâng cao trải nghiệm người dùng.
- Nâng cao khả năng tự học và đọc tài liệu, kỹ năng giải quyết vấn đề
- Rèn luyện được kỹ năng làm việc nhóm và giải quyết vấn đề của tập thể
- Rèn luyện kỹ năng quản lý thời gian cũng như phân chia công việc
Tạo ra được một trang tuyển dụng cơ bản với những chức năng cốt lõi như:
- Tạo tài khoản người dùng
- Quản lý thông tin cá nhân
- Quản lý công việc tuyển dụng
- Quản lý hồ sơ ứng tuyển và ứng tuyển
- Duyệt tài khoản nhà tuyển dụng
- Theo dõi trạng thái ứng tuyển
PHẦN NỘI DUNG CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1 REACTJS
ReactJS là nền tảng lý tưởng cho phần giao diện người dùng của website, cho phép xây dựng các thành phần giao diện tái sử dụng, từ đó giúp phát triển ứng dụng một cách dễ dàng và hiệu quả.
Giao diện người dùng được chia thành các thành phần riêng biệt, giúp quản lý mã nguồn và tương tác người dùng một cách hiệu quả
React Router được sử dụng để xử lý định tuyến (routing), cho phép chuyển đổi giữa các trang mà không cần tải lại trình duyệt
Redux hoặc React Context API được sử dụng để quản lý trạng thái toàn cục của ứng dụng và chia sẻ dữ liệu giữa các thành phần
Node.js là một môi trường chạy mã nguồn mở và đa nền tảng, cho phép thực thi JavaScript trên nhiều hệ điều hành như Windows, Linux, Unix và macOS Được xây dựng trên động cơ V8 của Google Chrome, Node.js cho phép chạy mã JavaScript bên ngoài trình duyệt, đặc biệt là trên máy chủ.
Node.js cho phép sử dụng JavaScript ở cả phía máy chủ, không chỉ trong trình duyệt web, tạo ra một môi trường phát triển thống nhất cho toàn bộ ứng dụng web.
Node.js áp dụng mô hình bất đồng bộ để xử lý nhiều kết nối đồng thời mà không làm gián đoạn chương trình, điều này rất phù hợp cho các ứng dụng thời gian thực và những ứng dụng yêu cầu xử lý nhiều kết nối cùng lúc.
Node.js sử dụng kiến trúc dựa trên sự kiện, cho phép các sự kiện như yêu cầu mạng hoặc thao tác tệp tin kích hoạt các hàm xử lý đã được đăng ký Cách tiếp cận này tối ưu hóa hiệu suất và khả năng phản ứng của ứng dụng.
KHẢO SÁT VÀ PHÂN TÍCH HIỆN TRẠNG
XÁC ĐỊNH YÊU CẦU
Chương 3 Mô hình hoá yêu cầu
Chương 4 Thiết kế phần mềm
4.3 Thiết kế cơ sở dữ liệu
Chương 5 Cài đặt và kiểm thử
[1] Nguồn ảnh ReactJS: https://media.licdn.com/dms/image/C4D12AQH3qYOED91Ueg/article-cover_image- shrink_720_1280/0/1572723455110?e!47483647&vta&t=pQM3HJnzSDbXv9h9zM8EXfTgbBkf_j V-6bf_FPCu1mE
[2] Nguồn ảnh NodeJS: https://img-c.udemycdn.com/course/750x422/3567445_8642_4.jpg
[3] Nguồn ảnh MongoDB: https://mma.prnewswire.com/media/384058/MongoDB_Logo.jpg?pebook
[4] Website TOPCV: https://www.topcv.vn/viec-lam
[5] Website Vieclam24h: https://vieclam24h.vn/
[6] NodeJS document: https://nodejs.org/docs/latest/api/
[7] Learn ReactJS: https://react.dev/learn
[8] ExpressJS document: https://expressjs.com/en/4x/api.html
[9] Mongoose document: https://mongoosejs.com/docs/api/mongoose.html
[10] Typescript document: https://www.typescriptlang.org/docs/handbook/typescript-in-5-minutes.html
[11] ReactJS document: https://legacy.reactjs.org/docs/getting-started.html
[12] Redux document: https://redux.js.org/
[13] TailwindCSS document: https://v2.tailwindcss.com/docs
STT Thời gian Công việc Ghi chú
- Tìm hiểu về NodeJS, ReactJS
- Tham khảo các trang web tuyển dụng như TOPCV, Vieclam24h,
Bắt đầu khóa luận tốt nghiệp
- Thảo luận và đề ra các chức năng, giao diện chính của ứng dụng
- Từ đó, lên kế hoạch cho luận văn
- Thực hiện mô hình hoá các yêu cầu, thiết kế các diagram, đặc tả chi tiết
- Từ đó xây dựng database phù hợp với các chức năng, liệt kê các giao diện chức năng, các API cần sử dụng
- Cài đặt database và tìm kiếm dữ liệu
- Thực hiện xây dựng và thiết kế giao diện trang web một cách chi tiết Thiết kế các API cần sử dụng
+ Cài đặt các giao diện phía ứng viên
+ Tạo liên kết giữa các trang với nhau
+ Thực hiện kết nối với database, xây dựng trang web theo mô hình MVC
+ Cài đặt các API đăng nhập, đăng xuất và phía ứng viên
+ Cài đặt các giao diện phía nhà tuyển dụng
+ Tạo liên kết giữa các trang với nhau
+ Cài đặt các API phía nhà tuyển dụng
+ Cài đặt các giao diện phía quản trị viên
+ Tạo liên kết giữa các trang với nhau
+ Cài đặt các API phía quản trị viên
- Tiến hành test toàn bộ hệ thống để hoàn thiện trang web
- Chỉnh sửa các tính năng đã cài đặt hoặc thêm các tính năng mới để tối ưu hơn
- Tìm hiểu Deploy hệ thống và tiến hành Deploy Tiến hành viết báo cáo
09/07/2024 - Hoàn thành báo cáo Kết thúc khóa luận tốt nghiệp
Ngày tháng 07 năm 2024 Người viết đề cương Ý kiến của giáo viên hướng dẫn
(ký và ghi rõ họ tên)
LỜI CẢM ƠN 1 ĐỀ CƯƠNG LUẬN VĂN TỐT NGHIỆP 2
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI 14
2 MỤC ĐÍCH CỦA ĐỀ TÀI 15
3 CÁCH TIẾP CẬN VÀ PHẠM VI NGHIÊN CỨU 15
4 KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC 16
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 17
CHƯƠNG 2: KHẢO SÁT VÀ PHÂN TÍCH HIỆN TRẠNG 22
CHƯƠNG 3: MÔ HÌNH HÓA YÊU CẦU 30
CHƯƠNG 4: THIẾT KẾ PHẦN MỀM 48
4.3 THIẾT KẾ CƠ SỞ DỮ LIỆU 62
CHƯƠNG 5: CÀI ĐẶT VÀ KIỂM THỬ 89
Hình 6: Lược đồ usecase phía ứng viên 30
Hình 7: Lược đồ usecase phía nhà tuyển dụng 30
Hình 8: Lược đồ usecase phía quản trị viên 31
Hình 9: Lược đồ tuần tự đăng nhập 48
Hình 10: Lược đồ tuần tự tìm kiếm công việc 49
Hình 11: Lược đồ tuần tự tìm kiếm nhà tuyển dụng 49
Hình 12: Lược đồ tuần tự cập nhật thông tin cá nhân 50
Hình 13: Lược đồ tuần tự ứng viên tạo resume 50
Hình 14: Lược đồ tuần tự ứng tuyển công việc 51
Hình 15: Lược đồ tuần tự hủy ứng tuyển công việc 52
Hình 16: Lược đồ tuần tự ứng viên tìm kiếm dơn ứng tuyển 53
Hình 17: Lược đồ tuần tự cập nhật thông tin công ty 53
Hình 18: Lược đồ tuần tự nhà tuyển dụng tạo công việc 54
Hình 19: Lược đồ tuần tự nhà tuyển dụng duyệt đơn ứng tuyển 54
Hình 20: Lược đồ tuần tự nhà tuyển dụng tìm kiếm đơn ứng tuyển 55
Hình 21: Lược đồ tuần tự nhà tuyển dụng nâng cấp tài khoản 55
Hình 22: Lược đồ tuần tự nhà tuyển dụng hủy nâng cấp tài khoản 56
Hình 23: Lược đồ tuần tự nhà tuyển dụng tìm kiếm resume 56
Hình 24: Lược đồ tuần tự nhà tuyển dụng thống kê công việc 57
Hình 25: Lược đồ tuần tự nhà tuyển dụng thống kê đơn ứng tuyển 57
Hình 26: Lược đồ tuần tự quản trị viên duyệt nhà tuyển dụng 58
Hình 27: Lược đồ tuần tự quản trị viên duyệt công việc 58
Hình 28: Lược đồ tuần tự quản trị viên thống kê doanh thu 59
Hình 29: Lược đồ tuần tự quản trị viên thống kê công việc 59
Hình 30: Lược đồ tuần tự quản trị viên thống kê nhà tuyển dụng 60
Hình 31: Lược đồ tuần tự quản trị viên thống kê hồ sơ ứng tuyển 60
Hình 33: Lược đồ thực thể kết hợp 62
Hình 34: Giao diện đăng nhập 72
Hình 35: Giao diện đăng tin tuyển dụng 72
Hình 36: Giao diện việc làm đã đăng tuyển 73
Hình 37: Giao diện danh sách việc làm chưa duyệt 73
Hình 38: Giao diện chi tiết công việc 74
Hình 39: Giao diện duyệt công việc 74
Hình 40: Giao diện danh sách hồ sơ của ứng viên 75
Hình 41: Giao diện chọn mẫu hồ sơ 75
Hình 42: Giao diện tạo hồ sơ 76
Hình 43: Giao diện tìm kiếm công việc 76
Hình 44: Giao diện thông tin chi tiết công việc 77
Hình 45: Giao diện ứng tuyển công việc 77
Hình 46: Giao diện nhà tuyển dụng xem danh sách hồ sơ ứng tuyển vào công việc 78
Hình 47: Giao diện nhà tuyển dụng xem thông tin hồ sơ 78
Hình 48: Giao diện nhà tuyển dụng duyệt hồ sơ 79
Hình 49: Giao diện trạng thái hồ sơ sau khi được nhà tuyển dụng duyệt 79
Hình 50: Giao diện ứng viên xem lịch sử công việc đã ứng tuyển 80
Hình 51: Giao diện nhà tuyển dụng cập nhật thông tin công ty 80
Hình 52: Giao diện thông tin công ty cũ hiển thị trên hệ thống khi chưa được duyệt 81
Hình 53: Giao diện danh sách nhà tuyển dụng chưa được duyệt 81
Hình 54: Giao diện duyệt nhà tuyển dụng 82
Hình 55: Giao diện thông tin nhà tuyển dụng trên hệ thống sau khi được duyệt 82
Hình 56: Giao diện nhà tuyển dụng hủy nâng cấp tài khoản 83
Hình 57: Giao diện nhà tuyển dụng nâng cấp tài khoản 83
Hình 58: Giao diện thanh toán sử dụng VNPAY 84
Hình 59: Giao diện kết quả thanh toán 84
Hình 60: Giao diện dịch vụ thống kê hồ sơ 85
Hình 61: Giao diện dịch vụ thống kê công việc 85
Hình 62: Giao diện dịch vụ tìm kiếm ứng viên 86
Hình 63: Giao diện ứng viên cho phép nhà tuyển dụng tìm kiếm hồ sơ 86
Hình 64: Giao diện quản trị viên thống kê doanh thu 87
Hình 65: Giao diện quản trị viên thống kê nhà tuyển dụng mới 87
Hình 66: Giao diện quản trị viên thống kê công việc trong hệ thống 88
Hình 67: Giao diện quản trị viên thống kê hồ sơ ứng tuyển trong hệ thống 88
Bảng 2: Usecase tìm kiếm công việc 32
Bảng 3: Usecase xem thông tin chi tiết nhà tuyển dụng 32
Bảng 4: Usecase xem thông tin chi tiết công việc 33
Bảng 5: Usecase cập nhật thông tin cá nhân 34
Bảng 7: Usecase ứng tuyển công việc 35
Bảng 8: Usecase cập nhật thông tin công ty 36
Bảng 9: Usecase tìm kiếm và lọc danh sách việc làm đã đăng tuyển 36
Bảng 10: Usecase tạo công việc 37
Bảng 11: Usecase xem danh sách hồ sơ ứng tuyển vào công việc 38
Bảng 12: Usecase tìm kiếm danh sách hồ sơ ứng tuyển vào công việc 39
Bảng 13: Usecase xem chi tiết hồ sơ ứng tuyển của ứng viên 39
Bảng 14: Usecase xử lý hồ sơ của ứng viên đã ứng tuyển vào công việc 40
Bảng 15: Usecase nâng cấp tài khoản 41
Bảng 16: Usecase sử dụng dịch vụ thống kê 42
Bảng 17: Usecase xem danh sách hồ sơ nổi bật của các ứng viên 42
Bảng 18: Usecase tìm kiếm hồ sơ trong danh sách hồ sơ nổi bật của ứng viên 43
Bảng 19: Usecase hủy gói nâng cấp tài khoản 44
Bảng 20: Usecase xem thống kê số liệu 45
Bảng 21: Usecase phê duyệt công ty 45
Bảng 22: Usecase phê duyệt công việc 46
Bảng 37: Bảng kiểm thử một số chức năng 89
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Tuyển dụng trực tuyến đang trở thành một lĩnh vực phát triển nhanh chóng tại Việt Nam, với thị trường nóng bỏng và tiềm năng bứt phá Các website tuyển dụng ngày càng phổ biến, phục vụ nhu cầu của cả người tìm việc lẫn nhà tuyển dụng Sự phát triển mạnh mẽ của internet và ứng dụng công nghệ thông tin đã thúc đẩy sự ra đời và phát triển của các nền tảng tuyển dụng trực tuyến.
Các doanh nghiệp tuyển dụng có thể xây dựng website tuyển dụng riêng để tiết kiệm chi phí quảng cáo và nâng cao sức cạnh tranh so với phương thức truyền thống Website giúp tiếp cận nhiều ứng viên hơn, tiết kiệm thời gian và tối ưu hóa việc quản lý, thống kê hồ sơ ứng viên Đối với ứng viên, họ có thể dễ dàng tìm kiếm thông tin việc làm và nộp hồ sơ trực tuyến trên website.
Các website tuyển dụng nổi bật như TopCV, Vieclam24h, VietnamWorks và CareerBuilder đang đáp ứng nhu cầu tuyển dụng và tìm việc của thị trường TopCV nổi bật với tính năng tạo CV trực tuyến và nhiều mẫu CV chuyên nghiệp dễ dàng tùy chỉnh Vieclam24h cung cấp tin tuyển dụng mới nhất, cho phép ứng viên nộp hồ sơ trực tuyến nhanh chóng VietnamWorks kết nối doanh nghiệp lớn với ứng viên chất lượng cao, hỗ trợ từ đăng tin tuyển dụng đến quản lý hồ sơ CareerBuilder mang đến dịch vụ tuyển dụng toàn diện, bao gồm đánh giá kỹ năng và phát triển nghề nghiệp.
Dự án "Website tuyển dụng cho doanh nghiệp" giúp tối ưu hóa quy trình quản lý và tuyển dụng, tiết kiệm chi phí, nâng cao hiệu quả hoạt động và tạo ra môi trường tuyển dụng chuyên nghiệp hơn cho các doanh nghiệp.
2 MỤC ĐÍCH CỦA ĐỀ TÀI
Mục tiêu chính của đề tài là phát triển một trang tuyển dụng tích hợp đầy đủ các chức năng cơ bản, đồng thời kết hợp những tính năng nổi bật từ các trang tuyển dụng lớn để mang lại sự thuận tiện cho người dùng Bên cạnh đó, trang còn cung cấp những tính năng mới mẻ và sáng tạo, nhằm nâng cao trải nghiệm người dùng.
3 CÁCH TIẾP CẬN VÀ PHẠM VI NGHIÊN CỨU Đối tượng nghiên cứu:
Người tìm việc bao gồm một loạt đối tượng từ sinh viên mới tốt nghiệp đến những người có nhiều năm kinh nghiệm Họ có thể là những cá nhân đang tìm kiếm cơ hội nghề nghiệp mới hoặc muốn chuyển đổi sang lĩnh vực khác để phát triển sự nghiệp.
Nhà tuyển dụng bao gồm các công ty và tổ chức có nhu cầu tuyển dụng nhân sự cho nhiều vị trí khác nhau, cùng với các nhà quản lý nhân sự hoặc người phụ trách tuyển dụng trong doanh nghiệp.
- Các trung gian tuyển dụng: Các công ty hoặc tổ chức cung cấp dịch vụ tuyển dụng, headhunter, hoặc các đơn vị tư vấn nhân sự
Website cung cấp nhiều chức năng hữu ích cho người tìm việc và nhà tuyển dụng, bao gồm khả năng tìm kiếm việc làm và đăng tin tuyển dụng Các công cụ hỗ trợ như tạo hồ sơ và CV trực tuyến, lọc và gợi ý việc làm phù hợp, theo dõi hồ sơ ứng tuyển, quản lý ứng tuyển, công việc, nhà tuyển dụng và bài viết, cùng với các thống kê chi tiết, giúp tối ưu hóa quá trình tìm kiếm và tuyển dụng.
- Trải nghiệm người dùng: Giao diện thân thiện với người dùng, hiệu quả và tiện lợi trong việc sử dụng trang web
- Hiệu quả tuyển dụng: Nghiên cứu thời gian và chi phí tuyển dụng, chất lượng ứng viên được tuyển dụng thông qua website
Thị trường tuyển dụng hiện nay đang có nhiều biến động, với nhu cầu cao ở một số ngành nghề và lĩnh vực cụ thể Các xu hướng công nghệ mới, như trí tuệ nhân tạo và tự động hóa, đang định hình lại cách thức tuyển dụng Bên cạnh đó, các phương pháp mới trong tuyển dụng cũng đang được áp dụng, giúp các doanh nghiệp tìm kiếm và thu hút nhân tài hiệu quả hơn.
- Phân tích cạnh tranh: So sánh với các website tuyển dụng khác về các tính năng, ưu và nhược điểm
4 KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC
Để phát triển một sản phẩm phần mềm hiệu quả, cần nắm vững quy trình phát triển và nâng cao kiến thức về NodeJS để thiết kế các Restful API Bên cạnh đó, việc sử dụng ReactJS để xây dựng giao diện và gọi API là rất quan trọng, cùng với việc áp dụng WebSocket cho các tính năng real-time.
- Nâng cao khả năng tự học và đọc tài liệu, kỹ năng giải quyết vấn đề
- Rèn luyện được kỹ năng làm việc nhóm và giải quyết vấn đề của tập thể
- Rèn luyện kỹ năng quản lý thời gian cũng như phân chia công việc
Tạo ra được một trang tuyển dụng cơ bản với những chức năng cốt lõi như:
- Tạo tài khoản người dùng
- Quản lý thông tin cá nhân
- Quản lý công việc tuyển dụng
- Quản lý hồ sơ ứng tuyển và ứng tuyển
- Duyệt tài khoản nhà tuyển dụng
- Theo dõi trạng thái ứng tuyển
PHẦN NỘI DUNG CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1 REACTJS
ReactJS là nền tảng lý tưởng cho phần giao diện người dùng của trang web, cho phép xây dựng các thành phần giao diện tái sử dụng, từ đó giúp phát triển ứng dụng một cách dễ dàng và hiệu quả.
Giao diện người dùng được chia thành các thành phần riêng biệt, giúp quản lý mã nguồn và tương tác người dùng một cách hiệu quả
React Router được sử dụng để xử lý định tuyến (routing), cho phép chuyển đổi giữa các trang mà không cần tải lại trình duyệt
Redux hoặc React Context API được sử dụng để quản lý trạng thái toàn cục của ứng dụng và chia sẻ dữ liệu giữa các thành phần
Node.js là một môi trường chạy mã nguồn mở và đa nền tảng cho Javascript, có khả năng hoạt động trên các hệ điều hành như Windows, Linux, Unix và macOS Sử dụng động cơ V8 của Google Chrome, Node.js cho phép thực thi mã JavaScript bên ngoài trình duyệt, đặc biệt là trên máy chủ.
Node.js mang đến khả năng sử dụng JavaScript không chỉ trên trình duyệt mà còn ở phía máy chủ, tạo ra một môi trường phát triển đồng nhất cho toàn bộ ứng dụng web.
Node.js sử dụng mô hình bất đồng bộ để xử lý nhiều kết nối đồng thời mà không làm chậm chương trình, điều này rất phù hợp cho các ứng dụng thời gian thực và những ứng dụng yêu cầu nhiều kết nối cùng lúc.
Node.js là nền tảng dựa trên kiến trúc sự kiện, cho phép các sự kiện như yêu cầu mạng và thao tác tệp tin kích hoạt các hàm xử lý đã được đăng ký Kiến trúc này giúp tối ưu hóa hiệu suất và tăng cường khả năng phản ứng của ứng dụng.
MÔ HÌNH HÓA YÊU CẦU
THIẾT KẾ PHẦN MỀM
THIẾT KẾ GIAO DIỆN
Chương 5 Cài đặt và kiểm thử
[1] Nguồn ảnh ReactJS: https://media.licdn.com/dms/image/C4D12AQH3qYOED91Ueg/article-cover_image- shrink_720_1280/0/1572723455110?e!47483647&vta&t=pQM3HJnzSDbXv9h9zM8EXfTgbBkf_j V-6bf_FPCu1mE
[2] Nguồn ảnh NodeJS: https://img-c.udemycdn.com/course/750x422/3567445_8642_4.jpg
[3] Nguồn ảnh MongoDB: https://mma.prnewswire.com/media/384058/MongoDB_Logo.jpg?pebook
[4] Website TOPCV: https://www.topcv.vn/viec-lam
[5] Website Vieclam24h: https://vieclam24h.vn/
[6] NodeJS document: https://nodejs.org/docs/latest/api/
[7] Learn ReactJS: https://react.dev/learn
[8] ExpressJS document: https://expressjs.com/en/4x/api.html
[9] Mongoose document: https://mongoosejs.com/docs/api/mongoose.html
[10] Typescript document: https://www.typescriptlang.org/docs/handbook/typescript-in-5-minutes.html
[11] ReactJS document: https://legacy.reactjs.org/docs/getting-started.html
[12] Redux document: https://redux.js.org/
[13] TailwindCSS document: https://v2.tailwindcss.com/docs
STT Thời gian Công việc Ghi chú
- Tìm hiểu về NodeJS, ReactJS
- Tham khảo các trang web tuyển dụng như TOPCV, Vieclam24h,
Bắt đầu khóa luận tốt nghiệp
- Thảo luận và đề ra các chức năng, giao diện chính của ứng dụng
- Từ đó, lên kế hoạch cho luận văn
- Thực hiện mô hình hoá các yêu cầu, thiết kế các diagram, đặc tả chi tiết
- Từ đó xây dựng database phù hợp với các chức năng, liệt kê các giao diện chức năng, các API cần sử dụng
- Cài đặt database và tìm kiếm dữ liệu
- Thực hiện xây dựng và thiết kế giao diện trang web một cách chi tiết Thiết kế các API cần sử dụng
+ Cài đặt các giao diện phía ứng viên
+ Tạo liên kết giữa các trang với nhau
+ Thực hiện kết nối với database, xây dựng trang web theo mô hình MVC
+ Cài đặt các API đăng nhập, đăng xuất và phía ứng viên
+ Cài đặt các giao diện phía nhà tuyển dụng
+ Tạo liên kết giữa các trang với nhau
+ Cài đặt các API phía nhà tuyển dụng
+ Cài đặt các giao diện phía quản trị viên
+ Tạo liên kết giữa các trang với nhau
+ Cài đặt các API phía quản trị viên
- Tiến hành test toàn bộ hệ thống để hoàn thiện trang web
- Chỉnh sửa các tính năng đã cài đặt hoặc thêm các tính năng mới để tối ưu hơn
- Tìm hiểu Deploy hệ thống và tiến hành Deploy Tiến hành viết báo cáo
09/07/2024 - Hoàn thành báo cáo Kết thúc khóa luận tốt nghiệp
Ngày tháng 07 năm 2024 Người viết đề cương Ý kiến của giáo viên hướng dẫn
(ký và ghi rõ họ tên)
LỜI CẢM ƠN 1 ĐỀ CƯƠNG LUẬN VĂN TỐT NGHIỆP 2
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI 14
2 MỤC ĐÍCH CỦA ĐỀ TÀI 15
3 CÁCH TIẾP CẬN VÀ PHẠM VI NGHIÊN CỨU 15
4 KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC 16
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 17
CHƯƠNG 2: KHẢO SÁT VÀ PHÂN TÍCH HIỆN TRẠNG 22
CHƯƠNG 3: MÔ HÌNH HÓA YÊU CẦU 30
CHƯƠNG 4: THIẾT KẾ PHẦN MỀM 48
4.3 THIẾT KẾ CƠ SỞ DỮ LIỆU 62
CHƯƠNG 5: CÀI ĐẶT VÀ KIỂM THỬ 89
Hình 6: Lược đồ usecase phía ứng viên 30
Hình 7: Lược đồ usecase phía nhà tuyển dụng 30
Hình 8: Lược đồ usecase phía quản trị viên 31
Hình 9: Lược đồ tuần tự đăng nhập 48
Hình 10: Lược đồ tuần tự tìm kiếm công việc 49
Hình 11: Lược đồ tuần tự tìm kiếm nhà tuyển dụng 49
Hình 12: Lược đồ tuần tự cập nhật thông tin cá nhân 50
Hình 13: Lược đồ tuần tự ứng viên tạo resume 50
Hình 14: Lược đồ tuần tự ứng tuyển công việc 51
Hình 15: Lược đồ tuần tự hủy ứng tuyển công việc 52
Hình 16: Lược đồ tuần tự ứng viên tìm kiếm dơn ứng tuyển 53
Hình 17: Lược đồ tuần tự cập nhật thông tin công ty 53
Hình 18: Lược đồ tuần tự nhà tuyển dụng tạo công việc 54
Hình 19: Lược đồ tuần tự nhà tuyển dụng duyệt đơn ứng tuyển 54
Hình 20: Lược đồ tuần tự nhà tuyển dụng tìm kiếm đơn ứng tuyển 55
Hình 21: Lược đồ tuần tự nhà tuyển dụng nâng cấp tài khoản 55
Hình 22: Lược đồ tuần tự nhà tuyển dụng hủy nâng cấp tài khoản 56
Hình 23: Lược đồ tuần tự nhà tuyển dụng tìm kiếm resume 56
Hình 24: Lược đồ tuần tự nhà tuyển dụng thống kê công việc 57
Hình 25: Lược đồ tuần tự nhà tuyển dụng thống kê đơn ứng tuyển 57
Hình 26: Lược đồ tuần tự quản trị viên duyệt nhà tuyển dụng 58
Hình 27: Lược đồ tuần tự quản trị viên duyệt công việc 58
Hình 28: Lược đồ tuần tự quản trị viên thống kê doanh thu 59
Hình 29: Lược đồ tuần tự quản trị viên thống kê công việc 59
Hình 30: Lược đồ tuần tự quản trị viên thống kê nhà tuyển dụng 60
Hình 31: Lược đồ tuần tự quản trị viên thống kê hồ sơ ứng tuyển 60
Hình 33: Lược đồ thực thể kết hợp 62
Hình 34: Giao diện đăng nhập 72
Hình 35: Giao diện đăng tin tuyển dụng 72
Hình 36: Giao diện việc làm đã đăng tuyển 73
Hình 37: Giao diện danh sách việc làm chưa duyệt 73
Hình 38: Giao diện chi tiết công việc 74
Hình 39: Giao diện duyệt công việc 74
Hình 40: Giao diện danh sách hồ sơ của ứng viên 75
Hình 41: Giao diện chọn mẫu hồ sơ 75
Hình 42: Giao diện tạo hồ sơ 76
Hình 43: Giao diện tìm kiếm công việc 76
Hình 44: Giao diện thông tin chi tiết công việc 77
Hình 45: Giao diện ứng tuyển công việc 77
Hình 46: Giao diện nhà tuyển dụng xem danh sách hồ sơ ứng tuyển vào công việc 78
Hình 47: Giao diện nhà tuyển dụng xem thông tin hồ sơ 78
Hình 48: Giao diện nhà tuyển dụng duyệt hồ sơ 79
Hình 49: Giao diện trạng thái hồ sơ sau khi được nhà tuyển dụng duyệt 79
Hình 50: Giao diện ứng viên xem lịch sử công việc đã ứng tuyển 80
Hình 51: Giao diện nhà tuyển dụng cập nhật thông tin công ty 80
Hình 52: Giao diện thông tin công ty cũ hiển thị trên hệ thống khi chưa được duyệt 81
Hình 53: Giao diện danh sách nhà tuyển dụng chưa được duyệt 81
Hình 54: Giao diện duyệt nhà tuyển dụng 82
Hình 55: Giao diện thông tin nhà tuyển dụng trên hệ thống sau khi được duyệt 82
Hình 56: Giao diện nhà tuyển dụng hủy nâng cấp tài khoản 83
Hình 57: Giao diện nhà tuyển dụng nâng cấp tài khoản 83
Hình 58: Giao diện thanh toán sử dụng VNPAY 84
Hình 59: Giao diện kết quả thanh toán 84
Hình 60: Giao diện dịch vụ thống kê hồ sơ 85
Hình 61: Giao diện dịch vụ thống kê công việc 85
Hình 62: Giao diện dịch vụ tìm kiếm ứng viên 86
Hình 63: Giao diện ứng viên cho phép nhà tuyển dụng tìm kiếm hồ sơ 86
Hình 64: Giao diện quản trị viên thống kê doanh thu 87
Hình 65: Giao diện quản trị viên thống kê nhà tuyển dụng mới 87
Hình 66: Giao diện quản trị viên thống kê công việc trong hệ thống 88
Hình 67: Giao diện quản trị viên thống kê hồ sơ ứng tuyển trong hệ thống 88
Bảng 2: Usecase tìm kiếm công việc 32
Bảng 3: Usecase xem thông tin chi tiết nhà tuyển dụng 32
Bảng 4: Usecase xem thông tin chi tiết công việc 33
Bảng 5: Usecase cập nhật thông tin cá nhân 34
Bảng 7: Usecase ứng tuyển công việc 35
Bảng 8: Usecase cập nhật thông tin công ty 36
Bảng 9: Usecase tìm kiếm và lọc danh sách việc làm đã đăng tuyển 36
Bảng 10: Usecase tạo công việc 37
Bảng 11: Usecase xem danh sách hồ sơ ứng tuyển vào công việc 38
Bảng 12: Usecase tìm kiếm danh sách hồ sơ ứng tuyển vào công việc 39
Bảng 13: Usecase xem chi tiết hồ sơ ứng tuyển của ứng viên 39
Bảng 14: Usecase xử lý hồ sơ của ứng viên đã ứng tuyển vào công việc 40
Bảng 15: Usecase nâng cấp tài khoản 41
Bảng 16: Usecase sử dụng dịch vụ thống kê 42
Bảng 17: Usecase xem danh sách hồ sơ nổi bật của các ứng viên 42
Bảng 18: Usecase tìm kiếm hồ sơ trong danh sách hồ sơ nổi bật của ứng viên 43
Bảng 19: Usecase hủy gói nâng cấp tài khoản 44
Bảng 20: Usecase xem thống kê số liệu 45
Bảng 21: Usecase phê duyệt công ty 45
Bảng 22: Usecase phê duyệt công việc 46
Bảng 37: Bảng kiểm thử một số chức năng 89
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Tuyển dụng trực tuyến đang phát triển nhanh chóng và tạo ra nhiều cơ hội tại Việt Nam Thị trường tuyển dụng trực tuyến hiện là một trong những lĩnh vực nóng nhất, với các website tuyển dụng trở thành nền tảng phổ biến cho cả người tìm việc và nhà tuyển dụng Sự bùng nổ của internet cùng với ứng dụng công nghệ thông tin và số hóa đã đóng vai trò quan trọng trong cuộc sống hàng ngày, thúc đẩy sự ra đời và phát triển của các website tuyển dụng trực tuyến.
Các doanh nghiệp tuyển dụng có thể tận dụng xu thế hiện nay bằng cách xây dựng website tuyển dụng riêng, giúp tiết kiệm chi phí quảng cáo và nâng cao sức cạnh tranh so với phương thức truyền thống Website tuyển dụng không chỉ tiếp cận được nhiều ứng viên hơn mà còn tiết kiệm thời gian và tối ưu hóa việc quản lý, thống kê hồ sơ ứng viên Đối với ứng viên, họ có thể dễ dàng tìm kiếm thông tin việc làm và nộp hồ sơ trực tuyến trên website.
Các website tuyển dụng hàng đầu như TopCV, Vieclam24h, VietnamWorks và CareerBuilder đang đáp ứng nhu cầu tìm việc và tuyển dụng của thị trường TopCV nổi bật với tính năng tạo CV trực tuyến và nhiều mẫu CV chuyên nghiệp Vieclam24h cung cấp tin tuyển dụng mới nhất và cho phép ứng viên nộp hồ sơ nhanh chóng VietnamWorks kết nối doanh nghiệp lớn với ứng viên chất lượng, hỗ trợ từ đăng tin đến quản lý hồ sơ CareerBuilder mang đến dịch vụ tuyển dụng toàn diện, bao gồm đánh giá kỹ năng và phát triển nghề nghiệp.
Dự án "Website tuyển dụng cho doanh nghiệp" đáp ứng nhu cầu quản lý và tuyển dụng, giúp tiết kiệm chi phí, nâng cao hiệu quả và tạo ra môi trường tuyển dụng chuyên nghiệp hơn.
2 MỤC ĐÍCH CỦA ĐỀ TÀI
Mục tiêu của đề tài là xây dựng một trang tuyển dụng đầy đủ chức năng cơ bản, kết hợp các tính năng nổi bật từ các trang tuyển dụng lớn để mang lại sự thuận tiện cho người dùng Bên cạnh đó, trang cũng sẽ cung cấp những tính năng mới mẻ và sáng tạo, nhằm nâng cao trải nghiệm người dùng trong quá trình tìm kiếm việc làm.
3 CÁCH TIẾP CẬN VÀ PHẠM VI NGHIÊN CỨU Đối tượng nghiên cứu:
Người tìm việc bao gồm đa dạng đối tượng, từ sinh viên mới tốt nghiệp cho đến những người có nhiều năm kinh nghiệm Họ không chỉ tìm kiếm việc làm mới mà còn có thể là những người muốn chuyển đổi nghề nghiệp hoặc khám phá cơ hội trong các lĩnh vực khác.
Nhà tuyển dụng bao gồm các công ty và tổ chức có nhu cầu tìm kiếm nhân sự cho nhiều vị trí khác nhau, cùng với các nhà quản lý nhân sự hoặc người phụ trách tuyển dụng trong doanh nghiệp.
- Các trung gian tuyển dụng: Các công ty hoặc tổ chức cung cấp dịch vụ tuyển dụng, headhunter, hoặc các đơn vị tư vấn nhân sự
Website cung cấp nhiều chức năng hữu ích cho người tìm việc và nhà tuyển dụng, bao gồm khả năng tìm kiếm việc làm và đăng tin tuyển dụng Các công cụ hỗ trợ như tạo hồ sơ và CV trực tuyến, cũng như các tính năng lọc và gợi ý việc làm phù hợp, giúp người dùng dễ dàng tìm kiếm cơ hội nghề nghiệp Ngoài ra, website còn cho phép theo dõi hồ sơ ứng tuyển, quản lý quá trình ứng tuyển, công việc, nhà tuyển dụng và bài viết, cùng với các thống kê hữu ích để tối ưu hóa trải nghiệm người dùng.
- Trải nghiệm người dùng: Giao diện thân thiện với người dùng, hiệu quả và tiện lợi trong việc sử dụng trang web
- Hiệu quả tuyển dụng: Nghiên cứu thời gian và chi phí tuyển dụng, chất lượng ứng viên được tuyển dụng thông qua website
Thị trường tuyển dụng hiện nay đang có sự chuyển biến mạnh mẽ với nhu cầu cao ở nhiều ngành nghề và lĩnh vực Các xu hướng công nghệ mới, như trí tuệ nhân tạo và phân tích dữ liệu, đang định hình cách thức tuyển dụng, giúp các doanh nghiệp tìm kiếm ứng viên phù hợp hơn Đồng thời, các phương pháp tuyển dụng sáng tạo cũng đang được áp dụng để thu hút nhân tài, đáp ứng nhu cầu ngày càng cao của thị trường lao động.
- Phân tích cạnh tranh: So sánh với các website tuyển dụng khác về các tính năng, ưu và nhược điểm
4 KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC
Hiểu quy trình phát triển phần mềm là rất quan trọng, đặc biệt khi nâng cao kiến thức về NodeJS để thiết kế các Restful API Sử dụng ReactJS giúp tạo giao diện người dùng và thực hiện các cuộc gọi API hiệu quả Bên cạnh đó, WebSocket được áp dụng cho những tính năng yêu cầu cập nhật thời gian thực.
- Nâng cao khả năng tự học và đọc tài liệu, kỹ năng giải quyết vấn đề
- Rèn luyện được kỹ năng làm việc nhóm và giải quyết vấn đề của tập thể
- Rèn luyện kỹ năng quản lý thời gian cũng như phân chia công việc
Tạo ra được một trang tuyển dụng cơ bản với những chức năng cốt lõi như:
- Tạo tài khoản người dùng
- Quản lý thông tin cá nhân
- Quản lý công việc tuyển dụng
- Quản lý hồ sơ ứng tuyển và ứng tuyển
- Duyệt tài khoản nhà tuyển dụng
- Theo dõi trạng thái ứng tuyển
PHẦN NỘI DUNG CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1 REACTJS
ReactJS là nền tảng lý tưởng cho phần giao diện người dùng của website, cho phép xây dựng các thành phần giao diện tái sử dụng, từ đó giúp phát triển ứng dụng dễ dàng và hiệu quả hơn.
Giao diện người dùng được chia thành các thành phần riêng biệt, giúp quản lý mã nguồn và tương tác người dùng một cách hiệu quả
React Router được sử dụng để xử lý định tuyến (routing), cho phép chuyển đổi giữa các trang mà không cần tải lại trình duyệt
Redux hoặc React Context API được sử dụng để quản lý trạng thái toàn cục của ứng dụng và chia sẻ dữ liệu giữa các thành phần
Node.js là một môi trường chạy mã nguồn mở và đa nền tảng cho JavaScript, có khả năng hoạt động trên các hệ điều hành như Windows, Linux, Unix và macOS Được xây dựng trên động cơ V8 của Google Chrome, Node.js cho phép thực thi mã JavaScript bên ngoài trình duyệt, đặc biệt là trên máy chủ.
Node.js mang đến khả năng sử dụng JavaScript không chỉ trên trình duyệt mà còn ở phía máy chủ, tạo ra một môi trường phát triển đồng nhất cho toàn bộ ứng dụng web.
Node.js áp dụng mô hình bất đồng bộ để xử lý nhiều kết nối đồng thời mà không làm gián đoạn chương trình Điều này rất phù hợp cho các ứng dụng thời gian thực và những ứng dụng yêu cầu nhiều kết nối cùng lúc.
Node.js hoạt động dựa trên kiến trúc sự kiện, cho phép các sự kiện như yêu cầu mạng hoặc thao tác tệp tin kích hoạt các hàm xử lý đã được đăng ký Cách tiếp cận này giúp tối ưu hóa hiệu suất và tăng cường khả năng phản ứng của ứng dụng.