InterviewBuddy AI A developer built InterviewBuddy AI, an open-source mock interview tool that turns a candidate's resume into a personalized practice session for Data Analyst, Data Executive, and MIS Executive roles. The project pairs a Python/FastAPI backend and SQLite database with a locally running Ollama-served Gemma 3 model, so resume parsing, question generation, and answer scoring all happen on the user's own machine rather than through a hosted AI API. The developer says the goal is an always-available practice partner rather than a replacement for a real interviewer. This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend https://dev.to/challenges/hacktoberfest-weekend-2026-10-01 I built InterviewBuddy AI , a beginner-friendly AI mock interview partner for a friend who is preparing for Data Analyst, Data Executive, and MIS Executive interviews . The problem was simple: finding interview questions is easy, but finding someone who is consistently available to conduct a realistic interview, ask follow-up questions, and give useful feedback is much harder. InterviewBuddy AI turns a resume into a personalized interview practice session. A user can: The goal is not to replace a real interviewer. It is to give my friend an always-available practice partner so they can practice repeatedly without needing another person to be available every time. Local demo: Run the project locally using the instructions in the GitHub README. For the final submission, include a short video showing: resume upload → role selection → AI-generated questions → answering → AI feedback → final report. GitHub repository: https://github.com/prathamesh-1983/InterviewBuddy-AI/tree/main https://github.com/prathamesh-1983/InterviewBuddy-AI/tree/main interviewbuddy-ai/ │ ├── backend/ │ ├── main.py │ ├── ai.py │ └── database.py │ ├── frontend/ │ ├── index.html │ ├── style.css │ └── app.js │ ├── data/ ├── uploads/ ├── sample resume.txt ├── requirements.txt ├── .env.example ├── .gitignore ├── LICENSE └── README.md InterviewBuddy AI is built around open-source/open-weight AI running locally rather than depending on a closed hosted AI API. The project uses: The basic AI flow is: Resume ↓ Resume text extraction ↓ FastAPI backend ↓ Personalized prompt ↓ Ollama ↓ Gemma 3 ↓ Interview questions ↓ Candidate answer ↓ Gemma 3 evaluation ↓ Feedback + score ↓ Final practice report Frontend HTML + CSS + JavaScript │ ▼ Backend Python + FastAPI │ ├──────────────► SQLite │ ▼ Local AI Ollama + Gemma 3 The application accepts: .txt .pdf .docx The extracted resume content is passed to the AI so that interview questions can be relevant to the candidate's actual experience and skills. For example, a resume mentioning Excel, Power BI, SQL, Python, and data cleaning can result in questions specifically related to those The AI is used for three major tasks: Open innovation mattered for this project because the application is intended to be a personal, repeatable, and privacy-friendly interview practice tool . Using a locally running open-weight model made several things possible. A resume contains personal information such as education, work experience, contact information, and skills. With local inference, the core AI processing can happen on the user's own computer instead of requiring every resume and interview answer to be sent to a third-party hosted AI service. Traditional hosted approach: Resume → Internet → Closed AI API → Response InterviewBuddy: Resume → Local application → Local Gemma model → Response A local model does not require a paid API request for every practice question, making repeated interview practice more practical for students and job seekers. Because the project communicates with Ollama, the model can be changed without redesigning the entire application. Gemma 3 ↓ another compatible local model Running the model locally makes it easier to experiment with prompts, model choices, response formats, and interview behavior without being locked into one closed provider. The project uses technologies that a beginner can inspect, modify, and learn from: DevRelay session: Add your saved DevRelay session link here This section can be updated with the saved DevRelay session so judges can see the development process. Building InterviewBuddy AI helped me understand that a useful AI application does not need to be extremely large. The most important part was identifying a real problem for one person and building around that problem. I also learned how to: If I continue developing InterviewBuddy AI, I would like to add: Remove this section if no partner category applies. Potential partner technologies used in the project: If entering additional partner categories, list the applicable categories according to the official challenge requirements. InterviewBuddy AI started with a simple question: What could I build that would genuinely help a friend? The answer was not another generic chatbot. It was a practice partner that could be available whenever they needed it. By combining a simple web application with a locally running open-weight AI model, InterviewBuddy AI makes personalized interview practice more accessible, repeatable, and privacy-friendly. Built for a friend. Built with open AI. Built to be useful. 🤝