Career Engine (Jobsey)

Download as pdf or txt
Download as pdf or txt
You are on page 1of 26

Governors State University

OPUS Open Portal to University Scholarship

All Capstone Projects Student Capstone Projects

Fall 2022

Career Engine [Jobsey]


Santhosh Reddy Chappidi

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 [JOBESY]
By

SANTHOSH REEDDY CHAPPIDI


Bachelors, Sree Dattha Institute Of Engineering And Science, 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

The "Career Engine" software is focused with job posting and registration. We may also use this application
to look for employment openings in a certain location, and the name of the firm will be presented. Timings
and other details are also available online. It will assist you in applying for a better job than the one you
now have. Position seekers may select and register for positions that interest them, and the information
received from the recruiter providing the job will be shown on the job details site. We chose the MERN
stack to develop our "JobEsy" career engine website, which comprises Express.js, React.js, and Node.js,
and I utilize MySQL for the database. The administrator may use Career Engine to get into the system,
authorize a vacancy, and post it on the web. Job searchers and recruiters are managed by the administration.
Job searchers may also log in and search for open opportunities. They can apply for work by presenting
their stuff, such as a resume. Our career engine online application will be responsively maintained. This
will adjust web pages to fit the size of the device's window. On this website, all job searchers, recruiters,
and administrators have their own logins.
Table of Content
1 Project Description ..................................................................................................................................................................................1
1.1 Competitive Information .............................................................................................................................................. 1
1.2 Relationship to Other Applications/Projects ................................................................................................................. 1
1.3 Assumptions and Dependencies ................................................................................................................................... 1
1.4 Future Enhancements.................................................................................................................................................... 2
1.5 Definitions and Acronyms ............................................................................................................................................ 2
2 Project Technical Description ............................................................................................................................................... 2
2.1 Application Architecture .............................................................................................................................................. 2
2.2 Application Information flows...................................................................................................................................... 3
2.3 Interactions with other Projects (if Any) ..................................................................... Error! Bookmark not defined.
2.4 Interactions with other Applications ............................................................................................................................. 5
2.5 Capabilities ................................................................................................................................................................... 5
2.6 Risk Assessment and Management............................................................................................................................... 5
3 Project Requirements ............................................................................................................................................................ 5
3.1 Identification of Requirements ..................................................................................................................................... 5
3.2 Operations, Administration, Maintenance and Provisioning (OAM&P) ...................................................................... 5
3.3 Security and Fraud Prevention ...................................................................................................................................... 6
3.4 Release and Transition Plan .......................................................................................................................................... 6
4 Project Design Description ................................................................................................................................................... 6
5 Internal/external Interface Impacts and Specification ...................................................................................................... 16
6 Design Units Impacts .......................................................................................................................................................... 19
6.1 Functional Area A/Design Unit A .............................................................................................................................. 19
6.1.1 Functional Overview ............................................................................................................................................. 19
6.1.2 Impacts ................................................................................................................................................................... 19
6.1.3 Requirements ......................................................................................................................................................... 19
6.2 Functional Area B/Design Unit B ................................................................................ Error! Bookmark not defined.
6.2.1 Functional Overview .............................................................................................. Error! Bookmark not defined.
6.2.2 Impacts .................................................................................................................... Error! Bookmark not defined.
6.2.3 Requirements .......................................................................................................... Error! Bookmark not defined.
7 Open Issues .......................................................................................................................................................................... 19
8 Acknowledgements .............................................................................................................................................................. 20
9 References ........................................................................................................................................................................... 20
10 Appendices ....................................................................................................................................................................... 20

i
1 Project Description
A portal for job searching is Career Engine named as JobEsy. Connecting job seekers and employers is made simple, quick, easy,
and well-organized by this platform. Candidates looking for work may register, browse for vacancies depending on their
qualifications, and instantly apply for those jobs using this platform. The personal information and skill sets that job seekers
provided upon registration can also be changed. On the other hand, employers may sign up on this site and post job opportunities,
enabling them to find competent people for their available positions. The employer has the option to review the job applications
and take the necessary action. The admin must approve both business registration and company job ads before they may be used
to join the job search service.

Some of the current and traditional methods of recruiting include advertisements in newspapers, posters, TVs, numerous job
fairs, college career fairs, and other traditional forms of recruiting. But these processes are both costly and time-consuming.
Giving out paper printed resumes, keeping track of them, handling and processing them, and then contacting the preferred
candidate to be called for an interview all sound like a lot of work. With the growth of the Internet and the quick advancement
of technology, these efforts can be reduced. The internet job search tool that is available at this time will save you both time and
money on advertisements. The entire application or job search process is accelerated. Manual processes are replaced by
automated ones.

Because of job search portals, the custom of paper resumes is being supplanted by online resumes. Additionally, these resumes
are stored for later use in corporate databases. In a couple of seconds, employers and candidates may connect. Another advantage
is that after registering and submitting an application, a candidate's information is saved in the company database for use in both
available positions now and in the future. We created two layouts for the Angular module, one for the administrator and the other
for the user. Non-registered users can also access the Guest Pages, search job, employer list, job list, and feature job list. As an
administrator, you have the ability to see and manage recruiters, job seekers, and available opportunities. Additionally, the
administrator has the authority to specify a skill known as a Job Application Category. Password changes are available to all
logged-in users. A job can be posted, and recruiters can browse a list of applicants, chat with job seekers, and read their reviews.
They can also update their company profile. The feature may be used by those who are looking for work.

1.1 Competitive Information


There are already a number of career portal websites available; I decided to link our application with LinkedIn. Our application
performs three essential tasks and may be set up in many ways. It reduces the amount of space required while also saving time.

1.2 Relationship to Other Applications/Projects


The jobs in that category will be shown when you choose one. We utilized the easy search feature on the visitor page to find a
job, and then I used advanced search, just like on the replica website, to look for a few different combinations.

1.3 Assumptions and Dependencies


• A solid understanding of computers is necessary for the user.

• The computer has to be capable of accessing the internet and serving as an Internet server.

• Since the user interface will be in English, they must be able to communicate in English.

1
1.4 Future Enhancements
There have been several improvements and new features added to this program. This application may be improved to
automatically schedule interviews based on whether or not a resume is accepted. Companies have the option to automatically
delete jobs when the employment availability period has passed. A job suggestion system based on users' frequent search results
may be included in the software. Additionally, candidates may sign up for email notifications about job vacancies through the
platform. The User functionality might be improved to enable users to upload numerous papers, save jobs, and then apply at a
later time. To make it more aesthetically pleasing and user-friendly, the User Interface may be enhanced. The UI might be
improved with additional AngularJS wizardry. There can be a feedback or review section on the application. Furthermore, unlike
the current job description page, the user may click on the job description to view it on another website.
.

1.5 Definitions and Acronyms


• HTML (Hyper Text Markup Language)
• NODES (Network Operation And Design Engineering System)
• REACT (Radio Emergency Associated Communications Teams)
• API (Application Programming Interface)
• NPM (Node Package Manager)
• HTTP (Hyper Text Transfer Protocol)
2 Project Technical Description
This curriculum's technical components were all created with the goal of assisting students in becoming acquainted with the most
recent cutting-edge technology. The JavaScript frameworks Node.js and react.js, as well as interacting with them, were exposed
to me greatly through this application. A client-side scripting language called JavaScript expands and improves the functionality
of client-side coding in conventional web applications. In contrast, the server-side programming language NodeJS. It is
JavaScript with the additional capability of being utilized outside of the browser as a server-side programming language. I used
NodeJS and its well-known module Express to offer server-side functionality for my project. Node.js [2] is built on Google's V8
engine. A promise-based object relational model, a NodeJS web server, and React.js [3] are used in this Representational State
Transfer API on the front end, together with ES6 JavaScript, HTML5, CSS3, and jQuery on the server. The use of AngularJS is
used for all validations. I worked with MySQL as my database language.

2.1 Application Architecture


The server receives a request from the user. This request is added to the backlog of others. Each request is assigned to a thread
in the thread pool by a single thread using the event loop mechanism. The input/output activities that a thread in the thread pool
is doing, for example, determines how this delegation mechanism is used. When a request is assigned to a thread in the thread
pool asynchronously, the thread processes other requests while it waits for this one to complete. Once this request is complete,
it either returns a success or an error. A promise or callback system is another name for this type of asynchronous processing.
NodeJS has the single threading feature as a major benefit.
Web applications developed with React Components are referred to as single page apps. We don't have to create any crucial
codes or logic, and I don't have to search for them either. React refers to the mechanism as Dependency Injection. React has
built-in validators, but I can also make our own [6]. When a user interacts with the interface, the Components form control
highlights the field and displays a warning if the input is incorrect. A three-tier architecture for software design is called MVC.
2
All of the data from the database is handled in the model. The view is the user interface, sometimes referred to as the front end.
All of the business logic, or the information that links the model and the view, is kept in the controller. The whole API of a node
is event-driven and asynchronous. The JS library is intended to not block. The server contacts an API and does not wait for a
response before moving on to the next API. A promise, a callback mechanism that notifies the server of the result or error, is sent
to it after the request has been fulfilled. NodeJS is speedy as a result. NodeJS employs a single threaded strategy similar to event
looping. It is quite adaptive. An open source JavaScript-based structural web framework called Angular JS adheres to the MVC
paradigm. Without having to constantly refresh it, I can use components to load an HTML page and dynamically update it.

2.2 Application Information flows

Our application used Job-Portal and JobesyApi. To retrieve values from databases, all API routes obtain and post the database.
Components that are utilized to display UI design Only administrators have the power to make categories. Additionally, the
recruiter, seeker, and job posting can only be authorized by the administrator. The essential aspect is that the feature job, which
selects which work will display on the top page, is only open to administrators. After the admin has created the category, only
the seeker and recruiter may edit their profiles. Anyone may see the website's jobs and recruiter information without registering,
but in order to apply for a job or post a job, a user has to register. Positions can be submitted by recruiters, and the admin must
approve them before users or job seekers can access them. If a job seeker decides to apply for a position, a toast notice stating
that they have done so or that they have already done so and cannot apply again will be displayed to them. Only the candidate
and the recruiter will have access to one another's communications. The seeker is just given the ability to evaluate the company.
On our home page, you could search for jobs and recruiters. We also had an advanced search tool. We could learn the task from
user preferences in this feature.

3
Search / Advanced Search Home Page Sign Up

Feature Job
View Job Job List Company List

Admin Login Recruiter

Seeker Dashboard
Dashboard

Profile Post Jobs


Category

Applied Jobs
Job List
Manage Recruiters
Messages
Application / Interview
Manage Seekers
Review
Profile
Manage Jobs
Dashboard
Messages

Logout

Fig 1: Application Work Flow

Fig 2: JobEsy Database Diagram

4
2.3 Interactions with other Applications
• When a candidate submits an application for a particular post, the recruiter is informed.
• Once the post has been listed, the administrator will be contacted.
• The candidate will be told if their application has been accepted or denied by the recruiter.
• An applicant gets an alert notification whenever a recruiter starts a conversation with them.
• A review from a candidate will notify the recruiter.
• The candidate is informed when the administrator activates or deactivates the post.

2.4 Capabilities
There are a variety of search options depending on the keywords. There are different search possibilities available depending on
where you are. Searching for employment according to category and interacting with employers and job seekers. a user interface
that is easy to use and customize and has an appealing visual appearance. The capacity to search for a job using a number of
approaches; Modern features that are also user-friendly.

2.5 Risk Assessment and Management


We provide this application to one Admin, who is in charge of everything in it and has access to it. Every job seeker, recruiter,
and approval of a position is kept track of by the admin, which is a hassle. Our long-term strategy will be modified. In addition,
I offered a single recruiter login for a single organization, whereas other companies require several logins for interviewers, HR,
and so forth. The design had to be altered to account for the fact that this application only required one login to access the
business, whereas typical organizations require numerous logins.

3 Project Requirements

3.1 Identification of Requirements


<JobEsy-CPSC8985-1 UserInterface-capability-“JE898501”>
Enhance UI - A better user interface is required.
<JobEsy-CPSC8985-2 Admin-capability-“JE898502”>
Auto Approval - For the addition of a new job, recruiter, or seeker, admin approval is required. We make advantage
of auto approval to save the administrative load.

< JobEsy-CPSC8985-3 Employer-capability-“ JE898503”>


Recruiter Subscription - Only recruiters will be able to submit unwanted jobs since I will use the subscription to
publicise.

< JobEsy-CPSC8985-4 Seeker-capability-“ JE898504”>


Seeker Resume Information - To make the candidate selection process easier for the recruiter, we'll use additional
information.

3.2 Operations, Administration, Maintenance and Provisioning (OAM&P)

• The capacity to monitor user progress and impose access restrictions.


5
• The website's job and seeker search functionality should be straightforward and secure.
• Pages load more quickly for complex web apps like this when large file sizes are reduced.
• You are not need to log in or register as a user in order to access the website. Guests can access the general pages.
• The data acquired via the search option have to be kept in the company's or job seeker's database.
• This software was developed to help job searchers locate vacant vacancies.
• This application is trustworthy and easy to use.
• This software verifies that the settings are accurate.

3.3 Security and Fraud Prevention


The construction of a security and fraud detection method may be accomplished through security and fraud prevention planning.
Real-time alerts and warnings that bring potential fraud cases to your attention are part of the planning process for preventing
fraud. Admin has been assigned tasks with the appropriate roles. The application has to be updated often. All user information is
saved throughout the necessary registration process.

3.4 Release and Transition Plan


The website development process has to be finished and tested before it can be pushed to the live server. The website shouldn't
be used for employment counselling before flaws are fixed. Upon booting, the data storage process will be launched, and the
maintenance process will be used to maintain the application's continuing operation.
4 Project Design Description
The website's management is under the purview of the administrator. He decides whether to approve or disapprove job postings
and whether to allow a business to register on his website. Only admin selects which feature category appears on the front page.

Companies - A company can register with the site and log in after receiving administrator approval. New employment positions
may also be advertised by them. They could check to see whether any people have applied for the positions they've posted. They
can change the information on their corporate profile. After the candidates have been shortlisted, whether the individual has been
chosen, rejected, or shortlisted again, the interview for that particular applicant may be scheduled. The message menu can be
used by the recruiter to get in touch with the applicant or seeker.

Job Seekers - Interested parties can register and logged-in candidates. They may search for opportunities that match their
requirements after logging in, apply for them, and submit their resumes. Additionally, whenever they wish, they may update their
data. They can read the job listings and company profiles, but job seekers are only able to rate the businesses. Additionally, job
seekers begin to contact recruiters. Despite only intending to apply once, the candidate submitted two applications. Then a
warning notice such as "already applied" appeared. In their dashboard, job seekers may also see the status of their applications.

6
Fig 3: Main Page

Fig 4: Featured Jobs

7
Fig 5 : Main Page

Fig 6: Search Page

8
Fig 7: Search Result

Fig 8: Company List

9
Fig 9: Login Page

Fig 10: Admin Dashboard

10
Fig 11: Category List

Fig 12: Recruiter List

Fig 23: Job Seekers List

11
Fig 34: Post Jobs List

Fig 45: Recruiter Dashboard

Fig 56: Post Jobs

12
Fig 67: Job List

Fig 78: All Applications

13
Fig 89: Recruiter Profile

Fig 20: Chat

Fig 29: Seeker Dashboard

14
Fig 102: Seeker Profile

Fig 113: Applied Jobs

Fig 124: Chat From Seeker

15
5 Internal/external Interface Impacts and Specification
The first and most crucial stage of the software development life cycle is requirement analysis (SDLC). The entire goal is to
identify the functional and nonfunctional requirements for the product and to assess the viability of those requirements. We
promise that by gathering requirements, project goals and objectives will be established much more quickly. A solid
understanding of the requirements is necessary for the effective development of software. No matter how hard I work, if I omit
this step, I will never get the desired outcome. This is crucial since the intended result cannot be achieved without knowing the
precise requirements. The defining of requirements is a crucial phase in the life cycle of software development. Although a
number of software and hardware specifications may be used to produce this application, the software and hardware requirements
that I used to develop this job search website are stated below:

Software Requirements:
IDE: Visual Studio Code System Requirements
Operating System: Windows 10 Intel Core i5 processor
Frameworks: ReactJS 2.50 GHz Processor Speed
Components: HTML5, CSS3 [1], 8 GB RAM
ReactJS [5], JavaScript, and jQuery
Database: MySQL

Fig 25: React JS Architecture [4]

16
6 Design Units Impacts
We view recruiters and job seekers as clients. The admin will function without relying on the client in the event of a problem
with the client, such as a server outage or anything similar. The applications are for Employer, Jobseeker, and Admin.

6.1 Functional Area A/Design Unit A

6.1.1 Functional Overview


The suggested system features the following capabilities:
• Job Seeker Sign In - In order to apply for a job, a Seeker must first log in.
• Job Seeker Sign Up - To access the complete website, a seeker must first register, which is approved by the
administrator.
• A job seeker can browse all open positions.
• Job seekers may use advanced search to narrow their results by category.
• A job applicant can change their personal information, including their education, experience, and abilities.
• A job applicant may submit more than one application.
• A job seeker may browse all open positions.
• If a job applicant forgets their password, they can retrieve it.
• Job seekers can evaluate the businesses.
• After shortlisting, the job seeker can speak with the recruiter.
• Businesses can sign up for the portal.
• Companies may advertise positions if the administrator accepts their registration.
• Applications are visible to employers.
• All authorized positions are visible to employers.
• The application profile is accessible to employers.
• Admin has access to every job.
• The company's positions are approved by the administrator.
• Admins can label jobs as features.

6.1.2 Impacts
Using this design unit and workflow process, the computer's operating functions may modify the system to meet operational and
customer demands. The work process includes authentication, data updates, user data updates, backup and recovery procedures,
and administrative operations.

6.1.3 Requirements
It is not necessary to log in or register to use this web application. The administrator should monitor the hiring process for both
the company and the candidate. The internal and external interfaces need to be properly configured and reliable. A procedure for
data backup should be used to secure client data.
7 Open Issues
• Put your resume and a photo online.

19
• Messages of Warning.

8 Acknowledgements
I would want to thank my professor, Dr. Dae Wook Kim, for giving me the outstanding opportunities to create this excellent plan on the
topic. This project helped us prepare a significant quantity of research. This project will give us a lot to learn. It helped us increase our
research and report-writing ability. I also want to thank my parents and classmates for their assistance in getting the assignment finished
successfully.

9 References
[1] Cascading Style Sheets. (2016). Retrieved from W3C: https://www.npmjs.com/package/w3c-css
[2] NodeJS - Server Side JS. (2017, 10 10). Retrieved from https://www.slideshare.net/ganeshkondal/nodejs-server-side-js
[3] React - Ng Book - Murray N. (n.d.). Retrieved from
https://www.academia.edu/49151733/Murray_N_ng_book_The_Complete_Book_on_Angular
[4] React JS Architecture. (n.d.). Retrieved 11 2022, from https://developer.ibm.com/tutorials/wa-react-intro/
[5] React tutorials. (n.d.). Retrieved 2022, from W3Schools: https://www.w3schools.com/react/default.aspReactJs
[6] React-Componenet. (n.d.). Retrieved 12 2022, from https://reactjs.org/

10 Appendices

Fig 136: Category Add / Update Backend Code

20
Fig 147: Review Code

Fig 158: Job List Code

21
Fig 169: Db Configuration

Fig 30: Server Port Configuration

22
Fig 31: API Controller Code

Fig 32: Profile Recruiter Code

23
Fig 173: Recruiter Profile View Code

Fig 184: Insert Job Migration Code

24

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy