NovaCopilot: Your AI-Powered Path to FAANG
What Inspired Us
Let's face it: the current tech interview prep cycle is broken. Candidates spend hundreds of hours blindly grinding LeetCode, guessing what their weaknesses are, and hoping for the best when they finally get that Microsoft or FAANG interview. We realized that what candidates actually need isn't just another question bank—it's a strategic co-pilot.
We wanted to build an AI that acts like a senior engineer, a technical recruiter, and a career mentor all rolled into one. NovaCopilot was born out of the desire to bridge the gap between knowing how to code and knowing how to interview, providing real-time analytics and an adaptive, personalized roadmap to get that offer.
How We Built It
We focused on creating a sleek, high-performance web app with a "dark mode" aesthetic that developers love.
- Frontend: We built the interactive UI, including the coding challenge panels and the analytical dashboards, using React.js. The spider graphs and progress rings were rendered dynamically based on user session data.
- Backend & Logic: The core server handles state management between the user, the coding environment, and the AI.
- The AI Engine: We integrated state-of-the-art LLMs to act as the interviewer. The AI evaluates both conceptual answers (like explaining OOP) and technical code execution (like building a lock-free stack using CAS).
The Readiness Score Algorithm
To make our 80% or 95% readiness scores meaningful, we designed a weighted probabilistic model. The overall Readiness Score ($R$) is calculated by evaluating the user's performance across $n$ distinct skills (like DSA, System Design, Cloud):
$$R = \left( \frac{\sum_{i=1}^{n} (S_i \cdot w_i)}{\sum_{i=1}^{n} w_i} \right) \times \lambda_{consistency}$$
Where:
- S_i is the individual skill score based on AI evaluation.
- w_i is the weight of that skill relative to the target company's requirements (e.g., Microsoft weighs Cloud/Azure highly).
- \lambda_{consistency} is a decay factor that penalizes long gaps between practice sessions.
Challenges We Faced
- Adaptive Difficulty Scaling: Getting the AI to dynamically adjust the difficulty in real-time without hallucinatory leaps was tough. We had to heavily prompt-engineer the engine so that an answer about "Classes and Objects" logically progressed to complex concurrency questions based on the exact user input.
- Context Window Management: Maintaining the context of a 30-day generated roadmap, the user's resume, and their real-time coding performance required strict state management so the AI wouldn't "forget" the user's profile during long interview sessions.
- UI/UX Synchronization: Syncing the conceptual chat interface with the live coding challenge panel on the right side of the screen required precision to ensure the user felt like they were in a single, cohesive interview environment.
What We Learned
We learned that building an AI wrapper is easy, but building an AI orchestrated workflow is incredibly hard. We leveled up our skills in prompt engineering, stateful AI interactions, and designing data-heavy analytical dashboards that remain readable at a glance. We also gained a massive appreciation for how much data goes into curating a personalized 30-day learning roadmap!
What's Next for NovaCopilot?
This hackathon is just the beginning. We plan to introduce multi-file system design challenges, live audio-based AI mock interviews, and direct integration with GitHub to automatically analyze a candidate's portfolio.
Built With
- chart.js
- framer
- gemini-api
- github
- groq
- javascript
- next.js-(react)
- tailwind-css
- typescript
- vercel
Log in or sign up for Devpost to join the conversation.