Inspiration
Earlier this week, two of our team members had software engineer co-op interviews that didn't go as expected. They realized they could've been way more prepared for different types of questions if there was an easier way to practice. Something that didn't involve bugging friends for mock interviews or paying for expensive coaching sessions. There are a few mock interview free plans but with strict limits and other plans could be as much as $80 a month.
We wanted to build something that gives you personalized interview prep without taking up anyone else's time or breaking the bank. Just you, some AI, and the chance to practice until you're confident.
Links:
NOTE: If the backend API documentation website or the live site is slow, the backend is most likely just ramping back up from a sleeping state (hopefully)
What it does
- Step 1: Upload your resume and job description and our Google Gemini AI analyzes both to understand your background and the role.
- Step 2: Get personalized interview questions tailored specifically to you and the position you're applying for.
- Step 3: Practice with behavioural questions and coding challenges. Write and test code directly in the platform, it can run your Python or JavaScript and validates against test cases.
- Step 4: Ask for AI-powered hints when stuck, without getting the answer spoiled.
- Step 5: Receive instant feedback after each question with performance insights.
- Step 6: Get a comprehensive final report with your hire-ability score and actionable improvement suggestions.
It's like having a personal interview coach available 24/7, without the scheduling or cost.
How we built it
Core Stack
- Next.js, React.js, TypeScript - Everything on the frontend
- Go - Fast, concurrent HTTP server
- MongoDB - Stores interview sessions and question banks
- Google Gemini AI - Powers intelligent question customization, hints, and feedback
- Go-Piston - Remote code execution for Python/JavaScript
Key Features
- Smart Question Generation - Gemini customizes questions based on job title and company
- Real-time Code Execution - Execute user code against test cases instantly
- AI-Powered Hints - Context-aware hints that adapt to user's progress
- Technical Feedback - Comprehensive evaluation with hireability scores
Backend Architecture
User Request → Go Handler → Service Layer → Repository → MongoDB
↓
Gemini AI + Go-Piston (Code Execution)
Challenges we ran into
- Running out of various service's tokens while testing project (ChatGPT, ElevenLabs, etc)
- Unfamiliarity with design software (Adobe Illustrator, Figma)
- Integrating a code editor in the frontend
- Implementing TTS and STT due to unfamiliarity which required a lot of trial and error
- Figuring out how to do code execution with certain languages (ended up choosing Python & JavaScript) and how to evaluate expected output
- Wanting to learn/use GraphQL but ending up making REST
- Google Gemini sometimes returns JSON wrapped in markdown code blocks (``
json), so had to create acleanJsonResponse()` function to call after every service call
Accomplishments that we're proud of
- The overall design with the unfamiliarity and an unexpected 2 hour bus ride
- Backend code evaluation and execution to be used in the technical interview part of the project
- Productive use of ElevenLabs API and Google Gemini API
- Using a backend language that we have little to no experience with
- First time successfully deploying a backend on something (Render) other than AWS or BaaS's like Supabase
- Successfully slightly altering stored behavioural questions based on info like the user's resume, job title, and seniority
What we learned
- Go Backend Development: Built our first production Go API from scratch, learning concurrency patterns, HTTP handlers, and MongoDB integration
- AI Integration: Successfully integrated Google Gemini for intelligent question customization, hint generation, and technical feedback
- Code Execution: Implemented remote code execution using Go-Piston, handling multiple languages and test case validation
- Database Design: Designed MongoDB schemas for interview sessions, question banks, and technical problems with proper relationships
- Deployment: Successfully deployed a Go backend to production using Render, learning about environment variables and service configuration -App Design: Custom raccoon mascot with hand-drawn aesthetic for SFU spirit, and lighthearted feel.
What's next for IntervU
- Data related to users, along with authentication
- Different types of code executions, like React or even API development
- Extend interview practice capability, such as system design
- Paywall for better models, more customizability, and more options
Built With
- elevenlabs-api
- go-piston
- golang
- google-gemini-api
- mongodb
- next.js
- openai
- react
- render
- typescript
- vercel


Log in or sign up for Devpost to join the conversation.