🧠 I Burned Out Trying to Balance Leetcode, OOP, and System Design — Here’s What Finally Worked
Hey folks 👋,
If you’re preparing for technical interviews — especially for FAANG or top-tier tech companies — and struggling to balance Leetcode, OOP, and System Design, this post is for you.
Because I made a common mistake, and I want to help you avoid it.
⸻
🚧 My Problem: The “1–1–1 Leetcode Routine” Backfired
For a while, I followed this daily routine:
• 1 Leetcode problem from yesterday
• 1 problem from 7 days ago
• 1 new problem today
I thought I was doing great — reviewing, reinforcing, moving forward.
But in reality…
After finishing all 3 problems (plus writing logs and unit tests), I was mentally drained.
So what happened?
• ❌ I had no energy left for OOP
• ❌ I kept skipping System Design
• ❌ I felt stuck in a loop, working hard but not progressing holistically
⸻
🤯 My Realization: Order > Volume
After reflecting, I realized the problem wasn’t effort or motivation — it was the order of how I practiced.
I was doing Leetcode first — the most draining — and leaving the most important foundational skills (OOP and SD) for “later”… which never came.
⸻
✅ The Fix: OOP → System Design → Leetcode
💡 BUT ONLY AFTER YOU’VE DONE AT LEAST 30+ LEETCODE PROBLEMS.
This is important.
If you’re just starting, you need to build muscle with Leetcode first.
But once you’ve solved around 30–40 problems, your brain is ready for deeper concepts. That’s when you should flip the routine:
1. OOP – Understand class design, abstraction, inheritance with small exercises
2. System Design – Learn about scalability, caching, queues, load balancers, etc.
3. Leetcode – Now apply those mental models to problem-solving with better clarity
⸻
💡 Why This Order Works Better
Step Why it works
🧱 OOP first Your brain is fresh → easier to understand structure and relationships
🧠 System Design second You can think bigger picture — scale, communication, trade-offs
🧩 Leetcode last You’ve warmed up mentally → problems feel easier to dissect and solve
⸻
✅ My Daily Flow Now (Post-30+ Leetcode Problems)
• 1h of OOP
• 1h of System Design
• 1–5 Leetcode problems/day (review + only 1 new)
→ Feels lighter, more focused, and less stressful.
→ I get more clarity, not just more problems done.
⸻
🙌 Final Advice
• Don’t do 3 Leetcode problems a day too early — it’s draining.
• Get to 30+ problems first (build pattern recognition and brute-force instinct).
• Then switch to:
✅ OOP → ✅ System Design → ✅ Leetcode (1–5 problems/day – only 1 new)
⸻
🔖 TL;DR
“Do 30+ Leetcode problems first.
Then switch to OOP → System Design → Leetcode.
This reduces stress, builds depth, and sets you up to crush interviews.”
⸻
Hope this helps someone out there 🙏
If you’re in the same phase — struggling to fit it all in — drop a comment. I’d love to hear your journey too!
⸻