A comprehensive, self-improving placement preparation resource for Software Engineering interviews — built as an mdBook with 3,000+ pages, 5,500+ Mermaid diagrams, and MathJax-powered equations.
# Clone
gh repo clone vanos001/placement_prep
cd placement_prep
# Build (requires mdBook 0.5.4 — the version CI uses)
mdbook build
mdbook serve --open # http://localhost:3000
# Validate before committing
./scripts/validate-all.sh .| Area | Topics |
|---|---|
| Data Structures & Algorithms | Sorting, graphs, trees, DP, greedy, advanced algorithms |
| System Design | Fundamentals, scalability, load balancing, caching, and 40+ case studies |
| Databases (DBMS) | SQL, indexing, transactions, query processing, storage engines, PostgreSQL |
| Distributed Systems | Consensus (Paxos, Raft), replication, partitioning, messaging (Kafka, Pulsar) |
| Operating Systems | Process scheduling, memory, file systems, synchronization, Linux kernel |
| Computer Networks | TCP/IP, HTTP/2/3, DNS, load balancing, network security |
| Computer Architecture | Pipelining, caches, memory hierarchy, parallelism, modern CPUs |
| Cloud & DevOps | AWS services, Kubernetes, Docker, Terraform, CI/CD, observability |
| Linux | Shell, kernel, containers, BPF, performance, security, embedded |
| Concurrency | Locks, lock-free, async/await, Go channels, Rust ownership |
| Security | Crypto, web security, auth, supply chain |
| Frontend | React, TypeScript, browser internals, CSS, accessibility |
| Career | Resume writing, behavioral interviews, salary negotiation |
| And more | Compilers, SRE, embedded systems, storage, Git, machine coding |
| Reference Libraries | 14 verified primary-source indexes — 1,257 entries, 2,744 de-duplicated URLs, each with education, video and conference tracks |
Full table of contents: src/SUMMARY.md
placement_prep/
├── book.toml # mdBook configuration
├── custom.css # Custom styling
├── mermaid-init.js # Mermaid v11 CDN loader
├── src/ # ← All content lives here
│ ├── SUMMARY.md # Navigation / table of contents
│ ├── introduction.md
│ ├── dsa/ # Data structures & algorithms
│ ├── system-design/ # System design topics
│ ├── dbms/ # Database management systems
│ ├── distributed/ # Distributed systems
│ ├── os/ # Operating systems
│ ├── networks/ # Computer networks
│ ├── arch/ # Computer architecture
│ ├── cloud/ # Cloud & DevOps
│ ├── linux/ # Linux deep-dive
│ ├── ... # 50+ topic directories
│ ├── references/ # 14 verified primary-source indexes (+ data/*.csv)
│ └── meta/ # Internal tracking pages
└── scripts/ # Validation & tooling
├── validate-all.sh # Full validation suite (STRICT=1 / EXTERNAL=1 modes)
├── validate-mermaid.mjs # Real Mermaid v11 parser
├── validate-mermaid-heuristic.mjs # Fast heuristic checks
├── check-links.py # Broken link finder (--external: probe URLs)
├── check-summary.py # SUMMARY completeness + duplicate detection
├── check-mathjax.py # MathJax validation
├── check-doi.py # Resolve every DOI via doi.org Handle API
└── USEFUL_COMMANDS.md # Workflow reference for humans & agents
| Metric | Count |
|---|---|
| Markdown pages | 3,105 content pages (+ SUMMARY.md) |
| Mermaid diagrams | 5,527 across 1,400+ files (100% pass the real mermaid@11 parser, not just the heuristic) |
| Topic directories | 61 |
| Math-enabled pages | 128 |
| Words | ~7.09M |
| Unique external URLs | 12,035 (de-duplicated across every page under src/) |
Validation runs locally, not in CI — CI is reserved for builds so hosted minutes stay available. Run the suite before committing:
./scripts/validate-all.sh .This runs seven checks: mdBook build, Markdown fence integrity, Mermaid
heuristic, Mermaid real parser, broken links + anchors, SUMMARY completeness, and
MathJax. Set EXTERNAL=1 to add DOI resolution and external-URL probing. See
scripts/README.md for details.
Scope of "0 broken links". The internal link/anchor check is green. For external URLs, a sweep of all 8,638 third-party links found 6,112 live and 630 dead (HTTP 404/410); the rest answered 403/429/challenge and are treated as unverifiable rather than dead. 399 dead links have been repaired across six passes — every replacement fetched and title-checked before it was written, or backed by a verified Wayback snapshot — which includes every kernel.org link (471/471 now live). Of what remains, 63 are intentional placeholders and 395 are genuine broken links, catalogued by host in
scripts/dead-links-report.txt; a further 116 URLs that 404 appear only inside fenced code blocks (code samples, XML namespace identifiers, shell templates) and are correct as written. Automated resolution has now been pushed to its limit — structural variants, host aliases, Crossref metadata matching and per-site sitemap harvesting were each measured and stopped producing trustworthy results. The remainder needs a human decision per link (re-point, substitute or drop). Re-probe withpython3 scripts/check-links.py --external src.
See CONTRIBUTING.md for guidelines on content creation, style conventions, and the PR process.
This project is for educational use. See individual pages for attribution of referenced sources.