Inspiration
We observe that many university graduates have very little work experience, which is why they don't know how to apply for a job. Our mission is to help them prepare for that stage.
We observe that many of the students who finish their university careers have very little work experience, which is why they do not know how to apply for a job. Our mission is to help them prepare for that instance.
What it does
The jobprep.me platform aims to be a guide for those users who are full of uncertainty looking for their first job or perhaps something different from what they have been doing during their working career. To achieve this goal, it uses an analysis of the user's resume using artificial intelligence tools, which identify strengths, weaknesses and opportunities for improvement in their professional profile.
In addition to the resume analysis, the application offers a job interview simulation with an AI-based agent, which acts as if it were a real interviewer. During this instance, the user can practice their answers, improve their verbal expression and prepare to face real interviews with greater confidence.
Once the simulation is finished, the platform provides personalized feedback that includes concrete recommendations on the content and format of the resume, as well as suggestions for improving performance in interviews, considering aspects such as clarity in the answers, confidence in speaking and coherence in the professional narrative.
Our goal is to reduce the anxiety of the job search process, providing a practical and accessible tool that helps people in one of the most important moments of their working life.
How we built it
The software was built using TypeScript and the TRPC framework, in a monorepo stored in GitHub. First, we create a small onboarding to upload the user's resume and store it in Cloudflare's R2. With the resume uploaded, we create a resume parser using the @ai-sdk library and using Gemini 2.0 Flash for all the LLM workloads.
We then move on to create different navigation pages while preparing the interview module. To do this, we use ElevenLabs, which allows oral communication between a bot and a person. The transcript of the complete interview is obtained and analyzed using Gemini itself.
All the information is stored in a SQL database so that the user is able to review the corresponding recommendations delivered by the AI, all through the user interface.
Challenges we ran into
During the development of the platform, we faced several technical and conceptual challenges. One of the main ones was the need to carefully design the prompts sent to the language model (LLM) to get accurate, coherent answers aligned with the user's context.
Another major challenge was the integration of conversational artificial intelligence to simulate job interviews. Being an emerging technology, we encountered certain limitations in the available documentation and examples, which required a constant process of exploration, testing and adjustments.
Also, getting the conversational agent to behave realistically like a human recruiter was particularly complex. It was necessary to fine-tune its behavior so that it could ask relevant questions, maintain a fluid conversation, and deliver useful and empathetic feedback.
Analyzing PDF resumes also presented a technical challenge. In several cases, it was challenging to get structured and accurate results from the models, which required detailed validation and tuning work to deliver truly useful feedback to the user.
Despite all these difficulties, we managed to develop a functional product that fulfills its purpose: to help users in their job search process through the use of artificial intelligence in an accessible, realistic and effective way.
Accomplishments that we're proud of
Throughout the development of the platform, we achieved important advances that we are proud of. First, we were able to implement a functional solution that combines automated resume analysis with an artificial intelligence-assisted job interview simulation, bringing real value to those who face their job search process with uncertainty.
We were also able to train and adjust a conversational agent that acts in a coherent and natural way as an interviewer, delivering relevant questions and empathic feedback, which represented a great challenge both technically and in terms of conversational design.
Another important milestone was the effective processing of PDF files with varied formats, managing to extract key information in a structured way to generate clear and personalized analysis.
In addition, we conducted a small amount of market research and found no software solutions that offered a similar experience to ours. This allows us to state with satisfaction that what we have developed represents an innovative proposal, unique in its kind, within the current context.
Finally, we are proud to have built a comprehensive user-centric, accessible, functional and high-impact experience, despite the many technical challenges encountered along the way.
What's next for jobprep.me
The next steps are:
- Increase interview time. It is currently limited to a few minutes due to technical and financial constraints.
- Provide more specific comments for each question asked in the interview.
- Generate an analysis of how user resumes have improved as they are uploaded to the platform.
- Generate an analysis of how the user has improved their answers in the interview, with the goal of analyzing their evolution.
- Improve the analysis based on what we consider appropriate.
- Allow the user to edit the characteristics of the interviewer so that he can adjust it to the taste of his practice; to be more or less pleasant, technical, or even if they can be more than one interviewer at the same time.
Built With
- ai-sdk
- bolt
- clerk
- cloudflare
- elevenlabs
- gemini
- neon
- netlify
- nextjs
- postgresql
- prisma
- t3-stack
- trpc
- typescript
Log in or sign up for Devpost to join the conversation.