Introduction
I'm Chaithanya AS, an MCA student at Amrita Vishwa Vidyapeetham, Kerala.
As a student, I often looked at different career guidance platforms to understand what skills I needed for different jobs. Most of these platforms required users to upload their resumes to cloud servers. Since resumes contain personal information such as contact details, education history, and project experience, I started wondering if it was possible to build a career mentoring system that could work completely offline.
This idea led to CareerMind.
Since I am interested in both AI and career development, I thought this would be a meaningful project to work on.
CareerMind is an AI-powered career mentoring application that runs entirely on a local machine. It can analyze resumes, identify skill gaps, generate learning roadmaps, score resumes, and answer career-related questions without sending any data to external servers.
The main goal of this project was to explore local AI models while building something that could be useful for students and job seekers.
Technology Stack
- Python
- Streamlit
- Ollama
- LLaMA 3.2 3B
- PyMuPDF
- python-docx
- FPDF2
- Requests (Ollama API communication)
How CareerMind Works
- Upload a resume (PDF/DOCX)
- Extract text from the document
- Analyze the resume using LLaMA 3.2
- Extract skills and career information
- Perform skill gap analysis
- Generate a learning roadmap
- Export a PDF report
Features
- Resume Analysis
- Resume Scoring
- Skill Gap Analysis
- Learning Roadmap Generation
- PDF Report Generation
- Career Chatbot
Resume Analysis
Skill Gap Analysis
Learning Roadmap
Career Chatbot
One Challenge I Faced
One challenge I faced was handling the responses generated by the language model.
I wanted the model to return structured JSON data, but sometimes it included extra text before or after the JSON output. This made it difficult to process the response automatically.
To solve this, I added JSON extraction and validation logic before processing the output:
clean = re.search(r'\{.*\}', response, re.DOTALL)
if clean:
data = json.loads(clean.group())
After implementing this, the application became much more stable and reliable.
What I Learned
This project helped me learn:
- Local LLM deployment using Ollama
- Prompt engineering
- Resume parsing
- Streamlit development
- JSON handling
- AI system integration
Most importantly, I learned that building an AI application involves much more than just connecting a language model. Error handling, data processing, and application design are equally important.
Future Improvements
- More career roles
- Better skill matching using embeddings
- Mock interview module
- Job description matching
- Progress tracking dashboard
Final Thoughts
CareerMind started as a learning project and became a great opportunity for me to explore AI application development. It helped me understand how local language models can be used to build useful and privacy-focused applications.
This is my first AI project and my first DEV Community post. I would appreciate any feedback or suggestions for improvement.





Top comments (0)