AI-Powered Interview Preparation for Software Engineers
A collection of specialized AI skills for Claude Code and other agentic solutions to help you prepare for software engineering interviews at top tech companies.
The Mentor is an open-source repository of AI interviewersβspecialized prompts and instructions that transform your AI coding assistant into an expert technical interviewer. Each "skill" represents a different interview domain, difficulty level, and role type.
- π― Role-Specific Practice: Interviewers tailored for SWE-I, Data Engineer, Frontend, Backend, and more
- π Adaptive Difficulty: Questions adjust based on your performance
- π‘ Intelligent Hints: 4-level hint system when you get stuck
- π Visual Explanations: ASCII diagrams and Remotion video components for complex concepts
- π Progress Tracking: Know exactly where to improve
- π Realistic Personas: Interviewers with distinct styles and approaches
Clone the repository:
git clone https://github.com/PrepLabsAI/InterviewMentor.gitOr download the ZIP manually from GitHub.
Open Claude Code and run:
/plugin marketplace add <path_to_the_cloned_folder>/agents
Then start practicing with any skill:
"Can you help me prepare for a system design interview?"
"I want to practice SQL optimization."
"Help me prepare for a distributed systems interview."
The agent will take over and conduct a realistic mock interview.
Each skill is a markdown file with clear instructions. Copy the content of any SKILL.md file and paste it into your AI assistant of choice (ChatGPT, Claude.ai, etc.)
- Copy templates/skill-template/
- Fill in your topic, role, and questions
- Add it to the appropriate
agents/directory - Submit a PR!
| Skill | Topic | Difficulty | Description |
|---|---|---|---|
| Arrays & HashMaps | Data Structures | Easy-Medium | Frequency counting, prefix/suffix products, sliding window |
| Linked Lists | Data Structures | Easy | Reversal, merging, cycle detection, fast/slow pointers |
| Binary Trees | Trees | Easy-Medium | Traversals, BFS/DFS, BST validation |
| Recursion & Backtracking | Algorithms | Easy | Call stacks, base cases, backtracking |
| Stacks & Queues | Data Structures | Easy-Medium | Monotonic stack, expression evaluation |
| Skill | Topic | Difficulty | Description |
|---|---|---|---|
| Graph Algorithms | Algorithms | Medium | BFS, DFS, implicit graphs, union-find |
| Dynamic Programming | Algorithms | Medium-Hard | Memoization, tabulation, knapsack, LCS |
| Heaps & Priority Queues | Data Structures | Medium | Top-K, merge K sorted, median stream |
| URL Shortener | System Design | Medium | Capacity estimation, hashing, caching, analytics |
| Rate Limiter | System Design | Medium | Token bucket, sliding window, Redis atomicity |
| Skill | Topic | Difficulty | Description |
|---|---|---|---|
| SQL Optimization | Database | Medium-Hard | EXPLAIN plans, composite indexes, partitioning |
| MySQL Performance | MySQL / InnoDB | Medium-Hard | ESR indexing rule, InnoDB locking, connection pools, batch safety |
| Pipeline Architect | Data Engineering | Medium-Hard | Kafka/Flink, Airflow DAGs, exactly-once, late arrivals |
| Schema Design | Data Engineering | Medium-Hard | Star schemas, SCDs, grain, lakehouse architecture |
| Skill | Topic | Difficulty | Description |
|---|---|---|---|
| Database Architecture | Databases | Medium-Hard | SQL vs NoSQL, B-Trees vs LSM, ACID, sharding |
| Caching Architecture | Caching | Medium-Hard | Cache-aside, write-through, thundering herd, bloom filters |
| API Design | API Design | Medium | REST, pagination, versioning, idempotency, OAuth |
| Message Queues | Messaging | Medium-Hard | Kafka vs RabbitMQ, exactly-once myth, dead letter queues |
| Microservices Architecture | Architecture | Medium-Hard | DDD, sagas, circuit breakers, service boundaries |
| Distributed Systems Core | Dist. Systems | Hard | CAP theorem, quorums, Raft, vector clocks, fencing tokens |
| Networking & Load Balancing | Networking | Medium-Hard | L4/L7 LBs, TLS termination, consistent hashing |
| Reliability & Observability | Reliability | Medium-Hard | Circuit breakers, SLOs, exponential backoff with jitter |
| Skill | Topic | Difficulty | Description |
|---|---|---|---|
| Kubernetes | Infrastructure | Medium | Pods, deployments, HPA, CrashLoopBackOff debugging |
| CI/CD Pipeline | DevOps | Medium | Blue-green, canary, database migrations in CI |
| Monitoring & Alerting | SRE | Medium | SLOs, burn-rate alerts, alert fatigue |
| Skill | Topic | Difficulty | Description |
|---|---|---|---|
| ML System Design | ML Engineering | Hard | Feature stores, model serving, A/B testing, drift |
| Deep Learning | ML Theory | Hard | Transformers, training dynamics, convergence debugging |
| Skill | Topic | Difficulty | Description |
|---|---|---|---|
| AI Product Strategy | AI PM | Hard | When to use AI, success metrics, ship-vs-wait decisions |
| Prompt Engineering | AI PM | Hard | RAG architecture, evaluation frameworks, token optimization |
| Responsible AI | AI PM | Hard | Bias mitigation, content moderation, EU AI Act |
| Skill | Topic | Difficulty | Description |
|---|---|---|---|
| Broken API | Debugging | Medium-Hard | 500 errors under load, connection pools, deadlocks |
| Slow Database | Debugging | Medium-Hard | Query regression, stale statistics, lock contention |
| Memory Leak | Debugging | Medium-Hard | Unbounded caches, listener leaks, OOM debugging |
| Cascading Failure | Debugging | Hard | Thread pool exhaustion, retry storms, missing circuit breakers |
| Data Inconsistency | Debugging | Hard | Timezone mismatches, duplicate events, reconciliation |
| Deployment Rollback | Debugging | Medium-Hard | Failed deploys, incompatible migrations, feature flags |
| Skill | Topic | Difficulty | Description |
|---|---|---|---|
| Design Uber | System Design | Hard | Geospatial indexing, real-time matching, concurrency |
| Design Twitter | System Design | Hard | Fan-out on write vs read, timeline ranking |
| Design a Search Engine | System Design | Hard | Crawling, inverted index, TF-IDF, autocomplete |
| Leadership Principles | Behavioral | All Levels | STAR method, ownership, cross-functional collaboration |
| Problem Decomposition | Meta | All Levels | How to approach any unknown problem β pattern recognition, structured thinking |
Each skill follows a consistent format:
π Persona
βββ Who the AI interviewer is, their style, approach
π― Core Mission
βββ What you'll learn and practice
π Interview Structure
βββ Phases: Warm-up β Core Concepts β Problem Solving β Wrap-up
π§ Interactive Elements
βββ ASCII diagrams, Remotion components for visual learning
π‘ Hint System
βββ 4 levels: Gentle nudge β Direction β Partial solution β Full walkthrough
π Problem Bank
βββ Curated questions with optimal solutions and follow-ups
π Evaluation Rubric
βββ How to assess performance and identify weak areas
π Resources
βββ Books, courses, and practice problems for further study
When you're stuck, the interviewer provides hints at increasing detail levels:
| Level | Type | Example |
|---|---|---|
| 1 | Gentle Nudge | "Think about the time complexity. What data structure gives O(1) lookups?" |
| 2 | Direction | "This sounds like a dynamic programming problem. Can you identify the subproblems?" |
| 3 | Partial Solution | "Try using two pointers - one at start, one at end, moving towards each other." |
| 4 | Full Walkthrough | Step-by-step explanation with pseudocode |
Pro tip: Try to solve with Level 1 hints first. The struggle is where learning happens!
Every skill includes visual explanations:
Two Pointers Pattern:
Array: [1, 2, 3, 4, 5, 6], Target: 7
Left β β Right
1 2 3 4 5 6
1+6=7 β Found!
For complex animations, we provide Remotion React components:
// Example: Visualizing consistent hashing
export const ConsistentHashingDemo = () => {
const frame = useCurrentFrame();
// Animation logic...
return <div>{/* Visual representation */}</div>;
};Render these to video for:
- Pre-study review
- Sharing explanations with study groups
- Building your own tutorial content
- Fork the repository
- Copy the template:
cp -r templates/skill-template agents/{category}/{skill-name}-interviewer - Fill in the template following our guidelines
- Test your skill with Claude Code
- Submit a PR with:
- Clear description of what the skill covers
- Test notes (how you verified it works)
- Any Remotion components included
- Clear, consistent persona defined
- 3-4 difficulty-appropriate problems
- All 4 hint levels for each problem
- At least 2 visual diagrams (ASCII or Remotion)
- Evaluation rubric included
- Resources section with further reading
- Tested with at least one AI assistant
The-Mentor/
βββ README.md # This file
βββ LICENSE # MIT License
βββ templates/
β βββ skill-template/ # Template for new skills
β βββ SKILL.md
β βββ references/
βββ agents/
β βββ swe-i/ # Entry level
β βββ swe-ii/ # Mid level
β βββ systems-design/ # System design interviews
β βββ data-engineer/ # Data engineering
β βββ devops-sre/ # Infrastructure
β βββ ml-engineer/ # ML/AI roles
β βββ ai-pm/ # AI Product Management
β βββ debugging/ # Debugging & Incident Response
β βββ behavioral/ # Behavioral interviews
β βββ meta/ # Meta skills
βββ examples/ # Example usage sessions
βββ docs/ # Documentation
- Arrays & HashMaps
- Linked Lists
- Binary Trees
- Recursion & Backtracking
- Stacks & Queues
- Graph Algorithms
- Dynamic Programming
- Heaps & Priority Queues
- System Design (URL Shortener, Rate Limiter)
- System Design (Uber, Twitter, Search Engine)
- Distributed Systems
- Specialized role skills (Data Eng, DevOps, ML, etc.)
- Debugging scenarios
- Full mock interviews using combined skills
- Leadership Principles (behavioral)
- Problem Decomposition (meta skill)
You: "Help me prepare for a system design interview on URL Shortener"
Claude: [Loads skill persona]
π URL Shortener Interviewer
Welcome! I'm here to evaluate your system design skills. We'll design a URL shortening service like bit.ly together.
Let's start: What are the functional requirements? What would be a reasonable scale to design for?
You: "We need to create short URLs and redirect... maybe 100 million URLs per month?"
Claude: Good start on the scale. Let's dig deeper into the requirements...
[45 minutes of guided design with hints when needed]
Claude: Great session! Here's your evaluation:
- Requirements Gathering: 4/5
- Capacity Estimation: 3/5
- Data Model: 4/5
- API Design: 4/5
- Trade-off Analysis: 3/5
Areas to improve:
- Consider read vs write ratios for caching strategy
- Think about analytics requirements from the start
- System Design Primer - Learn system design
- NeetCode - Practice problems by pattern
- Blind 75 - Essential problem list
MIT License - see LICENSE file for details.
Contributions welcome! Please read our Contributing Guide.
Ready to ace your next interview?
Pick a skill from the Roster and start practicing!
β Star this repo if it helps you land your dream job! β
