Inspiration

We were inspired by the uncertainty that job seekers face when preparing for interviews. Many people lack access to quality mock interview practice, realistic feedback, and a safe space to refine their interview skills. We envisioned an AI-powered interviewer that could provide personalized, on-demand interview practice with real-time feedback available 24/7.

What it does

Olin is an AI-powered interview practice platform that helps job seekers prepare for their dream roles. Users can: Create Custom Interviews: Set up mock interviews tailored to specific job titles, companies, and job descriptions Practice with AI: Conduct realistic text-based interviews with an AI interviewer powered by Google Gemini Get Real-Time Feedback: Receive automated grading and detailed feedback on performance across multiple criteria (clarity, relevance, depth, examples, and confidence) Track Progress: Access interview history, review past transcripts, and monitor improvement over time

How we built it

We built Olin using a modern, scalable tech stack:

Frontend: Next.js 14+ with TypeScript, React, and shadcn/ui components Backend: Next.js API routes handling authentication, interview management, and AI interactions AI Engine: Google Gemini API for intelligent question generation and performance grading Database: MongoDB with connection pooling for storing user data, interviews, and conversation history Authentication: JWT-based session management with email OTP for secure, password less login Styling: Tailwind CSS Deployment: Vercel

Challenges we ran into

We had to engineer around the idea of having a "natural" feel to it. We created the blob Olin and we gave it some animation and an AI powered voice to make it feel more normal. We also faced some compatibility issues. Olin works best when you use Chrome and not so well with other browsers, that's why we added the ability to chat with Olin, to help improve accessibility.

Accomplishments that we're proud of

We were able to deploy the website so that people can use Olin (Olin.help). We were also able to make it super interactive, speaking to Olin feel very natural and the questions that it generates are very well formatted. It accomplishes the idea to help you prepare for an interview.

What we learned

We learned to incorporate a LLM into a functional app. We also engineered around making sure tasks were completed in the background to make sure responses were fast and clear.

What's next for Olin

There are multiple ideas in mind. We could allow users to choose between different voices, interview styles, etc. We can also add more functionality to the interview session like adding a timer and maybe a code sandbox for developer style interviews.

Built With

Share this project:

Updates