Inspiration
Despite the abundance of job boards like LinkedIn, Indeed, and SimplifyJobs, many job seekers—especially students and early-career professionals—still find themselves overwhelmed, overlooked, or underprepared. These platforms are reactive, not proactive: they bombard users with irrelevant roles, offer generic resume feedback, and rarely help candidates align their unique profiles with the right opportunities.
We saw a recurring pattern:
Students applying blindly to hundreds of roles, unsure if their resumes are even being seen.
Smart, skilled candidates losing out because they didn’t tailor their applications—or didn’t know how.
Job boards offering quantity over quality, lacking meaningful insights or guidance.
Ad-Boosted Noise on Existing Platforms
As job seekers ourselves, we knew there had to be a better way. We imagined an AI-powered career assistant—one that doesn't just list jobs but actively understands you, guides you, and works with you to land the right role. And that’s how JobAssist was born.
What it does
JobAssist uses the power of MongoDB's vector search and Google Gemini's AI capabilities to help users
Upload their resume and receive AI-powered feedback
Discover upskilling recommendations based on in-demand skills
Get job role suggestions aligned with their experience and interests
Leverage LLM embeddings to match resumes with job listings using vector search. More of sematic matching rather than just keyword matching.
Save and track applied jobs within an intuitive UI.
Generate cover letters and enhance resumes based on the job you are interested in.
How we built it
*For the demo site, we have scraped 400+ roles from job boards relevant to the field of data. (Roles like Data analyst, data scientist, data engineer, ML engineer, etc.) *
Frontend
Built with React + Vite,Tailwind CSS designed for responsiveness and clarity.
Deployed on Firebase Hosting
Backend
Data storage: MongoDB Atlas and GCS
FastAPI REST service containerized via Docker
Deployed to Google Cloud Run using CI/CD and secrets from Secret Manager
Startup handling via custom shell script with GCP credential bootstrapping
AI & Embeddings
Resume feedback and suggestions generated using Gemini 1.5 Pro
Embedding generation using Vertex AI Gemini Embedding model
Resume-to-job matching via MongoDB Atlas Vector Search
Job posting search using keywords—MongoDB Keyword Search.
Other Tools
Secrets: Google Secret Manager
IAM
Challenges we ran into:
LinkedIn actively blocks scraping, leading to missing information about the job postings.
Protobuf & gRPC version conflicts during Gemini integration
Google cloud service outage effecting deployments and APIs
Deciding on the embedding model and creating the needed token lengths.
Managing secure environment variables across services.
Designing an intuitive, non-overwhelming UI
Accomplishments that we're proud of
Built using RAG-style matching: resume & job embeddings + vector similarity search.
End-to-end deployment across GCP, Firebase, and MongoDB
Feedback system using generative AI
Secure, scalable, and modular architecture for production-readiness
Time & Team Coordination
What we learned
MongoDB's vector search (Embedding-based search) is a game-changer
How to orchestrate deployments on GCP.
Best practices in handling secrets and credentials at scale
Deepened understanding of embedding models and semantic search
Learned to balance UX, model latency, and cloud resource constraints
What's next for JobAssist?
Updated the database in real time with more information about the job roles.
Add Google OAuth for personalization
Resume version control and live editing with AI
LLM-powered career Q&A chatbot and interview prep materials.
Admin dashboard to track user insights and search behavior
Custom alerts and notifications
End-to-end customer personalization.
Build insights dashboard: application trends, job gaps, skill alerts.
Log in or sign up for Devpost to join the conversation.