ChatGPT always says "Great!" but I remember nothing—Built a real interview teacher with Claude Code
A pain point for everyone
When you use ChatGPT / Claude to prepare for interviews, have you ever encountered this:
- You gave an obviously flawed answer, it replied "Great answer!" and moved straight to the next question
- Every time you start a new conversation, it doesn't remember what you learned yesterday, you have to introduce yourself from scratch
- You learned a bunch of rote answers, but don't know when to review them, and forget everything in two days
- It explains concepts to you, you feel like you understand after reading, but during interviews you can't articulate it
The fundamental reason is simple: ChatGPT is a considerate chat companion, not a strict teacher.
Its working principle is "make the user satisfied," not "help the user learn." It agrees with everything you say because it's afraid you might get upset.
Is there a way to make AI act as a strict teacher?
Yes. I did it using Claude Code (Anthropic's CLI programming tool).
Claude Code has a unique capability: rules files (CLAUDE.md) + persistent memory system. In simple terms, you can "program" the AI's behavior by writing rules files, and these rules are automatically loaded in every conversation.
I applied this capability to interview preparation.
What I did
I wrote a set of configuration files, with two core components:
1. Strict learning process (rules/interview.md)
Rules:
1. Mixed questions (3-4 modules, not just one direction)
2. Correct answer → Brief confirmation + related knowledge points → Next question
3. Wrong answer → Must explain (including reference URL) → Give verification question → New question only after passing
4. No skipping steps, cannot jump to next question immediately after answering
Difference from regular AI: The rules are hardcoded, not decided by the AI itself. It can't be lazy and say "Great" because the rules file dictates it must complete the explanation → verification process.
2. Forgetting curve review scheduling (knowledge/interview_tracker.md)
| Knowledge Point | First Learned | D+1 | D+2 | D+4 | D+7 | D+15 | Status |
|---|---|---|---|---|---|---|---|
| Smart Pointers | 5/29 | ✅ | ✅ | Mastered | |||
| Virtual Function Table | 5/29 | ❌ | Weak |
At the start of each session, Claude automatically checks which knowledge points are due for review and prioritizes review questions. You don't need to remember when to review yourself.
3. Daily wrap-up verification
When you say "let's end here for today," it triggers the wrap-up process:
- Claude provides today's learning outline
- You recall based on the outline and give your own understanding
- Claude judges whether you truly understand or just memorized answers
- Update the review schedule
This is the AI version of the Feynman Technique—not just thinking you understand, but being able to explain it, with AI as the judge.
Effect comparison
| Capability | ChatGPT Interview | Anki | NotebookLM | SaaS Platforms | This Project |
|---|---|---|---|---|---|
| Cross-session memory | None | Deck level only | None | Partial | Yes |
| Spaced repetition | None | Yes | None | None | Yes |
| Wrong→Explain→Verify | None | None (answer only) | None | Partial | Yes |
| Question generation from project code | Manual code pasting | Not applicable | File upload required | Not supported | Native support |
| Additional cost | None | None | None | \$29-300/time | No additional cost |
Core difference: Other tools either have memory without understanding (Anki), or understanding without memory (ChatGPT), or neither (SaaS). Claude Code's rules file + memory system is the only solution that combines both.
The biggest killer feature: Starting from your project code
All interview tools on the market are "I ask, you answer."
This project is different: Asking follow-up questions based on your own code.
For example, my project has a BoundedQueue (bounded queue) using two condition_variable. During interview preparation, Claude doesn't ask "Please explain condition_variable," but rather:
"Your BoundedQueue uses two condition_variables (not_full_ and not_empty_), would one be enough?"
Such questions force you to think about principles from code you've written yourself, giving knowledge an anchor point rather than memorizing abstract answers.
Quick Start
1. Fork the repository
gh repo fork happiness-cheng/ai-interview-engine --clone
2. Open with Claude Code
cd ai-interview-engine
claude
3. Say the first sentence
I'm preparing for C++ backend development interviews, targeting internships at major companies. Let's start reviewing.
That's it. Claude will read the rules files and start the first round of questions.
4. Switch to your own tech stack
The repository comes with example question banks for C++ backend. If you're using Java / Go / frontend, replace with the blank template:
knowledge/TEMPLATE.md → Copy to interview_tracker.md → Fill in your knowledge points
My user experience
I'm a sophomore student preparing for 2026 fall internship recruitment. Using this system for C++ backend interview preparation, the most obvious feelings are:
- No more anxiety — No need to plan "what to review today," the system automatically schedules based on the forgetting curve
- Actually remember — The wrong→explain→verify process forces real understanding, not just fleeting impressions
- Project confidence — Follow-up questions from your own code let you clearly explain the "why" behind every design decision
This isn't just an interview tool
The underlying engine is universal: Question→Answer→Judge→Explain→Verify→Forgetting curve scheduling.
Interview preparation is just one scenario. You can use it to prepare for:
- Technical interviews (currently supported)
- Career change/job transition review
- Final exams (same principle, different knowledge base)
Open source link
GitHub: https://github.com/happiness-cheng/ai-interview-engine
If this helps you, give it a star. If you have improvement suggestions, feel free to open an issue.
Top comments (0)