SI

snailclimb/interview-guide

Developer tools

This page was translated automatically. Technical details may differ from the original. View the original

3.4K stars Quality 73 Trend 46AGPL-3.0

An open-source AI interview platform built on Spring Boot 4.1, Java 25, Spring AI 2.0, React, PostgreSQL/pgvector, Redis, and RustFS, supporting intelligent resume analysis, mock interviews, voice interviews, and knowledge base RAG.

Overview

InterviewGuide is an intelligent interview assistance platform that integrates resume analysis, mock interviews (text + voice), interview scheduling, knowledge base management, and multi-model configuration. The system leverages large language models (LLMs), vector databases, Redis Stream asynchronous tasks, and real-time voice technology to provide job seekers, HR, and training institutions with intelligent resume evaluation, interview practice, knowledge base Q&A, and interview scheduling capabilities. If you want to study this project, or want to use it as a personal project experience or thesis topic, I've also put together a relatively detailed tutorial: from infrastructure setup and core business implementation, to finally explaining your ideas and highlights in the interview, and trying to cover the areas where you get stuck as much as possible. If you really need more systematic coaching, you can click here for details (mainly to cover some time costs, hope you understand, thank you for your support): "SpringAI Intelligent Interview Platform + RAG Knowledge Base". 1. Why choose PostgreSQL + pgvector for data storage? PG's vector data storage functions are now useful, streamlining the architecture without adding too many components. 2. Why introduce Redis? - Redis replaces ConcurrentHashMap to implement caching for interview sessions. - Asynchronous scenarios such as resume analysis and knowledge base vectorization based on Redis Stream (can also decouple; analysis and vectorization can be done using other programming languages). Mature message queues like Kafka are not used, also because too many components are not introduced. 3. Why choose Gradle for building tools? Personally, I prefer using Gradle and have written related articles: Summary of Core Concepts of Gradle. - : Supports multiple resume formats including PDF, DOCX, DOC, TXT, and more. - : Enables asynchronous resume analysis based on Redis Stream, supporting real-time viewing of processing progress (pending analysis/analysis/completed/failed). - : Built-in automatic retry mechanism for analysis failures (up to 3 times) and content hash-based repeat detection. - : Supports exporting AI analysis results with one click into structured PDF resume analysis reports. - :Built-in 10+ interview directions (Java backend, Alibaba/ByteDance/Tencent specialization, frontend, Python, algorithms, system design, test opening, AI Agent, etc.), each track defined by SKILL.md with exam scope, difficulty distribution, and reference knowledge base. - :Automatically excludes questions previously asked in previous sessions during question creation to avoid repeated assessments. - :Total duration After dragging the slider, each stage (self-introduction, technical review, project in-depth exploration, counter-Q&A session) is automatically allocated according to the time ratio. - :Supports configuring multiple rounds of intelligent follow-up questions (default 1 item), simulating multiple Q&A scenarios.

Overview (machine translated)

Intelligent AI Interviewer Platform - Resume analysis, mock interviews, and RAG knowledge base system based on large language models


Project Introduction

InterviewGuide is an intelligent interview assistance platform that integrates resume analysis, mock interviews (text + voice), interview scheduling, knowledge base management, knowledge base question bank interviews, and multi-model configuration. The system leverages large language models (LLMs), vector databases, Redis Stream asynchronous tasks, and real-time voice technology to provide job seekers, HR, and training institutions with intelligent resume evaluation, interview practice, knowledge base Q&A, and interview scheduling capabilities.

System Architecture

Supporting Tutorial

This project promises full features are free and open source, and will not create so-called Pro versions or designs like “paid unlocking core features.”

If you want to study this project, or want to use it as a personal project experience or thesis topic, I’ve also put together a relatively detailed tutorial: from infrastructure setup and core business implementation, to finally explaining your ideas and highlights in the interview, and trying to cover the areas where you get stuck as much as possible.

If you really need more systematic coaching, you can click here for more details (tutorial is paid, mainly to cover some time costs, hope you understand, thank you for your support): “SpringAI Intelligent Interview Platform + RAG Knowledge Base”.

Technology Stack

Backend Technology

Technology Version Description
Spring Boot 4.1.0 Application Framework
Java 25 Development language (virtual thread)
Spring AI 2.0.0 AI integration framework, OpenAI-compatible model integration
Spring AI Agent Utils 0.10.0 Skill resource loading, Advisor ability expansion
PostgreSQL + pgvector 14+ Relational database + vector storage (Compose defaults to PG16)
Redis + Redisson 6+ / 4.0.0 Cache + Message Queue (Stream)
Apache Tika 2.9.2 Document Analysis
iText 8 8.0.5 PDF export
MapStruct 1.6.3 Object mapping
SpringDoc OpenAPI 3.0.2 API interface documentation
DashScope SDK 2.22.7 Speech recognition/synthesis (Qwen3 ASR/TTS)
AWS S3 SDK 2.29.51 S3 compatible object storage (MinIO/RustFS).
WebSocket - Real-time two-way communication for voice interviews
Gradle 9.6.1 Build tools

Frequently Asked Questions about Technology Selection:

This page was translated automatically. Technical details may differ from the original.

Recommended Tools

Try a different keyword or remove a filter.

Install

npx skillfish add snailclimb/interview-guide
New to MCP? Start with the mcpskill.org guide →