Inspiration
Job scams are becoming increasingly common on online job boards, and many look completely legitimate at first glance. As students entering the job market, we wanted to build a tool that helps users avoid fraudulent postings and apply with confidence. We were also inspired by the need for AI systems that are not only accurate but explainable.
What it does
VeriApply is an AI-powered web app that analyzes job postings and predicts whether they are legitimate or potentially fraudulent. It also explains why a job was flagged using interpretable machine learning, highlighting key risk signals such as vague descriptions, missing company information, or suspicious job patterns.
How we built it
We built VeriApply as an end-to-end machine learning system:
Cleaned and preprocessed real job posting data Extracted features using TF-IDF for text and one-hot encoding for categorical variables Handled class imbalance using SMOTE Trained an XGBoost classifier for fraud detection Built a Flask backend API to serve predictions Designed a simple frontend for user input and results display Used SHAP to generate model explanations and convert them into human-readable insights
Challenges we ran into
TF-IDF created thousands of features, making explanations noisy and hard to interpret Combining preprocessing, encoding, SMOTE, and modeling into a single pipeline without data leakage was tricky SHAP outputs were not naturally user-friendly, so we had to build a custom interpretation layer Ensuring consistency between training and real-time inference required careful pipeline design Accomplishments that we're proud of Built a full end-to-end ML system from data cleaning to deployment Achieved strong model performance on an imbalanced dataset Successfully added explainability to model predictions instead of just raw outputs Created a working web app that users can interact with in real time
What we learned
We learned how to build production-style machine learning pipelines, including feature engineering, model training, and deployment. Most importantly, we learned that interpretability is just as important as accuracy, especially for high-stakes problems like fraud detection.
What's next for VeriApply
Improve explanation quality using more advanced NLP-based reasoning models Expand dataset to improve generalization across several industries and job types Add browser extension for real-time job listing verification Deploy the system publicly with scalable backend infrastructure Improve UI/UX and add user feedback loop for continuous learning
Built With
- css
- flask
- html
- imbalanced-learn
- javascript
- python
- sci-kit-learn
- tailwind
- xgboost
Log in or sign up for Devpost to join the conversation.