A Spring Boot REST API for a Job Portal application that enables recruiters to post jobs, and job seekers to apply. Includes JWT authentication, role-based access control, file uploads to Cloudinary, scheduling for job expiry, and detailed API documentation with Swagger.
JWT-based login & registrationRole-based access control (RECRUITER, JOB_SEEKER)
Secure endpoints using Spring Security
Post, edit, and delete jobs
View jobs posted by the recruiter
View applications for their jobs
Auto-expire jobs after last application date (scheduler)
Browse available jobs
Apply for jobs
View applied jobs and application details
Cloudinary integration for resume storage
Validation for all request DTOs
Soft delete for expired jobs
Scheduler to mark jobs as expired daily at midnight
Global exception handling
Swagger API documentation