Governors State University
OPUS Open Portal to University Scholarship
All Capstone Projects Student Capstone Projects
Fall 2022
Career Engine
Aishwarya Lankoti
Follow this and additional works at: https://opus.govst.edu/capstones
For more information about the academic degree, extended learning, and certificate programs of Governors State
University, go to http://www.govst.edu/Academics/Degree_Programs_and_Certifications/
Visit the Governors State Computer Science Department
This Capstone Project is brought to you for free and open access by the Student Capstone Projects at OPUS Open
Portal to University Scholarship. It has been accepted for inclusion in All Capstone Projects by an authorized
administrator of OPUS Open Portal to University Scholarship. For more information, please contact
opus@govst.edu.
CAREER ENGINE
By
Aishwarya Lankoti
B.Tech., Jawaharlal Nehru Technological University, 2019
GRADUATE CAPSTONE SEMINAR PROJECT
Submitted in partial fulfillment of the requirements
For the Degree of Master of Science,
With a Major in Computer Science
Governors State University
University Park, IL 60484
2022
ABSTRACT
Career Engine is a website where people can search for jobs, apply for one or multiple positions, or review
a company as a current or past employee. A recruiter, who represents a company, can post openings on the
website, contact applicants, or conduct interviews. Job postings on this website are free to be searched or
browsed by anyone visiting the site. However, if one needs to apply for a job, this user needs to register
with or log in to the website. All recruiters also need accounts to post job openings.
By using this website, companies or recruiters can also find a good and well-profiled resume. This website
allows job providers to establish one-on-one relationships with candidates. This website concentrates on
the posting and management of job vacancies. Users will be absssle to search for jobs on this portal. It helps
to review and manage the resulting applications efficiently through the web. Employers can also find the
resume according to key skills more efficiently.
Table of Contents
1. Project Description ................................................................................... Error! Bookmark not defined.
1.1 Competitive Information .................................................................................................................1
1.2 Relationship to Other Applications/Projects ...................................................................................1
1.3 Assumptions and Dependencies ......................................................................................................1
1.4 Future Enhancements ......................................................................................................................1
1.5 Definitions and Acronyms...............................................................................................................1
2. Project Technical Description ....................................................................................................................2
2.1 Application Architecture .................................................................................................................2
2.2 Technical Architecture ....................................................................................................................2
2.3 Interactions with other Applications ...............................................................................................5
2.4 Capabilities ......................................................................................................................................5
2.5 Risk Assessment and Management .................................................................................................5
3. Project Requirements .................................................................................................................................5
3.1 Identification of Requirements ........................................................................................................5
3.2 Operations, Administration, Maintenance, and Provisioning (OAM&P) .......................................6
3.3 Security and Fraud Prevention ........................................................................................................6
3.4 Release and Transition Plan ............................................................................................................7
4. Project Design Description ........................................................................................................................7
5. Project Internal/external Interface Impacts and Specification ...................................................................8
6. Project Design Units Impacts ...................................................................................................................14
6.1 Functional Area .............................................................................................................................14
6.1.1 Functional Overview..................................................................................................................14
6.1.2 Impacts .......................................................................................................................................15
7. Open Issues ..............................................................................................................................................15
8. Acknowledgements ..................................................................................................................................15
9. References ................................................................................................................................................15
10. Appendices .............................................................................................................................................15
i
1. Project Description
It is difficult to find work in skilled fields in today's world. This website is developed for a simple and
effective way to search for jobs. This Web portal is very helpful for all users, whether experienced or new.
By using this website, job seekers can upload his resumes and get plenty of opportunities matching their
profiles. Every user has a unique ID and can apply for multiple jobs at a time. Most of the job portals are
there to serve this purpose. Career Engine is another job portal where job seekers and recruiters can
communicate on the same platform so that the right job seeker is placed in the right organization.
1.1. Competitive Information
There are multiple websites available in the market that provide information about various jobs; some of
them are Times Jobs, Naukri, Monster, and so on. They just display job vacancies; there is no provision to
search for suitable jobs. In our application, a job seeker can perform a search operations based on location,
job title, and company name. We have implemented a better search system than the existing one so that job
seekers can get exact results.
1.2. Relationship to Other Applications/Projects
There are so many applications related to our project, which helps job seekers to search for jobs. But we
developed our application using open-source software like HTML, CSS, and JavaScript. PHP is used as a
programming language and MySQL database as a backend. To compile and run applications we use
XAMPP software.
1.3. Assumptions and Dependencies
Only registered users can access this website. Only recruiters and job seekers can post job details after
successfully logging in. For unregistered users, separate mechanisms are there for recruiters and job seekers.
The admin has complete control over the system; he or she can view job details posted by the recruiter,
delete job details, and monitor how many job seekers are registered for a specific job.
1.4. Future Enhancements
We try to use video interaction between the recruiter and the job seeker so that the recruiter can finish his
work and the job seeker does not have to go to the interview. We also include an email or mobile notification
module, so that whenever a new job is posted on the site, job seekers are notified, and they are also notified
when a specific job is approved or rejected.
1.5. Definitions and Acronyms
Admin: Admin is the one who controls entire project. He/she can approve or reject recruiter requests
Recruiter: He/she is the one who uploads job details of a particular company.
Job seeker: He/she is the one who applies for the job.
Applied Job: The jobs applied by the job seeker.
Posted Job: The list of jobs uploaded by the recruiter.
1
2. Project Technical Description
This project has three actors namely Admin, Recruiter and Job Seeker. Every actor performs specific operation
to meet client requirements. The system architecture, technical architecture and UML diagrams are discussed in
following sections.
2.1. Application Architecture
Specifically, in our web application we have three stakeholders Admin, job seeker and recruiter. In other
words, application architecture can be described as the flow of application which is represented below in
the pictorial format.
Figure 1: Application architecture of Career Engine
2.2 Technical Architecture
The system is developed as a three-tier application. Three parts are categorized as front-end, middleware,
and back-end. The front end is designed with HTML, CSS, and JavaScript. For middleware, we have used
Java, JSP, and JDBC. MySQL acts as a database. Figure 2 represents the technical architecture of our web
site.
2
Figure 2: Technical Architecture
UML Diagram:
Use case diagram
1. Admin, Recruiter and Job seeker are the Actors.
2. Login, register, update job details, view job details, apply for job, view response, and view users,
logout are the use cases.
3. Association relationship between Actors and their corresponding Use Cases.
Figure 3: Use case diagram
Class Diagram:
1. Admin, Job seeker, and Recruiter are the classes.
2. The Attributes and Operations of the respective classes are placed in the class.
3. There is an association relationship between Admin, job seeker, and recruiter
3
Figure 4:Class Diagram
ER-Diagram:
Figure 5: ER-Diagram
2.5 Interactions with Other Applications
4
Our website is designed to interact with other job portals like Naukri and Times Jobs, this system is designed
to obtain job details from different websites. Job seekers can conduct mock interviews on other websites
using our system.
2.6. Capabilities
The project is designed using different technologies. MySQL database is used as backend and Java is used
as a middleware. System has the capability to perform insert, update, delete and select operations on data
base dynamically. When a user registers, we perform an insert operation to store details, and a select
operation to display job details to job seekers. This system is designed to interact with different data bases
and operating systems. System is developed using java therefore it is independent of database and operating
system.
2.7. Risk Assessment and Management
Risk assessment is the identification of risks that impact the performance of an entire system. Risk
assessment assists in reducing risks and taking the necessary steps to minimize the system's impact.. A
separate team is assigned to perform this operation. They will maintain a risk management log for future
purposes. In our projects, risks are categorized into three types: low, high, and medium. Risks are handled
with the "highest priority first" principle
3. Project Requirements
3.1 Identification of Requirements
In today’s world It is difficult to find work in skilled fields. This web site is designed to be a clear and
effective way to search for jobs. This Web portal is very helpful for all users, whether experienced or new.
By using this website, job seekers can upload their resumes and get plenty of opportunities matching their
profiles. Every user has a unique ID and can apply for multiple jobs at a time. Companies or recruiters can
also use this website to find a good and well-profiled resume. This website will allow job providers to
establish one-on-one relationships with candidates. This website mainly concentrates on the posting and
management of job vacancies. Users will be able to search for jobs on this portal. It helps to review and
manage the resulting applications efficiently through the web. Employers can also find the resume
according to key skills in a very short amount of time.
The majority of job portals aim to serve this purpose. Career Engine is another job portal where job seekers
and recruiters can communicate on the same platform so that the right job seeker is placed in the right
organization. To achieve this goal, we have conducted research on various job portals and noted the
advantages and disadvantages of each. and also interacted with different job seekers and recruiters and listed
their requirements. After all our research, we discussed with the professor and finally set the detailed
requirements that I expected to see in my application. I gathered requirements to satisfy the following three
important factors:
1) User Capability: Every user has a unique username, and all the information must be stored and retrieved
securely. To perform this operation, we have used the MySQL database.
5
2) User-Friendly: We have opted for HTML, CSS, and JavaScript for implementing the user interface to
achieve and enhance the usability of the application. Bootstrap is used for look-and-feel design. The
application is developed using HTML, so you need to train any user how to use it.
3) User Experience: This application is designed to maintain heavy traffic. The application is running
inside the server, and a database is maintained to store all the user data. To increase the user experience of
the application, we have used the best technology to render the server-side, which is called a JSP (Java
Server Page). This application is quite fast and performs search operations very quickly.
3.2 Operations, Administration, Maintenance, and Provisioning (OAM&P):
Administration, recruiting, and job seekers are the three main actors in our system.
Admin is the one who maintains the entire system. The following are the operations performed by the
administrator:
1. He/she can approve the recruiter.
2. He/she has access to job postings.
3. He/she can delete job postings.
4. He/she can observe interactions between recruiters and job seekers.
5. He/she can view user feedback.
The Recruiter is one who plays a major role in Career Engine; he is responsible for uploading job details
and can view and select job seekers. The following are the operations performed by the recruiter:
1. He/she can register with the system.
2. He/she can upload job details.
3. He/she has access to job seeker requests.
4. He/she has the authority to accept or reject a job seeker's request.
5. He/she can interact with job seekers.
A Job seeker is one who searches for jobs, can apply for multiple jobs, and can view previous job details.
The job seeker is the most important role in our project because the main aim is to provide job details to the
job seeker. Following are the operations performed by the job seeker:
1. He/she can register with the system.
2. He/she can search for a job.
3. He/she can view job details.
4. He/she can apply for jobs.
5. He/she has access to the recruiter's response and interacts with the recruiter.
3.3 Security and Fraud Detection
During a job application, the job seeker uploads his personal and professional details, which could be
exploited to steal the applicant's identity or commit financial fraud. So, for fraud prevention, we have
implemented the following two methods:
It is recommended to avoid job postings done through pop-up windows, which do not offer company
information such as a job profile or contact number. Even if you want to apply for the job, visit the
company's official website and contact the customer service department for more information.
All major companies are registered with MCA. Before applying for any job, it is recommended that
you go through the MCA website and view the company profile.
6
3.4 Release and Transition Plan
The project is developed as a client-server model, so it needs to be deployed on a client organization server.
All necessary software is installed in the client organization, and sufficient space is purchased to store and
run the application on the server. Future release dates are communicated to the client, and advanced features
are frequently upgraded based on client preferences.
4. Project Design Description:
There are separate UIs designed for each module. Administrative UI is for maintaining all the operations
and the database, and we can also perform insert, delete, and update operations on the database. Recruiter
UI is designed to perform job postings, view requests, and send or view job seeker messages. Job seeker UI
is designed to perform search operations, view job details, and have interactions with recruiters. Our system
consists of three modules.
1. Admin
2. Recruiter
3. Work Seeker
The admin module will perform the following operations:
1. Login.
2. Approve Recruiters.
3. View job details.
4. Delete job details.
5. Look at job seekers.
6. View recruiters.
7. View feedback.
8. View interactions between recruiters and job seekers.
The recruiter module will perform the following operations:
1. Register.
2. Login.
3. Upload job details.
4. Examine job seeker requests.
5. Accept or reject job seeker applications.
6. Interaction with job seekers.
7. Logout.
The Job Seeker module will perform the following operations:
1. Register.
2. Login.
3. Search for jobs based on job titles.
4. Look the city or jobs based on the name of the company.
5. Search for jobs based on city
6. View job details
7. Job application
8. View job status
9. Interaction with the recruiter
7
10. Logout
5. Internal/External Impacts and Specification:
We designed interfaces utilizing various technologies that contribute to establishing user-friendly
interfaces, which include HTML, CSS, JavaScript, JSP, JDBC, and MySQL.
For UI development, we use HTML; for applying styles, we use CSS; to perform client-side validations,
we use Java script; and for realistic design, we use Bootstrap. MySQL is used as a back-end database.
MySQL is simple, open-source software; Java Server Pages (JSP) and Java Data Base Connectivity (JDBC)
act as middleware. These are responsible for receiving requests from the front end and performing
operations on the database. Tomcat, an open-source web server designed to run Java-based web
applications, is used for deployment.
An agile development model is used to develop this application. In the Agile model, the entire project is
divided into small incremental builds. Figure 3 depicts the Agile model.
Figure 6: Agile model [5]
8
Project Output Screen shots:
Figure 7:Home Page
Figure 8:Admin Login Page
Figure 9:Admin Home Page
9
Figure 10:Pending Recruiter Requests
10
Figure 11:View Job Postings
Figure 12:Recruiter Home Page
11
Figure 13:Post Job Details
Figure 14:View Job Seeker queries
12
Figure 17:Job seeker Home Page
Figure 16: Search based on job title
Figure 15:Search Result
13
Figure 18: View previously applied jobs
6. Project Design Unit Impacts
Company employees can register as a recruiter and regular people can register and login as Job seeker and search
for positions that match their skill set. The following are the design unit impacts
1. Registered job seekers can apply for multiple jobs directly
2. Only approved recruiters can post job details and can view job seeker profiles.
3. Multiple company recruiters can register and post their jobs
4. Only registered users can search for and view job postings and check the status of their application from
recruiters
6.1. Functional Area
6.1.1 Functional Overview
Following are the software technologies used in this application
Software Requirements:
1. UI Design: HTML, CSS and Bootstrap
2. Client-side Scripting: JavaScript
3. Web-based Technologies: JSP
4. Database: MySQL
5. Operating Systems: Windows
6. Server: Tomcat Web Server
7. IDE: Eclipse IDE
8. UML design: Star UML
Deployment Requirements
1. Server: Apache Tomcat
2. Data Base: MySQL Database
6.1.2. Impacts
14
The database must be maintained to store a huge amount of information related to job seekers' details, job
details, and recruiter details, and a proper network connection must be maintained between the server and
the database.
7. Open Issues
Career Engine is a web application, it can be accessed by multiple job seekers and recruiters at the same
time. The main risk is finding fraudulent recruiters, and job seekers may post incorrect details. So, a proper
risk management team must be maintained to reduce the impact of the risk.
8. Acknowledgements
I'd like to thank my professor, Dr. Dae Wook Kim for his valuable guidance and cooperation throughout
the course of my project. I sincerely appreciate your valuable time spent assisting me when I needed extra
assistance with this project. Also, I'd like to thank my mentors for their encouragement and for doing
everything they could do to keep me motivated which allowed me to develop my critical thinking and how
to approach the project strategically
9. References
[1] Lee, I. (2005). The evolution of e-recruiting: a content analysis of Fortune 100 career web sites. Journal of
Electronic Commerce in Organizations (JECO), 3(3), 57-68.
[2] Martin, G. (2006). Driving corporate reputations and brands from the inside: A strategic role for HR. In In: Global
Reputation Institute Conference.
[3] Siow, Y., Szwalek, J., Komperda, J., Darabi, H., & Mashayek, F. (2019). A Critical Look at Mechanical Engineering
Curriculum: Assessing the Need.
[4] www.tutorialspoint.com. (2017). Software Development Life Cycle. [Online] Available at:
https://www.tutorialspoint.com/software_engineering/software_development_life_cycle.htm [Accessed 4 Dec.
2022].
[5] Agile Model (Software Engineering) – Javatpoint. [Online] Available at:
https://static.javatpoint.com/tutorial/software-engineering/images/software-engineering-agile-model.png
10. Appendices
1. https://html.com/
2. https://www.tutorialrepublic.com/twitter-bootstrap-tutorial/
3. https://www.guru99.com/jsp-tutorial.html
4. https://www.tutorialspoint.com/jdbc/index.htm
5. https://www.sqltutorial.org/
6. https://www.javatpoint.com/software-engineering-sdlc-models
15