MyJob: A Job Posting Management Web Application - xli1994/myjob GitHub Wiki

Job Posting Management Web Application

This is a job posting management web application that is fully designed and developed by myself and can be demonstrated upon request.

This application may be used by mid or small size companies for their HR to manage job posting, job submission, including add/edit/delete/disable job post, view applicants profile, change application status with comments, forward application to other colleagues, search applicant. Job seekers can view, search and submit application.

Technologies used in this project are: JEE 7, JDK 1.8, JSF 2.2, Primefaces 5.1, JPA 2.1 with Hibernate implementation 4.3.8, Solr 5.0 for job search. Database is MySQL 5.6. Application server is Tomcat 8.0.18.

This application include three parts:

Part 1. Job Management

This part is for company HR internal job post management.

Add/Edit Job: In this page, you may enter all data for a job posting. Before you save, you may preview. You may choose "Save Only" (not publish to public), or "Save and publish": Add/Edit a job posting Add/Edit job 2 Add/Edit 3

Previw Job: You may view/preview job before save: View/Preview a job View/Preview a job 2

Manage Job Posting: In this page, you may view/edit/delete/replicate a job post, or sort list by job code, job title, posted date and active status. You may change the job status to inactive/active (if inactive, job seekers can't see it). You may delete batch selected job posts.

"Replicate job" is a convenient function that allow you to create a new job post by replicating an existing job data, then simply modify it.

The pagination function is not implemented here, unless you want to hire hundreds of people.

Manage Job post 1 Manage Job post 2

View Applicants: By clicking "Applicants" number view link in above screen, you may view all applicants who applied for a specific job. In this page, you may sort results by applicants' first/last name, applied date, application status, download resume, forward the application to hiring manager or related people. In this page, pagination function is implemented (assume there are a lot of people applied for a job)

Application list

View Applicant Profile: In this page, you may view applicant's information, download resume, change application status or add comments. You may also forward the application to hiring manager or related people. applicant profile 1

Here you may change application status and add comments:

Applicant profile 2

Applicant profile 3

Forward Page: In this page, you may forward this applicant's information to other people, such as hiring manager, with or without attached resume, Forward 1 Forward 2

Search Applicants: In this page, you may enter applicant's first/last name, email, phone number, or job title keyword to perform search. You may enter more words to narrow down search results

Search by name: search app2

Search by full name (narrow down search): search app2

Search by email: search app2

Search by phone number: search app2

Search by job title keyword: search app2

Part 2. Job List and Apply Form

This part is for job seekers

Job List: In this page, applicants can view job and sort job by job type, location or posted date. Current job list

View Job: In this page, applicants can view job detail and click "Apply" View Job

Apply Form: This is a standard apply form, some data is required, some are optional. Apply 1 Apply

Part 3. Search Job

Applicants can search job with any key word:

Search job keyword: result

Narrow down result with other keyword, such as location: search location

Search job type: search job type

No results found: no result

This application is still in progress. The "Setup" tab is not implemented yet since I have not figured out what to setup, except file desk location for uploaded resume.