DEV Community

guanyi liu
guanyi liu

Posted on

When ChatGPT Says 'Great!' But Teaches Nothing—Building a Real Interview Coach with Claude Code

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
Enter fullscreen mode Exit fullscreen mode

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:

  1. Claude provides today's learning outline
  2. You recall based on the outline and give your own understanding
  3. Claude judges whether you truly understand or just memorized answers
  4. 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
Enter fullscreen mode Exit fullscreen mode

2. Open with Claude Code

cd ai-interview-engine
claude
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode




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:

  1. No more anxiety — No need to plan "what to review today," the system automatically schedules based on the forgetting curve
  2. Actually remember — The wrong→explain→verify process forces real understanding, not just fleeting impressions
  3. 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)