• The Product Prism
  • Posts
  • šŸ¤–šŸš€ Building Interview Buddy: AI-powered interview coach

šŸ¤–šŸš€ Building Interview Buddy: AI-powered interview coach

A Behind-the-Scenes Look at How I Built It—And How You Can Too!

Insights

Today, we are taking a break from regular programming and moving into the AI space. I have recently started looking out for the next opportunity in my career, so while practising for an interview, I decided to build an AI agent to help me with the mock interviews. My last interview was wild, all the questions AI buddy practised with me, I got with the hiring manager (very cryptic).

Anyway, I thought to share Interview buddy with y’all, my thought process, tools, current status and next steps. Plus, how you can build yours (Shh! AI code generator is your friend)

Let’s dive in! šŸš€ 

šŸ“¢ Introduction: The Rise of AI Agents

What Is an AI Agent?

An AI agent is a program that perceives its environment, makes decisions, and takes actions to achieve specific goals. Unlike simple chatbots, AI agents can:

  • Learn from interactions (e.g., adapt to your interview style)

  • Autonomously complete tasks (e.g., generate follow-up questions)

  • Integrate multiple tools (APIs, databases, ML models)

Why AI Agents Matter

From customer service bots to AI coding assistants, agents are transforming workflows by:

  • 24/7 Availability: No coffee breaks needed! ā˜•āž”ļøšŸ¤–

  • Personalisation: Tailor responses to individual users (e.g., adjusting interview difficulty).

  • Scalability: Serve thousands of users simultaneously.

Interview Buddy is my 1st take on an AI agent for career growth—combining LLMs, smart scoring, and real-time feedback to help job seekers practice effectively. It is supposed to take the place of an actual human that anyone could do mock interviews with.

Watch this space, more AI agents to come!

 šŸ”§ How I Built Interview Buddy: A Step-by-Step Journey

As a product manager (*winks*), I have to start with the problem I am trying to solve. Why should we build a mock-interview prep buddy? What are the use cases? What is the potential? And why not just use Chatgpt directly?

Problem Statements

Problem 1: Generic Interview Prep

Most practice questions are too broad, failing to align with a candidate’s unique resume or target job description. This leads to inefficient preparation and missed opportunities to showcase relevant skills.

Problem 2: Lack of Industry-Relevant Mock Interviews

Finding someone with domain expertise to conduct realistic mock interviews is not an easy feat. Busy calendars, time zone differences in some cases, and finding the right person who can ask the right questions and redirect when responses aren’t on par are the biggest challenges.

So, why not just use Chatgpt directly?

I’ll say, ā€œThe future is brightā€. The beginning is a buddy, but there’s so much more that can be done, which will be tailored to job search and interviews.

Defining the Vision

I started by asking:
ā€œHow can AI simulate a human interviewer’s adaptability—but with infinite patience and time?ā€

Empowering every job seeker to ace their interviews with confidence by delivering hyper-personalised, industry-relevant practice, powered by AI. No more generic questions, no more guessing. Just smarter prep, tailored to you

Core Goals:

  • Realism: Questions should mirror actual interviews.

  • Actionable Feedback: No vague ā€œGreat job!ā€ā€”specific scoring.

  • Resume-Aware: Pull details from uploaded PDFs to personalise questions.

  • JD-Specific: Questions that are specific to the Job Description, with context awareness.

The Tech Stack

I went through so many options before settling for these components. At this POC (Proof of Concept) stage, one requirement was to use free tools šŸ˜† , which was a major constraint. I tried DeepSeek, OpenAI (no free lunch there!)

Component

Tools Used

Why?

Backend

Python + Streamlit

Fast prototyping, easy deployment

LLM

Groq (Llama 3 70B)

Blazing fast inference

Embeddings

sentence-transformers

Semantic answer scoring

PDF Processing

PyPDF2

Extract text from resumes

Deployment

Streamlit Community Cloud

Zero-cost hosting

šŸ“Œ Key Features - v1

āœ… Upload your resume (PDF) – AI extracts key details
āœ… Paste any job description – Get role-specific questions
āœ… Dynamic follow-ups – Simulates a real interview flow
āœ… 100% free (for now!) – Powered by Groq’s Llama 3 70B3.

v2 Features

šŸ”œ Persona-Based Interviews
šŸ”œ Hybrid Scoring Model. Combining:
- Keyword Matching (e.g., ā€œPythonā€ in technical answers)
- Semantic Similarity (Compares your answer to ideal responses)
šŸ”œ Adaptive Questioning.

v3 Features

šŸ”œ Semantic scoring
šŸ”œ Database Integration
šŸ”œ Memory
šŸ”œ FANNG packages
šŸ”œ Speech to Text

🚦 Current Status & Lessons Learned

What’s Working Well

āœ… User Engagement: 75% of testers complete >5 practice questions.
āœ… Accuracy: Scoring aligns with human feedback in 8/10 cases.
āœ… Speed: Groq delivers responses in <1s.

Challenges

āš ļø Ambiguity in Scoring: Sometimes penalises creative but valid answers.
Fix in progress: Add user feedback to refine weights.

āš ļø Streamlit Limits: No persistent storage for user history.
Workaround: Exploring Firebase integration.

šŸ› ļø How YOU Can Build an AI Agent.

The steps below are quite simplistic and generic; a lot depends on what you want to build and your specific goals. Always start with the ā€˜Why?’

Step 1: What’s the why?
Define what problem you want to solve. What human repetitive tasks do you want to replace with AI? Think small businesses, what do they do so often that could be outsourced to AI?

Step 2: Start Small

If this is your first time building, start small, build a PoC, and validate the idea before going big bang!

  • Tool Recommendation: Begin with LangChain or LlamaIndex to chain prompts.

  • Example:

    from langchain.llms import OpenAI  
    llm = OpenAI(temperature=0.7)  
    response = llm("Generate an interview question about Python.") 

Step 3: Add Memory

Make your agent context-aware:

from langchain.memory import ConversationBufferMemory  

memory = ConversationBufferMemory()  
memory.save_context({"input": "What’s encapsulation?"}, {"output": "It’s OOP principle X…"})  

Step 3: Integrate Tools

  • APIs: Connect to Google Calendar for scheduling. (if doing some scheduling)

  • Databases: Store user preferences in a SQLite database.

Step 4: Deploy

  • Simple: Streamlit (like us!)

  • Scalable: FastAPI + React frontend.

Pro Tip: Use transformers.js to run models directly in the browser if privacy is a concern.

ā“ Q&A

Q: How is this better than practising with Chatgpt?
A: Interview Buddy is focused—it structures sessions like real interviews, scores objectively, and adapts to your resume. Chatgpt is a generalist; we’re a specialist.

Q: What’s the most challenging part of building an AI agent?
A: Balancing structure vs. flexibility. Too rigid → robotic. Too loose → inconsistent.

Closing Thoughts

AI agents are amplifiers for human potential. Whether it’s Interview Buddy or your idea, the key is:

  1. Start with a narrow use case, such as a Virtual Assistant.

  2. Iterate with real users (we tested with job seekers).

  3. Embrace constraints (e.g., Streamlit’s limits forced creativity!).

Enjoyed this breakdown?
šŸ”— Try Interview Buddy (v1): https://mock-interview-buddy.streamlit.app/
[It’s free, so there’s a general bucket daily limit]
šŸ”— YouTube Video for more info: https://youtu.be/axiciok4qQ0

What will YOU build? Share your ideas with me by hitting reply!

If you liked this newsletter, please share it with your friends and colleagues. šŸ‘Æā€ā™€ļø