Quay lại dự án

Website Tuyển dụng và tìm kiếm việc làm

09/2024 - 12/2024 Đồ án chuyên ngành (HUTECH)

Tổng quan dự án

Website Tuyển dụng và tìm kiếm việc làm là một nền tảng kết nối nhà tuyển dụng và người tìm việc, giúp quá trình tuyển dụng trở nên hiệu quả và thuận tiện hơn. Dự án được phát triển như một đồ án chuyên ngành tại Trường Đại học Công nghệ TP.HCM (HUTECH).

Công nghệ sử dụng

Spring Boot React RESTful API MySQL WebSocket/STOMP JWT OAuth2 Cloudinary Docker Render

Tính năng chính

Đăng ký và xác thực

Hệ thống xác thực và phân quyền với Spring Security, JWT và OAuth2. Hỗ trợ đăng nhập bằng tài khoản Google.

Tìm kiếm việc làm

Tìm kiếm việc làm với nhiều bộ lọc như vị trí, địa điểm, mức lương, loại công việc và kỹ năng.

Quản lý hồ sơ

Người tìm việc có thể tạo và quản lý hồ sơ cá nhân, tải lên CV và theo dõi trạng thái ứng tuyển.

Đăng tin tuyển dụng

Nhà tuyển dụng có thể đăng tin tuyển dụng, quản lý ứng viên và đánh giá hồ sơ.

Chat thời gian thực

Hệ thống chat thời gian thực giữa nhà tuyển dụng và ứng viên sử dụng WebSocket/STOMP.

Chatbot hỗ trợ

Chatbot hỗ trợ người dùng trả lời các câu hỏi thường gặp và hướng dẫn sử dụng hệ thống.

Thanh toán trực tuyến

Tích hợp hệ thống thanh toán trực tuyến (VNPAY, PayPal) cho các gói dịch vụ tuyển dụng.

Thông báo

Hệ thống thông báo qua email và thông báo thời gian thực về trạng thái ứng tuyển và tin nhắn mới.

Vai trò và trách nhiệm

  • Thiết kế và phát triển RESTful APIs với Spring Boot
  • Quản lý cơ sở dữ liệu MySQL
  • Tối ưu chuyển đổi dữ liệu giữa DTO và Entity với MapStruct
  • Triển khai quản lý hình ảnh trên nền tảng đám mây using Cloudinary
  • Xây dựng hệ thống xác thực và phân quyền với Spring Security, JWT, OAuth2
  • Tích hợp hệ thống thanh toán (VNPAY, PayPal)
  • Xây dựng hệ thống chat thời gian thực với WebSocket/STOMP
  • Xây dựng chatbot hỗ trợ người dùng với mô hình Rule-Based
  • Triển khai dự án với Docker trên Render

Hình ảnh dự án

Thách thức và giải pháp

Xây dựng hệ thống chat thời gian thực

Thách thức: Tạo hệ thống chat thời gian thực với khả năng mở rộng và hiệu suất cao.

Giải pháp: Sử dụng WebSocket/STOMP để xây dựng kết nối hai chiều giữa client và server, kết hợp với Redis để lưu trữ tin nhắn tạm thời và đảm bảo tin nhắn được gửi đến ngay cả khi người dùng offline.

Tối ưu hóa hiệu suất tìm kiếm

Thách thức: Xây dựng hệ thống tìm kiếm việc làm với nhiều bộ lọc và hiệu suất cao.

Giải pháp: Sử dụng Spring Data JPA Specification để xây dựng truy vấn động, kết hợp với caching để tăng tốc độ truy vấn và phân trang kết quả.

Bảo mật và xác thực

Thách thức: Đảm bảo hệ thống an toàn với nhiều loại người dùng và quyền hạn khác nhau.

Giải pháp: Triển khai Spring Security với JWT để xác thực và phân quyền, kết hợp với OAuth2 để hỗ trợ đăng nhập bằng tài khoản Google.

Kết luận

Dự án Website Tuyển dụng và tìm kiếm việc làm là một trải nghiệm học tập quý báu, giúp tôi áp dụng kiến thức lý thuyết vào thực tế và phát triển kỹ năng làm việc với các công nghệ hiện đại. Dự án không chỉ đáp ứng các yêu cầu của đồ án mà còn là một sản phẩm có thể mở rộng và phát triển trong tương lai.

Thông qua dự án này, tôi đã học được cách thiết kế và xây dựng một hệ thống web phức tạp, từ backend đến frontend, và triển khai nó lên môi trường thực tế. Những kinh nghiệm và bài học từ dự án này sẽ là nền tảng vững chắc cho sự phát triển nghề nghiệp của tôi trong tương lai.