interview-problem-bank
Curated bank of interview problems organized by company, pattern, and difficulty. Provides problem recommendations, coverage tracking, weak area identification, and premium problem alternatives for FAANG interview preparation.
Best use case
interview-problem-bank is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Curated bank of interview problems organized by company, pattern, and difficulty. Provides problem recommendations, coverage tracking, weak area identification, and premium problem alternatives for FAANG interview preparation.
Teams using interview-problem-bank should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/interview-problem-bank/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How interview-problem-bank Compares
| Feature / Agent | interview-problem-bank | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Curated bank of interview problems organized by company, pattern, and difficulty. Provides problem recommendations, coverage tracking, weak area identification, and premium problem alternatives for FAANG interview preparation.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# interview-problem-bank
A specialized skill for curating, organizing, and recommending coding interview problems, with support for company-specific preparation, pattern-based practice, and progress tracking.
## Purpose
Provide a comprehensive interview problem bank with:
- Problems organized by FAANG company and difficulty
- Pattern-based categorization (Blind 75, NeetCode 150, etc.)
- Difficulty progression recommendations
- Coverage tracking and weak area identification
- Premium problem alternatives
## Capabilities
### Core Features
1. **Problem Organization**
- By company (Google, Meta, Amazon, Apple, Microsoft, etc.)
- By pattern (Two Pointers, Sliding Window, DP, etc.)
- By difficulty (Easy, Medium, Hard)
- By topic (Arrays, Trees, Graphs, etc.)
- By frequency (most asked in interviews)
2. **Curated Problem Lists**
- Blind 75 (essential problems)
- NeetCode 150 (expanded essential list)
- LeetCode Top Interview Questions
- Company-specific top questions
- Pattern-specific problem sets
3. **Progress Tracking**
- Problems solved by category
- Weak area identification
- Time spent per problem type
- Success rate tracking
- Spaced repetition for review
4. **Recommendations**
- Next problem based on progress
- Problems to strengthen weak areas
- Company-specific practice plans
- Time-based study schedules
## Problem Lists
### Blind 75
The essential 75 problems covering all major patterns:
| Category | Count | Topics |
|----------|-------|--------|
| Arrays & Hashing | 9 | Two Sum, Group Anagrams, Top K Frequent |
| Two Pointers | 5 | Valid Palindrome, 3Sum, Container with Water |
| Sliding Window | 6 | Best Time to Buy Stock, Longest Substring |
| Stack | 7 | Valid Parentheses, Min Stack, Daily Temperatures |
| Binary Search | 7 | Search Rotated Array, Find Minimum |
| Linked List | 11 | Reverse LL, Merge Lists, Detect Cycle |
| Trees | 15 | Invert Tree, Max Depth, Level Order |
| Tries | 3 | Implement Trie, Word Search II |
| Heap/Priority Queue | 7 | Merge K Lists, Top K Frequent |
| Backtracking | 9 | Subsets, Permutations, Combination Sum |
| Graphs | 13 | Number of Islands, Clone Graph |
| Dynamic Programming | 12 | Climbing Stairs, House Robber, Coin Change |
| Greedy | 8 | Maximum Subarray, Jump Game |
| Intervals | 6 | Merge Intervals, Meeting Rooms |
| Math & Geometry | 8 | Rotate Image, Set Matrix Zeros |
| Bit Manipulation | 7 | Single Number, Number of 1 Bits |
### NeetCode 150
Extended list with 150 problems for comprehensive preparation:
- All 75 Blind 75 problems
- 75 additional problems for deeper coverage
- More advanced problems per category
### Company-Specific Lists
| Company | Focus Areas | Top Patterns |
|---------|-------------|--------------|
| **Google** | Problem solving, optimization | Arrays, DP, Graphs |
| **Meta** | Arrays, Trees, System Design | Binary Trees, Arrays |
| **Amazon** | OOP, System Design, Leadership | Trees, BFS/DFS |
| **Apple** | iOS/macOS, algorithms | Arrays, Trees |
| **Microsoft** | Coding, System Design | DP, Arrays, Graphs |
| **Netflix** | Distributed Systems | Graphs, DP |
## Usage
### Get Recommended Problems
```bash
# Get next problem based on progress
interview-problem-bank recommend --user progress.json
# Get problems for specific pattern
interview-problem-bank list --pattern "dynamic-programming" --difficulty medium
# Get company-specific problems
interview-problem-bank company --name google --count 50
```
### Track Progress
```bash
# Mark problem as solved
interview-problem-bank solve --problem "two-sum" --time 15 --attempts 1
# Get progress report
interview-problem-bank progress --user progress.json
# Identify weak areas
interview-problem-bank analyze --user progress.json
```
### Generate Study Plan
```bash
# Generate 4-week study plan
interview-problem-bank plan --weeks 4 --target google --level intermediate
# Generate daily practice set
interview-problem-bank daily --count 3 --user progress.json
```
## Output Schema
### Problem Entry
```json
{
"id": "two-sum",
"title": "Two Sum",
"difficulty": "Easy",
"patterns": ["Arrays", "Hash Table"],
"companies": ["Google", "Amazon", "Meta", "Apple", "Microsoft"],
"frequency": 95,
"url": "https://leetcode.com/problems/two-sum/",
"premiumAlternative": null,
"hints": [
"Use a hash table for O(1) lookup",
"Store complement as key, index as value"
],
"timeToSolve": {
"target": 10,
"beginner": 20,
"expert": 5
},
"relatedProblems": ["3sum", "4sum", "two-sum-ii"]
}
```
### Progress Report
```json
{
"user": "user123",
"totalSolved": 150,
"byDifficulty": {
"Easy": 50,
"Medium": 80,
"Hard": 20
},
"byPattern": {
"Arrays": { "solved": 25, "total": 30 },
"DP": { "solved": 15, "total": 25 },
"Graphs": { "solved": 10, "total": 20 }
},
"weakAreas": ["Graphs", "Advanced DP", "Tries"],
"recommendations": [
{ "problem": "course-schedule", "reason": "Strengthen Graphs" },
{ "problem": "word-break", "reason": "Practice DP" }
],
"streak": 15,
"lastPracticed": "2025-01-24"
}
```
### Study Plan
```json
{
"duration": "4 weeks",
"target": "Google",
"level": "intermediate",
"schedule": [
{
"week": 1,
"focus": ["Arrays", "Strings", "Two Pointers"],
"problems": [
{ "day": 1, "problems": ["two-sum", "valid-anagram", "contains-duplicate"] },
{ "day": 2, "problems": ["best-time-to-buy", "max-subarray", "product-except-self"] }
]
},
{
"week": 2,
"focus": ["Sliding Window", "Stack", "Binary Search"],
"problems": [...]
}
]
}
```
## Pattern-Based Organization
### Array Patterns
| Pattern | Key Problems | Technique |
|---------|--------------|-----------|
| Two Pointers | 3Sum, Container with Water | Converging pointers |
| Sliding Window | Longest Substring, Min Window | Expand/contract window |
| Prefix Sum | Subarray Sum Equals K | Cumulative sum |
| Kadane's | Maximum Subarray | Track max ending at i |
### Tree Patterns
| Pattern | Key Problems | Technique |
|---------|--------------|-----------|
| DFS Recursive | Max Depth, Path Sum | Recursion |
| BFS Level Order | Level Order Traversal | Queue |
| Construct Tree | Build from Preorder/Inorder | Divide and conquer |
### Graph Patterns
| Pattern | Key Problems | Technique |
|---------|--------------|-----------|
| BFS Shortest Path | Word Ladder | Level-by-level |
| DFS Connected Components | Number of Islands | Visit all nodes |
| Topological Sort | Course Schedule | Kahn's algorithm |
| Union Find | Number of Connected | DSU |
### DP Patterns
| Pattern | Key Problems | Technique |
|---------|--------------|-----------|
| 1D Linear | House Robber, Climbing Stairs | dp[i] depends on dp[i-1], dp[i-2] |
| 2D Grid | Unique Paths, Min Path Sum | dp[i][j] from neighbors |
| String DP | Edit Distance, LCS | dp[i][j] for substrings |
| Knapsack | Coin Change, Partition | Include/exclude item |
## Integration Options
### MCP Server
**InterviewReady MCP Server**:
```bash
# Access curated interview content
npm install -g interviewready-mcp-server
```
### External Resources
- [Tech Interview Handbook](https://github.com/yangshun/tech-interview-handbook)
- [Coding Interview University](https://github.com/jwasham/coding-interview-university)
- [FAANG Coding Interview Questions](https://github.com/ombharatiya/FAANG-Coding-Interview-Questions)
- [neerazz/FAANG](https://github.com/neerazz/FAANG)
- [Interviews (kdn251)](https://github.com/kdn251/interviews)
## Integration with Processes
This skill enhances:
- `faang-interview-prep` - Structured FAANG preparation
- `mock-coding-interview` - Problem selection for mocks
- `interview-problem-explanation` - Explaining solutions
- `skill-gap-analysis` - Identifying weak areas
## Interview Preparation Timeline
### 1 Week Preparation
Focus on high-frequency problems:
- Day 1-2: Arrays and Strings (15 problems)
- Day 3-4: Trees and Graphs (10 problems)
- Day 5-6: DP and Backtracking (10 problems)
- Day 7: Review and mock interview
### 1 Month Preparation
Comprehensive coverage:
- Week 1: Fundamentals (Arrays, Strings, Hash Tables)
- Week 2: Data Structures (Trees, Graphs, Heaps)
- Week 3: Algorithms (DP, Backtracking, Greedy)
- Week 4: Review, mock interviews, weak areas
### 3 Month Preparation
Deep mastery:
- Month 1: All Easy + Medium fundamentals
- Month 2: Advanced Medium + Hard problems
- Month 3: Company-specific + mock interviews
## References
- [Blind 75 List](https://www.teamblind.com/post/New-Year-Gift---Curated-List-of-Top-75-LeetCode-Questions-to-Save-Your-Time-OaM1orEU)
- [NeetCode](https://neetcode.io/)
- [Sean Prashad's LeetCode Patterns](https://seanprashad.com/leetcode-patterns/)
- [Tech Interview Handbook](https://github.com/yangshun/tech-interview-handbook)
- [InterviewReady MCP](https://github.com/InterviewReady/mcp-server)
## Error Handling
| Error | Cause | Resolution |
|-------|-------|------------|
| `PROBLEM_NOT_FOUND` | Problem not in database | Search by alternate name |
| `PREMIUM_LOCKED` | LeetCode premium required | Use alternative problem |
| `INVALID_COMPANY` | Company not recognized | Check supported companies |
| `PROGRESS_LOAD_FAILED` | Cannot load progress file | Initialize new progress |
## Best Practices
1. **Quality over quantity** - Understand solutions deeply
2. **Pattern recognition** - Group problems by pattern
3. **Time yourself** - Practice under interview conditions
4. **Review regularly** - Spaced repetition helps retention
5. **Mock interviews** - Practice explaining solutions
6. **Company research** - Focus on company-specific patternsRelated Skills
interview-facilitation
Conduct semi-structured interviews and moderate focus groups with rapport building, probing techniques, and group dynamics management
oral-history-interview-technique
Conduct life history and testimonial interviews with appropriate prompting, active listening, and trauma-informed approaches
a3-problem-solver
A3 problem-solving and status reporting skill with structured thinking and coaching support
interview-questions
Generate competency-based and behavioral interview questions with legal compliance validation
leetcode-problem-fetcher
Fetch and parse LeetCode problems with metadata, constraints, examples, hints, difficulty ratings, and related problems. Integrates with LeetCode API for comprehensive problem data retrieval.
interview-simulator
Simulate realistic coding interview experience
requirements-interview
Interactive PM interview with expertise-adaptive questioning for requirements elicitation
process-builder
Scaffold new babysitter process definitions following SDK patterns, proper structure, and best practices. Guides the 3-phase workflow from research to implementation.
babysitter
Orchestrate via @babysitter. Use this skill when asked to babysit a run, orchestrate a process or whenever it is called explicitly. (babysit, babysitter, orchestrate, orchestrate a run, workflow, etc.)
yolo
Run Babysitter autonomously with minimal manual interruption.
user-install
Install the user-level Babysitter Codex setup.
team-install
Install the team-pinned Babysitter Codex workspace setup.