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
-
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)
-
Curated Problem Lists
- Blind 75 (essential problems)
- NeetCode 150 (expanded essential list)
- LeetCode Top Interview Questions
- Company-specific top questions
- Pattern-specific problem sets
-
Progress Tracking
- Problems solved by category
- Weak area identification
- Time spent per problem type
- Success rate tracking
- Spaced repetition for review
-
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
# 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
# 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
# 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
{
"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
{
"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
{
"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:
# Access curated interview content
npm install -g interviewready-mcp-server
External Resources
- Tech Interview Handbook
- Coding Interview University
- FAANG Coding Interview Questions
- neerazz/FAANG
- Interviews (kdn251)
Integration with Processes
This skill enhances:
faang-interview-prep- Structured FAANG preparationmock-coding-interview- Problem selection for mocksinterview-problem-explanation- Explaining solutionsskill-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
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
- Quality over quantity - Understand solutions deeply
- Pattern recognition - Group problems by pattern
- Time yourself - Practice under interview conditions
- Review regularly - Spaced repetition helps retention
- Mock interviews - Practice explaining solutions
- Company research - Focus on company-specific patterns