Interview Maestro is an AI-assisted interview practice web app designed to help users rehearse answers and improve delivery across three tracks: Academic, Social, and Career. After each practice interaction, the app returns actionable feedback with an overall score and component-level signals such as tone, pacing, and clarity. It also includes a real-time live interview experience with a video-interview-style interface.

Interview prep is often stressful, and the stress itself degrades performance: people speak too fast, lose structure, and sound uncertain even when the content is strong. The goal of this project was to make practice feel low-friction and repeatable: practice → receive feedback → iterate. The Monet-inspired visual theme supports that goal by aiming for a calmer, less intimidating practice environment.

We learned:

  • How to turn subjective communication quality into clearer, actionable dimensions (e.g., tone, pacing, clarity), rather than generic feedback.
  • How to structure model responses so that the frontend can reliably parse and render them (productizing generative output).
  • Practical frontend-backend integration patterns for an AI workflow (React UI ↔ Flask API ↔ Gemini).
  • Browser constraints for a live, interview-like experience (permissions, user experience, and integration via a dedicated live module).

Challenge:

  • Consistency of AI output: Generative models can vary across runs, so the prompts and response format must be constrained enough for stable UI rendering.
  • Latency and UX: The end-to-end loop (submit → model call → response) requires careful UI state handling so users understand what the app is doing.
  • Live interview constraints: Camera/mic permissions and browser differences can introduce friction, so the live experience needs robust handling and clear user guidance.

The interactive demo is deployed based on a forked code repo that is forked from the main repo for testing. Interactive demo.

Share this project:

Updates