Skip to content

About

Curated, interview-ready Computer Science fundamentals and practical problems for software engineering interviews.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

23 Commits

Folders and files

Repository files navigation

TopDown CS Hero Banner

Live Website 155+ Curated Questions Core Tracks PRs Welcome

🌐 Live Website   •   📚 Curriculum   •   🎯 Methodology   •   🛠️ Setup   •   🤝 Contributing


CURATED QUESTIONS
155+
Interview Problems
CORE DISCIPLINES
4 + 1
OS • DBMS • CN • OOP
PEDAGOGICAL MODEL
3-Layer
Intuitive → Deep → Summary
ACCESS
100% Free
Open Source Resource

🎯 The TopDown Methodology

Most interview preparation materials either jump straight into low-level code without context or recite rote textbook definitions. TopDown CS structures every question around three layers designed for deep technical comprehension and rapid recall:

💡 1. Intuitive Mental Model

Real-world engineering analogies and physical intuitions that deconstruct abstract low-level mechanisms before touching syntax or theory.

🔬 2. Technical Deep Dive

Architectural diagrams, OS kernel internals, memory layouts, bytecode inspections, concurrency execution traces, and failure modes.

🎯 3. Interview-Ready Summary

Crisp, high-signal verbal takeaways calibrated specifically for what engineering hiring managers and bar-raisers actively listen for.

Tip

Recommended Study Flow: Start with Essentials in each track to build your core architectural foundation, advance to Additional for deep-dive system nuances, and tackle Problems to master numerical calculations and formal proofs.


📚 Curriculum & Question Bank

The repository contains 155+ curated questions organized by subject and module tier:

💻 Operating Systems

43 Curated Questions • 3 Modules

Module Questions Difficulty Core Topics Covered Explore
OS Essentials 20 🟢 9 Easy  •  🟡 11 Med Processes, threads, CPU scheduling, virtual memory, paging, deadlocks, IPC Explore →
OS Additional 15 🟡 8 Med  •  🔴 7 Hard Priority inversion, spinlocks, TLB flushing, kernel threads, POSIX signals Explore →
OS Problems 8 🟡 7 Med  •  🔴 1 Hard Scheduling Gantt charts, Banker's algorithm, Bélády's anomaly proofs Explore →

🗄️ Database Management Systems

33 Curated Questions • 2 Modules

Module Questions Difficulty Core Topics Covered Explore
DBMS Essentials 15 🟢 7 Easy  •  🟡 8 Med ACID guarantees, WAL protocols, B+ Trees, transaction states, SQL order, indexing Explore →
DBMS Additional 18 🟢 1 Easy  •  🟡 14 Med  •  🔴 3 Hard BCNF vs. 3NF normalization, OLTP vs. OLAP, ER schema translation, query planning Explore →

🌐 Computer Networks

26 Curated Questions • 3 Modules

Module Questions Difficulty Core Topics Covered Explore
CN Essentials 10 🟢 5 Easy  •  🟡 4 Med  •  🔴 1 Hard OSI vs. TCP/IP, TCP 3-way handshake & teardown, flow control, DNS, HTTP/2/3 Explore →
CN Additional 6 🟢 1 Easy  •  🟡 4 Med  •  🔴 1 Hard Cookie sessions vs. JWTs, WebSockets scaling, CORS preflight, TLS 1.3 handshake Explore →
CN Problems 10 🟢 1 Easy  •  🟡 6 Med  •  🔴 3 Hard Subnetting, VLSM design, CRC-32 division, Hamming codes, framing efficiency Explore →

☕ OOP, Code Tracing & Design Patterns

53 Curated Questions • 4 Modules

Module Questions Difficulty Core Topics Covered Explore
OOP Essentials 22 🟢 7 Easy  •  🟡 11 Med  •  🔴 4 Hard Core pillars, SOLID principles, HashMap internals, memory models, immutability Explore →
OOP Additional 17 🟢 3 Easy  •  🟡 11 Med  •  🔴 3 Hard Static vs. dynamic binding, method hiding, covariant returns, generics, reflection Explore →
Code Tracing 8 🟡 4 Med  •  🔴 4 Hard Step-by-step traces: class initialization, MRO linearization, variable shadowing Explore →
Design Patterns 6 🟡 5 Med  •  🔴 1 Hard Idiomatic implementations: Singleton, Factory, Strategy, Builder, Decorator, Observer Explore →

📐 Database Design

8 High-Scale Schema Designs

Module Questions Difficulty Core Topics Covered Explore
Database Design 8 🟡 8 Med High-scale schemas: Wallets, Splitwise, Swiggy/Zomato, Uber/Ola, Zerodha, Amazon Explore →

🛠️ Local Development

TopDown CS is built with Docusaurus 3, React, and KaTeX. You can run the entire site locally:

# 1. Clone the repository
git clone https://github.com/jaicharan-dev/topdown-cs.git
cd topdown-cs/site

# 2. Install dependencies
npm install

# 3. Start local development server
npm start

The documentation server will launch at http://localhost:3000.

To test the production build locally:

npm run build
npm run serve

🤝 Contributing

Contributions, errata corrections, and question suggestions are welcome!

  • 🐛 Report Errata: Found a typo or inaccurate technical detail? Please open an issue.
  • 💡 Suggest Questions: Have a question that frequently appears in technical rounds? Open an issue with the proposed topic.
  • 🚀 Submit Improvements: Fork the repo, create a branch (git checkout -b feature/topic-improvement), and submit a Pull Request following our 3-step question structure.

⭐ If you find TopDown CS helpful for your interview preparation, consider starring the repo!

About

Curated, interview-ready Computer Science fundamentals and practical problems for software engineering interviews.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages