{"slug": "interviewbuddy-ai", "title": "InterviewBuddy AI", "summary": "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.", "body_md": "*This is a submission for the [Hacktoberfest Weekend Challenge: Build\nfor a\nFriend](https://dev.to/challenges/hacktoberfest-weekend-2026-10-01)*\n\nI built **InterviewBuddy AI**, a beginner-friendly AI mock interview\n\npartner for a friend who is preparing for **Data Analyst, Data Executive, and MIS Executive interviews**.\n\nThe problem was simple: finding interview questions is easy, but finding\n\nsomeone who is consistently available to conduct a realistic interview,\n\nask follow-up questions, and give useful feedback is much harder.\n\nInterviewBuddy AI turns a resume into a personalized interview practice\n\nsession.\n\nA user can:\n\nThe goal is not to replace a real interviewer. It is to give my friend\n\nan always-available practice partner so they can practice repeatedly\n\nwithout needing another person to be available every time.\n\n**Local demo:** Run the project locally using the instructions in the\n\nGitHub README.\n\nFor the final submission, include a short video showing: resume upload\n\n→ role selection → AI-generated questions → answering → AI feedback →\n\nfinal report.\n\n**GitHub repository:** ([https://github.com/prathamesh-1983/InterviewBuddy-AI/tree/main](https://github.com/prathamesh-1983/InterviewBuddy-AI/tree/main))\n\n```\ninterviewbuddy-ai/\n│\n├── backend/\n│   ├── main.py\n│   ├── ai.py\n│   └── database.py\n│\n├── frontend/\n│   ├── index.html\n│   ├── style.css\n│   └── app.js\n│\n├── data/\n├── uploads/\n├── sample_resume.txt\n├── requirements.txt\n├── .env.example\n├── .gitignore\n├── LICENSE\n└── README.md\n```\n\nInterviewBuddy AI is built around **open-source/open-weight AI running locally** rather than depending on a closed hosted AI API.\n\nThe project uses:\n\nThe basic AI flow is:\n\n```\nResume\n   ↓\nResume text extraction\n   ↓\nFastAPI backend\n   ↓\nPersonalized prompt\n   ↓\nOllama\n   ↓\nGemma 3\n   ↓\nInterview questions\n   ↓\nCandidate answer\n   ↓\nGemma 3 evaluation\n   ↓\nFeedback + score\n   ↓\nFinal practice report\nFrontend\nHTML + CSS + JavaScript\n        │\n        ▼\nBackend\nPython + FastAPI\n        │\n        ├──────────────► SQLite\n        │\n        ▼\nLocal AI\nOllama + Gemma 3\n```\n\nThe application accepts:\n\n`.txt`\n`.pdf`\n`.docx`\nThe extracted resume content is passed to the AI so that interview\n\nquestions can be relevant to the candidate's actual experience and\n\nskills.\n\nFor example, a resume mentioning **Excel, Power BI, SQL, Python, and data cleaning** can result in questions specifically related to those\n\nThe AI is used for three major tasks:\n\nOpen innovation mattered for this project because the application is\n\nintended to be a **personal, repeatable, and privacy-friendly interview practice tool**.\n\nUsing a locally running open-weight model made several things possible.\n\nA resume contains personal information such as education, work\n\nexperience, contact information, and skills.\n\nWith local inference, the core AI processing can happen on the user's\n\nown computer instead of requiring every resume and interview answer to\n\nbe sent to a third-party hosted AI service.\n\n```\nTraditional hosted approach:\n\nResume → Internet → Closed AI API → Response\n\nInterviewBuddy:\n\nResume → Local application → Local Gemma model → Response\n```\n\nA local model does not require a paid API request for every practice\n\nquestion, making repeated interview practice more practical for students\n\nand job seekers.\n\nBecause the project communicates with Ollama, the model can be changed\n\nwithout redesigning the entire application.\n\n```\nGemma 3\n   ↓\nanother compatible local model\n```\n\nRunning the model locally makes it easier to experiment with prompts,\n\nmodel choices, response formats, and interview behavior without being\n\nlocked into one closed provider.\n\nThe project uses technologies that a beginner can inspect, modify, and\n\nlearn from:\n\n**DevRelay session:** `[Add your saved DevRelay session link here]`\n\nThis section can be updated with the saved DevRelay session so judges\n\ncan see the development process.\n\nBuilding InterviewBuddy AI helped me understand that a useful AI\n\napplication does not need to be extremely large.\n\nThe most important part was identifying a real problem for one person\n\nand building around that problem.\n\nI also learned how to:\n\nIf I continue developing InterviewBuddy AI, I would like to add:\n\nRemove this section if no partner category applies.\n\nPotential partner technologies used in the project:\n\nIf entering additional partner categories, list the applicable\n\ncategories according to the official challenge requirements.\n\nInterviewBuddy AI started with a simple question:\n\n**What could I build that would genuinely help a friend?**\n\nThe answer was not another generic chatbot.\n\nIt was a practice partner that could be available whenever they needed\n\nit.\n\nBy combining a simple web application with a locally running open-weight\n\nAI model, InterviewBuddy AI makes personalized interview practice more\n\naccessible, repeatable, and privacy-friendly.\n\n**Built for a friend. Built with open AI. Built to be useful.** 🤝", "url": "https://wpnews.pro/news/interviewbuddy-ai", "canonical_source": "https://dev.to/prathamesh_desai_/interviewbuddy-ai-42n0", "published_at": "2026-10-04 16:03:58+00:00", "updated_at": "2026-10-04 16:12:58.961233+00:00", "lang": "en", "topics": ["ai-tools", "large-language-models", "ai-products", "developer-tools"], "entities": ["InterviewBuddy AI", "Ollama", "Gemma 3", "FastAPI", "SQLite", "Hacktoberfest"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/interviewbuddy-ai", "markdown": "https://wpnews.pro/news/interviewbuddy-ai.md", "text": "https://wpnews.pro/news/interviewbuddy-ai.txt", "jsonld": "https://wpnews.pro/news/interviewbuddy-ai.jsonld"}}