Mock Interviews and Practice
Solving problems alone isn't enough. You need to practice in interview conditions.
Why Mock Interviews Matter
The Performance Gap:
Solving alone: 80% success rate
Solving in interview: 40% success rate
What's different:
- Someone is watching
- You must explain your thinking
- Time pressure is real
- No pause button
- Communication matters
- Nerves affect performance
Solution: Practice in interview conditions regularly.
Types of Mock Interviews
1. Self-Administered (Weekly)
Setup:
1. Pick a problem you haven't seen
2. Set a 45-minute timer
3. No pausing, no hints
4. Code in a plain text editor (not IDE)
5. Talk out loud the entire time
6. Record yourself (optional but helpful)
After:
- Review the solution
- Grade yourself (1-4 scale)
- Note what went well/poorly
- Identify specific improvements
Example Setup:
# Mock Interview - Day 23
# Problem: Longest Palindromic Substring
# Start: 3:00 PM
# End: 3:45 PM
# [Solve problem here]
# Debrief:
# Score: 3/4 (Hire)
# Time: 38 minutes
# What went well: Identified pattern quickly, coded cleanly
# What to improve: Took too long to optimize
# Communication: Good - explained throughout
2. Peer Interviews (Bi-weekly)
Setup:
1. Find a study partner
2. Take turns being interviewer/candidate
3. 45 minutes per person
4. Give feedback after each
As Interviewer:
- Pick a problem they haven't seen
- Take notes on:
* Problem solving approach
* Code quality
* Communication
* Handling hints
- Give honest, constructive feedback
As Candidate:
- Treat it like a real interview
- Think out loud
- Ask questions
- Take feedback seriously
3. Platform Mock Interviews (Weekly)
Pramp (Free):
- Peer-to-peer mock interviews
- Automatically matched
- Both interview each other
- Pros: Free, realistic, feedback
- Cons: Peer quality varies
Interviewing.io ($$):
- Professional interviewers
- Anonymous (less pressure)
- Detailed feedback
- Pros: High quality, anonymous
- Cons: Expensive
LeetCode Mock Interview (Free):
- Simulated environment
- Random problem
- Timed
- Pros: Free, convenient
- Cons: No real interviewer
The Perfect Mock Interview
Pre-Interview (5 min)
Interviewer: "Hi! Ready to begin?"
Candidate: "Yes!"
Interviewer: "Great. I'll give you a problem. Feel free to ask
clarifying questions. Let me know when you have a
solution and we'll discuss. Ready?"
Candidate: "Ready!"
Problem Introduction (2 min)
Interviewer: Presents problem clearly
Candidate: Listens, takes notes
Clarification (3-5 min)
Good questions:
- Input constraints (size, range, type)
- Edge cases (empty, duplicates, negatives)
- Expected output format
- Can I modify input?
- Are there multiple solutions?
Solving (30-35 min)
Minute 0-5: Approach
Candidate: "Let me work through an example..."
"I'm thinking about a few approaches..."
"I'll start with X because Y..."
Minute 5-25: Implementation
Candidate: "I'll start by creating a hash map..."
"Now I'll iterate through the array..."
"Let me handle this edge case..."
Minute 25-30: Testing
Candidate: "Let me walk through my solution with an example..."
"I should check these edge cases..."
Minute 30-35: Optimization
Candidate: "This is O(n²). Could we optimize with..."
"The bottleneck is here..."
Wrap-up (5-10 min)
Interviewer: "How would you improve this?"
Candidate: Discusses time/space tradeoffs
Interviewer: "What about [edge case]?"
Candidate: Explains how code handles it
Interviewer: "Any questions for me?"
Candidate: Asks about team/role (practice!)
Interview Feedback Framework
What to Grade
Problem Solving (40%):
- Asked clarifying questions (0-10)
- Identified approach (0-10)
- Handled edge cases (0-10)
- Optimized solution (0-10)
Coding (30%):
- Clean, readable code (0-10)
- Correct implementation (0-10)
- Proper syntax (0-10)
Communication (20%):
- Explained thinking clearly (0-10)
- Responded to hints (0-10)
Verification (10%):
- Tested solution (0-10)
Total: __/100
Conversion:
- 85-100: Strong Hire (4/4)
- 70-84: Hire (3/4)
- 50-69: Maybe (2/4)
- < 50: No Hire (1/4)
Feedback Template
Strengths:
- [Specific thing done well]
- [Another strength]
Areas to Improve:
- [Specific issue with example]
- [Concrete suggestion]
Interview Score: X/4
Would hire: Yes/No/Maybe
Detailed Notes:
- Approach: [Comments]
- Implementation: [Comments]
- Communication: [Comments]
Common Mock Interview Mistakes
Mistake 1: Not Taking It Seriously
❌ "Hold on, let me check this real quick..."
❌ Pausing the timer
❌ Looking up syntax
❌ Taking breaks
✅ Treat it like a real interview
✅ No pauses, no lookups
✅ Work through discomfort
Mistake 2: Only Doing Happy Path
❌ Only testing the example given
❌ Skipping edge cases
❌ Not thinking about failure modes
✅ Test edge cases
✅ Consider invalid input
✅ Think about boundaries
Mistake 3: Silent Implementation
❌ *codes in silence for 20 minutes*
✅ "I'm creating a hash map to store..."
✅ "Now I'll handle the case where..."
✅ "Let me optimize this part..."
Mistake 4: Not Asking for Help
❌ Stuck for 15 minutes in silence
✅ "I'm stuck on X. Could I get a hint about Y?"
✅ "I've tried A and B. Any suggestions?"
Mistake 5: Ignoring Feedback
❌ "Yeah, yeah, I know"
❌ Making excuses
❌ Arguing with feedback
✅ "Good point, I didn't consider that"
✅ "How would you handle that case?"
✅ Taking notes on feedback
Practice Interview Schedule
Beginner (Weeks 1-4)
Week 1-2: None (learn fundamentals first)
Week 3: 1 self-administered mock
Week 4: 1 self-administered mock
Intermediate (Weeks 5-8)
Weekly: 1 self-administered mock
Bi-weekly: 1 peer mock
Advanced (Weeks 9-12)
Weekly: 1 self-administered mock
Weekly: 1 peer OR platform mock
Week 12: 3-4 company-style mocks
Simulating Different Interview Types
Phone Screen (45 min, 1 problem)
Setup:
- Use phone or video call
- Share screen with plain text editor
- Focus on one medium problem
- Expect to finish completely
Virtual Onsite (4-5 rounds)
Setup:
- Schedule 4-5 mocks back-to-back
- 45 minutes each
- Different problem types
- Short breaks between
- Practice endurance
Whiteboard Interview
Setup:
- Use actual whiteboard OR paper
- No syntax highlighting
- No running code
- Practice writing clearly
- Can't easily edit/refactor
Progress Tracking
Track your mock interview performance:
Mock Interview Log
Date: 2024-01-15
Platform: Self-administered
Problem: Longest Substring Without Repeating
Difficulty: Medium
Score: 2.5/4 (Borderline)
Time: 42 minutes
Notes: Struggled with window shrinking logic
Need more sliding window practice
Date: 2024-01-22
Platform: Pramp (peer)
Problem: Course Schedule
Difficulty: Medium
Score: 3/4 (Hire)
Time: 38 minutes
Notes: Good! Identified graph pattern quickly
Communication was clear
... continue tracking
Look for trends:
- Improving scores over time?
- Consistent weak areas?
- Time management getting better?
- Communication improving?
Mock Interview Debrief Checklist
After each mock, ask yourself:
Preparation:
- Did I ask enough clarifying questions?
- Did I work through examples?
- Did I consider edge cases?
Approach:
- Did I identify the pattern?
- Did I consider multiple approaches?
- Did I choose the right one?
Implementation:
- Was my code clean?
- Did I have bugs?
- Did I finish in time?
Communication:
- Did I explain my thinking?
- Was I clear?
- Did I respond well to feedback?
Optimization:
- Did I analyze complexity?
- Did I optimize when possible?
- Did I discuss tradeoffs?
Red Flags to Fix
If you consistently:
Score < 2/4:
- More fundamental practice needed
- Not ready for interviews yet
- Focus on easier problems
Run out of time:
- Practice with strict timers
- Do more speed drills
- Pick slightly easier problems
Blank mind at start:
- Need more pattern recognition
- Practice more problems
- Build pattern templates
Can't explain:
- Practice talking out loud
- Solve problems while explaining to wall
- Do more peer mocks
Poor code quality:
- Practice implementation
- Review clean code principles
- Code solutions after seeing them
Peer Mock Interview Script
Finding a Partner:
- LeetCode Discord
- Blind app
- Reddit r/cscareerquestions
- Bootcamp classmates
- Coworkers/friends
Session Structure:
6:00-6:45 PM: Person A interviews Person B
6:45-7:00 PM: Feedback session
7:00-7:45 PM: Person B interviews Person A
7:45-8:00 PM: Feedback session
Commitment:
- Meet weekly same time
- Alternate interviewer/interviewee
- Be honest with feedback
- Help each other improve
Key Takeaway
You can't prepare for interviews without simulating interview conditions. Mock interviews reveal gaps that solo practice can't: communication under pressure, time management with an audience, and handling unexpected questions. Schedule at least one mock per week, treat them seriously, and learn from every session. The difference between practice and mocks is the difference between knowing how to swim and swimming in the ocean.