Many Computer Science students struggle to choose the right specialization after their degree. This web app uses machine learning to guide students toward the field that best matches their skills. It provides a percentage fit for each path (e.g., AI, Data Science, Cybersecurity, Software Engineering) and suggests videos to improve their skills. 🔗 Live Demo: Career Path Recommender
Many Computer Science students face confusion after completing their degree because the field is very broad (AI, Data Science, Cybersecurity, Software Engineering, etc.).
Without clear guidance, they often choose paths that do not match their skills or interests, which can lead to wasted time, effort, and missed opportunities.
This project aims to solve that problem by providing data-driven career recommendations tailored to each student’s profile.
- Built with HTML, CSS, and JavaScript
- Responsive design for both desktop and mobile users
- Clean and simple user interface to ensure easy navigation
- Input Form: Students enter their GPA and skills through a user-friendly form.
- Data Submission: The form sends the user data to the backend via HTTP requests.
- Results Display: The app dynamically displays the predicted career path, percentage match, and recommended videos.
- Removing duplicates and null values
- Encoding categorical data
- ** Attendance prediction**: using student information (gpa and skills (language computer skill)) and regression model we predict the attendance probability.
- field recommender:Based on student data and skills, our system predicts the most suitable career field by finding the closest match between the user’s profile and existing data.
- Data Cleaning: Removed duplicate rows and null values.
- Feature Engineering: encoded categorical data, and performed exploratory data analysis.
-
Job Probability Model:
- Implemented using a RandomForestRegressor inside a Scikit-Learn Pipeline with data scaling:
model1 = Pipeline([ ("scaler", StandardScaler()), ("regressor", RandomForestRegressor( n_estimators=200, random_state=42 )) ])
- Predicted the probability of getting a job with an accuracy of 0.55.
- Implemented using a RandomForestRegressor inside a Scikit-Learn Pipeline with data scaling:
-
Career Field Recommender:
- Implemented with a Logistic Regression classifier using TF-IDF Vectorization:
pipe = Pipeline([ ("tfidf", TfidfVectorizer(stop_words="english")), ("clf", LogisticRegression(max_iter=1000)) ])
- Predicted the most suitable career field with an F1-score of 0.90.
- Implemented with a Logistic Regression classifier using TF-IDF Vectorization:
- Job Probability Model (Random Forest): Accuracy = 0.55
- Career Field Recommender (Logistic Regression): F1-score = 0.90
-
Flask Backend:
- Built with Flask to serve the machine learning models.
- Handles user input (student info + skills) via
POSTrequests. - Predicts:
- Job probability using
my_model.pkl. - Career field recommendation using
career.pkl.
- Job probability using
- Fetches YouTube video suggestions for skill improvement using
youtubesearchpython.
@app.route('/user_info', methods=['POST']) def answer(): student = request.json['user'] skills = request.json['skills'] # Job probability prediction result = model.predict([[ ... student features ... ]]) # Career field recommendation path = pip.predict([skills]) # Fetch related courses from YouTube search_query = f"{path[0]} course" video = VideosSearch(search_query, limit=5) course = video.result() return jsonify({ "prob": float(result[0]), "path": path[0], "course": course })
- Expand dataset: Include more diverse student backgrounds (different universities, countries, and skills).
- Improve accuracy: Experiment with advanced ML models (e.g., XGBoost, Neural Networks) to boost prediction performance.
- Dynamic learning: Continuously update recommendations as students improve their skills over time.
- Personalized content: Suggest not only YouTube videos but also articles, courses (Coursera, Udemy), and project ideas.
- Interactive dashboard: Build a modern frontend with frameworks like React or Vue for better user experience.
- Deployment scalability: Move from Render to cloud platforms (AWS, GCP, Azure) for higher traffic and real-time inference.
- Gamification: Add badges, progress tracking, and learning goals to keep students motivated.
This project provides a practical solution for Computer Science students struggling to choose their career path after graduation.
By combining machine learning with a simple web interface, it predicts the most suitable field for each student and suggests learning resources to improve their skills.
Although still in its early stage, the system demonstrates how data-driven guidance can support students in making informed career decisions and lays the foundation for future improvements.