interview-problem-bank
npx machina-cli add skill a5c-ai/babysitter/interview-problem-bank --openclawinterview-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 |
|---|---|---|
| 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
Source
git clone https://github.com/a5c-ai/babysitter/blob/main/plugins/babysitter/skills/babysit/process/specializations/algorithms-optimization/skills/interview-problem-bank/SKILL.mdView on GitHub Overview
The interview-problem-bank curates, organizes, and recommends coding interview problems with company, pattern, and difficulty in mind. It includes curated lists like Blind 75 and NeetCode 150, plus progress tracking, weak area identification, and premium problem alternatives to support FAANG interview prep.
How This Skill Works
Problems are organized by company, pattern, difficulty, topic, and frequency. It provides curated lists (Blind 75, NeetCode 150, LeetCode Top Interview Questions) and company-specific top questions, along with progress tracking, weak area identification, and tailored recommendations for next problems and time-based study schedules.
When to Use It
- When building a company-specific prep plan (e.g., Google, Meta, Amazon) to target top questions and patterns
- When practicing by pattern (Two Pointers, Sliding Window, DP, etc.) using pattern-based problem sets
- When tracking progress and identifying weak areas to adjust study focus
- When creating time-based study schedules to optimize FAANG readiness
- When exploring premium problem alternatives to strengthen coverage for FAANG interviews
Quick Start
- Step 1: Explore problem bank by company, pattern, and difficulty to understand coverage
- Step 2: Run the recommender to fetch the next best problem based on your progress
- Step 3: Solve the problem, record outcome, and review weak areas with spaced repetition
Best Practices
- Start with Blind 75 to establish core coverage across patterns and topics
- Regularly log solved problems to update progress, time spent, and success rate
- Use weak-area analytics to prioritize problems that target gaps
- Align company-specific practice plans with top questions and patterns observed in interviews
- Incorporate spaced repetition for review and refresh of previously solved problems
Example Use Cases
- Preparing for Google interviews by focusing on DP, Graphs, and Arrays using company-focused lists
- Tracking time spent per problem type to optimize daily FAANG study sessions
- Building an Amazon prep plan around OOP and System Design with Trees and BFS/DFS patterns
- Using premium problem alternatives to fill coverage gaps in high-frequency topics
- Fetching next recommended problem and logging results to drive an adaptive study schedule