DEV Community

Eman Adnan
Eman Adnan

Posted on

I Built a Private, Open-Source AI Interview Coach for My Friend Who Dreads Placement Interviews

Hacktoberfest: Maintainer Spotlight

This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend

What I Built

Placement Interview Coach is a web app that asks you a realistic interview question, lets you answer in your own words, and gives you instant feedback using the STAR method (Situation, Task, Action, Result). An open-weight AI model runs entirely inside your browser.

You choose the role you're preparing for (software, data, IT or a part-time student job), optionally add a company name, and click New question. After you answer, the coach gives you:

  • a score out of 10, shown as a colour-coded ring
  • a STAR check showing which parts your answer has and which are missing
  • what went well and how to improve
  • a stronger version of your answer that only uses your real details
  • a likely follow-up question, so you're not caught off guard

Who It's For

I built this for my friend Hetvi and for myself. We're both applying for opportunities this year, and interviews are the part that feels the scariest: you freeze, forget your best examples, and never really know whether your answer was any good.

University mock interviews are useful, but there aren't many slots. I wanted something Hetvi could open at 11pm the night before an interview and practise with as many times as she likes, without feeling judged.

Demo

🔗 Live app: https://huggingface.co/spaces/EmanAdnan/placement-interview-coach

(Open it in Chrome or Edge on a laptop, click **Load AI model, then **New question.)

Placement Interview Coach home page with the headline and 4 steps

Interview question, answer, a score of 7 out of 10 and the STAR check

Code

🔗 Source: https://huggingface.co/spaces/EmanAdnan/placement-interview-coach/tree/main

The whole app is a single index.html file with no backend and no API keys. It's MIT licensed, so anyone can fork it.

How I Built It

  • One HTML page, hosted free as a static Hugging Face Space.
  • Open-weight models in the browser: WebLLM runs Qwen 2.5 3B (default), Qwen 2.5 1.5B or Gemma 2 2B on your laptop's GPU through WebGPU. The model downloads once and is then cached.
  • Two prompts do the work:
    1. A question prompt writes one realistic competency or motivation question for the chosen role and company.
    2. A feedback prompt returns a fixed structure (score, STAR check, tips, stronger version, follow-up). The app turns that into a score ring and separate feedback cards as the answer streams in.
  • Guardrails:
    • The model is told never to invent experiences, skills or numbers. If a result is missing, the stronger version says [add your number] instead of making one up. An interview coach that teaches you to exaggerate would be worse than useless.
    • Very short answers and random keyboard-mashing are caught before they reach the model, with a friendly message asking for real sentences.
    • If WebGPU isn't available, the app explains why and still offers classic starter questions instead of crashing.

What went wrong (and how I fixed it)

  • Plan A didn't work. I first built it in Python with Gradio, but Gradio Spaces now need a paid plan. I rebuilt it to run fully in the browser, which turned out better: it's free, and answers stay private.
  • The small model copied my instructions. With the 1.5B model, the feedback sometimes repeated my prompt text or filled tips with placeholders. I fixed it by switching the default to the 3B model, lowering the temperature, rewriting the prompt so every placeholder clearly says what to write, and cleaning any leftover instruction text out of the output.
  • Safari doesn't support WebGPU yet, so the app detects this and tells you to use Chrome or Edge.

Why Does Open Innovation Matter?

  1. Privacy: interview answers are personal. Because the model is open-weight, it runs on Hetvi's own device, and the answers are never sent to a server.
  2. Free for students: no API key, no subscription and no server costs. Anyone with the link can practise.
  3. Transparent and swappable: you can see exactly which model is used, switch between Qwen and Gemma with one dropdown, and fork the code.

What's Next

  • A mock interview mode with 5 questions in a row and a summary at the end
  • Saving answers, so Hetvi can build a personal bank of STAR stories
  • Support for more open models, and phones as WebGPU spreads

Thanks for reading! If you're applying for placements or internships this year too, give it a try. Good luck! 🎃

Top comments (0)