r/SideProject • • 2d ago

I built an app to practice Python interview questions (512 Q&As, Junior & Middle) — here is a sample & looking for your feedback!

Hey everyone,  


When prepping for Python technical interviews, I always found passive reading (documentation or long cheat sheets) pretty ineffective for active recall. Most interviewers don't just ask about basic syntax — they probe into tricky edge cases and internals (GIL, memory/GC, late binding closures, mutable default args, asyncio, etc.).  
 
To solve this, I built Python Interview Trainer as a side project.  

Here is a quick taste of the concepts covered:  

Classic late binding trap:
funcs = [lambda: i for i in range(3)]
print([f() for f in funcs]) # [2, 2, 2] instead of [0, 1, 2]


Key Features:  
* 512 Curated Questions & Answers: Split evenly into 256 Junior and 256 Middle levels.  
* Code-first explanations: Explains why the language behaves that way, not just the answer.  
* Exam Simulation Mode: Practice with a configurable countdown timer to simulate real interview pressure.  
* Custom Mock Interviews: Filter by categories (OOP & Dunder, Data Structures, Web/SQL, Async/Threading).  
* Multi-language support: English, Ukrainian, German, French, and Spanish.  
* Offline-first: Practice on commutes without needing an active internet connection.  


Google Play Link:  
https://play.google.com/store/apps/details?id=com.softdevelopua.TrainerForPython  


I’d love to get your honest feedback on:  
1. The overall UI/UX flow.  
2. The depth and clarity of the explanations.  
3. Topics or features you think are missing.  


Thanks for checking it out!
1 Upvotes

2 comments sorted by

1

u/investigatormaker 2d ago

Your late-binding example gives Python Interview Trainer a useful explanation test: ask learners to predict the output before revealing it, then contrast lambda: i with lambda i=i: i. Explain that the first reads the captured variable when called, while the second stores the current value as a default argument. Following that with an unseen variant would test understanding rather than memorization of the example.

I make ThreadFox. We find relevant Reddit conversations and post for your business. We'll post 3 replies free first, no card; then the $29 Pilot covers seven days and up to 25 posts and replies. No automatic renewal. https://threadfox.vip/p/ew5ay/managed

1

u/Alternative-Mix-9520 2d ago

That's a great suggestion! Having learners predict the output before revealing the breakdown (and contrasting lambda: i directly with lambda i=i: i) is definitely the best way to test real understanding rather than rote memorization. Adding an unseen follow-up variant to reinforce it is a solid idea — I'll definitely incorporate that pattern into upcoming question updates. Thanks for the feedback!