CSCS Study

96 topics · 4 subjects · ~250 interview answers

Everything you need for a CS fundamentals interview, in one place

Four guides built the same way. Every topic answers why it exists, what it costs you, and what you say when an interviewer asks — because the exam question and the interview question are rarely the same question.

The four subjects

How to use these

The same three steps work for all four subjects, and they are deliberately not "read the guide twice".

  1. Take one topic and find the problem it solves. Paging exists because programs need more address space than you have RAM. TCP's congestion control exists because the internet collapsed in 1986 when it didn't have any. Normalisation exists because duplicated facts drift apart. Learn the failure first and the mechanism stops being something to memorise.
  2. Explain it out loud, without notes. Every topic has a "Say this" box — a scripted answer at interview length. Read it once, then say your own version to an empty room. The gap between recognising an explanation and producing one under pressure is the entire interview.
  3. Answer the bank cold. Each subject ends with a question bank where the answer is collapsed. Answer before you open it. If your answer is missing the tradeoff or the failure case, that's the gap — not the definition.
One habit, all four subjects

After any mechanism you describe, finish with "…and the cost of that is ___." LRU costs you bookkeeping and dies on a scan. An index costs you write throughput. TCP costs you head-of-line blocking. Normalisation costs you joins. Interviewers are grading whether you know the price, because anyone can name the feature.

What to study first

If you have limited time, the subjects are not equally weighted for every role.

If you're interviewing for…Priority orderWhy
New grad / campus placementDBMS → OS → Networks → System DesignCore-subject rounds and written tests weight the classical three heavily; system design is usually light or absent.
Backend / SDE-1DBMS → System Design → OS → NetworksYou will be asked to write SQL and reason about indexes and transactions almost certainly.
Senior backendSystem Design → DBMS → Networks → OSThe design round dominates the decision; the others show up as depth probes inside it.
SRE / DevOps / platformOS → Networks → System Design → DBMSDebugging rounds are Linux and TCP. "The service is slow, here's a terminal" is the format.
Systems / embedded / kernelOS → Networks → DBMS → System DesignConcurrency, memory and scheduling get asked in real depth here.

Where the four subjects connect

These are not four separate syllabi. The same handful of ideas keeps reappearing under different names, and noticing that is what makes the fourth subject much faster to learn than the first.

IdeaIn OSIn NetworksIn DBMSIn System Design
Caching a slow layerTLB, page cache, CPU cachesDNS cache, browser & CDN cacheBuffer poolRedis, CDN
Locking & conflictMutexes, semaphores, deadlock2PL, MVCC, isolation levelsDistributed locks, fencing tokens
Write-ahead loggingJournaling file systemsWAL, ARIES recoveryKafka, event sourcing, outbox
Flow & overload controlScheduler queues, cgroupsTCP flow & congestion controlConnection pools, admission controlRate limiting, backpressure
Indexing for lookupPage tables, inode mapsRouting/forwarding tablesB+ trees, hash indexesInverted index, geospatial index
Retry & duplicate safetyInterrupted syscalls (EINTR)TCP retransmissionIdempotent statementsIdempotency keys, at-least-once
FragmentationInternal/external memory fragmentationIP fragmentation, MTUPage splits, table bloatHot shards, uneven partitions
Layered abstractionSyscall boundary, VFSOSI / TCP-IP stackThree-schema architectureService tiers, API contracts
Use this deliberately

When an interviewer asks something you half-know, reach for the analogue you know well. "A buffer pool is doing the same job as the OS page cache, with the database choosing eviction because it knows the access pattern better than the kernel does" is a genuinely strong answer — it shows you understand the mechanism, not just one instance of it.

The last week before an interview

Reading is the wrong activity in the final week. Retrieval is the right one.

DayDo this
−7Read the four cheat sheets end to end. Note every line that surprises you; those are your gaps.
−6Work the gaps only. Go to the topic page for each surprise, not the whole subject.
−5DBMS question bank, cold, out loud. Then write three SQL queries by hand on paper.
−4OS question bank cold. Then explain deadlock and virtual memory to someone non-technical.
−3Networks question bank cold. Then talk through "what happens when you type a URL" without stopping.
−2One full 45-minute design mock, timed, on paper, speaking the whole time.
−1Cheat sheets once more. Nothing new. Sleep — recall degrades faster from tiredness than from a missing topic.