Skip to content

This data management project is a job ranker system that uses LSTM sentiment analysis for data mining, Restfull APIs for backend, Flutter as a frontend for managed and clear data visualization and MySQL for real time and complex large data management.

Notifications You must be signed in to change notification settings

ManujaDewmina/Job-Ranker-Frontend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Job Ranker - LSTM based sentiment analysis system

Job Ranker Frontend : https://github.com/ManujaDewmina/Job-Ranker-Frontend

Job Ranker Backend : https://github.com/ManujaDewmina/Job-Ranker-Backend

Overview

This project is a job ranker system that uses sentiment analysis to score job reviews, rank jobs under different categories and classify ranked jobs according to user preferences. The system is designed to help job seekers find the best jobs that match their interests and requirements, and to help employers get feedback on their jobs and identify areas for improvement.

The system uses an LSTM model to extract the sentiments of job reviews and generate a rating for the job. The system also takes into account user preferences, such as work-life balance, culture and diversity to rank and classify jobs. Job Ranker provides a user-friendly mobile interface for users to easily find the best jobs that match their needs and interests.

The evaluation of the system is conducted on the Glassdoor job reviews data set, resulting in an accuracy of 81% in sentiment classification. This indicates the system's effectiveness in extracting sentiments from job reviews and generating accurate job ratings.

Furthermore, the use of MySQL for complex database management of review data enables the storage and management of large amounts of data, ensuring reliable and accurate results for the system. The application backend follows a RESTful API design pattern, providing a set of operations to interact with the underlying MySQL database and LSTM model.

Video Demonstration

Video.Demonstration.mp4

Objectives

  • Rate job reviews based on sentiment analysis and rank jobs under different categories. This will help job seekers to quickly identify the best jobs in a particular category.
  • Classify ranked jobs according to user preferences. This will help job seekers to find jobs that match their interests and requirements.
  • Provide a new review adding system that automatically analyzes and rates reviews in real time. This will help to ensure that the system is always up-to-date with the latest feedback from users.
  • Develop a user-friendly mobile interfaces and easy to use functionalities. This will make it easy for job seekers to find and manage their favourites.

Used Technologies

  • Languages
    • Dart - For frontend mobile application development
    • Python - For model and backend services development
    • SQL - For managing data held in MySQL database
  • Tools
    • Android Studio, Visual Studio Code, Kaggle, Google Colab
  • Libraries
    • Tensorflow, Scikit Learn, Pandas, Numpy, Matplotlib, Seaborn, nltk, Keras
  • Database / Storage
    • MySQL - Used as the relational database manageďż˝ment system because of its simplicity, performance,and scalability. MySQL helps to implement complex business logic with large dataset for the system.
  • Authentication
    • Firebase Authentication
  • Deployment
    • Docker
    • Google Cloud Platform
    • Virtual Machine
  • Dataset : https://www.kaggle.com/datasets/davidgauthier/glassdoor-job-reviews

Development Architecture Diagram

LSTM Model Architecture Diagram

LSTM Model Performance

Deployment Architecture Diagram

Features

1. Login

This feature allows users to create an account and log in to the application.User aslo have forgot password option. Once logged in, users will have access to all of the features of the application. And user can logout anytime.

2. Add New Reviews

This feature allows users to add new reviews of jobs that they have worked at. Users can rate the job under categories work life balance, culture values, diversity inclusion, career opportunities, company benefits, senior management, recommend, and CEO approval.And also users can write a review about the job. Once they submit the new reviews they will evaluate automatically using LSTM sentiment analysing model in real time and give a score for that review. After that firm total ratings will be updated by the system using the average of all reviews for that firm.\ This feature is essential for a job ranking application. It allows users to contribute to the database of job reviews, which is used to rank jobs and provide users with recommendations.

3. Rated Job Details

This feature allows users to view a list of all of the jobs that have been rated by other users. Users can filter the list by firm name. Users can view detailed reviews about each firm, such as overall score calculated using given reviews by LSTM model, work-life balance, culture, diversity, career opportunities, compensation and benefits, senior management, recommendation and CEO approval. Also users can get an idea about submitted users job titles and review submitted years for better understanding.

4. Job Classifier

This feature helps users to find best jobs according to their preferences. Once user select their preferred categories user will get a company list best suits for their preferences and ranked them using total score from all selected categories.

5. User profile

Using user profile section user can see firms he marked as favourites and see the present ratings of that firms.

Conclusion

In conclusion, the Job Ranker application is a valuable tool for both job seekers and employers. It uses sentiment analysis and user preferences to rank and classify jobs, helping job seekers find the best jobs that match their needs and interests. Job Ranker also provides valuable feedback to employers, helping them identify areas for improvement.

Using LSTM for sentimental analysis improve the review analysis process by giving better ratings for reviews after getting deeper insights from reviews. Database management using MySQL database give real-time data management with LSTM model and also MySQL helps to implement complex business logic for the system. Furthermore, front-end mobile application gives better user experience by providing users with a clear and intuitive interface to interact and better visualisation over analysed data.

Overall, Job Ranker can show as a useful tool that empowers individuals to navigate the job market effectively and assists businesses in making informed hiring decisions. Its effectiveness come from its ability to combine sentiment analysis, user preferences, and a robust data management system. With its user-friendly interface and comprehensive data visualisation capabilities, Job Ranker proves to be an invaluable resource for both job seekers and employers.

About

This data management project is a job ranker system that uses LSTM sentiment analysis for data mining, Restfull APIs for backend, Flutter as a frontend for managed and clear data visualization and MySQL for real time and complex large data management.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages