Important Core Subject Concepts for Campus Placements
#networking
#operating-system
#fresher-interview
Apart from coding and aptitude, most companies evaluate your understanding of Computer Science fundamentals during campus placements. Interviewers usually expect candidates to explain concepts clearly, compare different approaches, and apply theoretical knowledge to practical scenarios.
Below are the most important subjects and topics you should prepare.
1. Operating Systems (OS)
Operating Systems is one of the most frequently asked subjects in interviews.
Process & Thread
- Process vs Thread
- User Thread vs Kernel Thread
- Context Switching
- Process States
- Thread Scheduling
- Multi-threading
CPU Scheduling
- FCFS
- SJF
- SRTF
- Round Robin
- Priority Scheduling
- Starvation
- Aging
Synchronization
- Critical Section Problem
- Mutex
- Semaphore
- Monitor
- Spin Lock
- Peterson's Algorithm
- Producer-Consumer Problem
- Readers-Writers Problem
- Dining Philosophers Problem
Deadlocks
- Necessary Conditions
- Resource Allocation Graph
- Deadlock Prevention
- Deadlock Avoidance (Banker's Algorithm)
- Detection and Recovery
Memory Management
- Paging
- Segmentation
- Virtual Memory
- Demand Paging
- Page Fault
- Thrashing
- TLB
- Fragmentation
- Page Replacement Algorithms (LRU, FIFO, Optimal)
Miscellaneous
- System Calls
- User Mode vs Kernel Mode
- Interrupts
- DMA
- Cache Memory
- Boot Process
2. Database Management System (DBMS)
SQL
- SELECT
- GROUP BY
- HAVING
- ORDER BY
- LIMIT
- DISTINCT
Joins
- Inner Join
- Left Join
- Right Join
- Full Join
- Self Join
- Cross Join
Keys
- Primary Key
- Foreign Key
- Candidate Key
- Alternate Key
- Composite Key
- Super Key
Normalization
- 1NF
- 2NF
- 3NF
- BCNF
- Denormalization
Transactions
- ACID Properties
- Isolation Levels
- Dirty Read
- Non-repeatable Read
- Phantom Read
Indexing
- Clustered Index
- Non-clustered Index
- Composite Index
- Covering Index
Miscellaneous
- Views
- Stored Procedures
- Triggers
- Constraints
- Aggregate Functions
3. Computer Networks (CN)
Network Models
- OSI Model
- TCP/IP Model
Protocols
- TCP
- UDP
- HTTP
- HTTPS
- FTP
- SMTP
- DNS
- DHCP
TCP Concepts
- Three-way Handshake
- Four-way Connection Termination
- Flow Control
- Congestion Control
- Sliding Window
IP Addressing
- IPv4
- IPv6
- Subnetting
- CIDR
- NAT
Routing
- Router vs Switch
- Hub vs Switch
- Bridge
- Gateway
- ARP
- ICMP
Security
- SSL/TLS
- Firewalls
- VPN
- HTTPS Certificates
4. Object-Oriented Programming (OOP)
Four Pillars
- Encapsulation
- Abstraction
- Inheritance
- Polymorphism
Concepts
- Method Overloading
- Method Overriding
- Constructor
- Interface
- Abstract Class
- Static Keyword
- Final Keyword
- Access Modifiers
Relationships
- Association
- Aggregation
- Composition
- Dependency
Design Principles
- SOLID Principles
- DRY
- KISS
- YAGNI
5. Data Structures
- Arrays
- Strings
- Linked Lists
- Stack
- Queue
- Deque
- HashMap
- HashSet
- Heap
- Priority Queue
- Binary Search Tree
- Trie
- Segment Tree
- Fenwick Tree
- Graph
- Union Find (DSU)
Know:
- Time Complexity
- Space Complexity
- Use Cases
- Advantages
- Limitations
6. Algorithms
- Binary Search
- Sorting Algorithms
- Greedy
- Dynamic Programming
- Graph Algorithms
- BFS
- DFS
- Dijkstra
- Floyd Warshall
- Bellman Ford
- Topological Sort
- MST (Prim & Kruskal)
- Sliding Window
- Two Pointers
- Prefix Sum
- Backtracking
- Bit Manipulation
7. Object-Oriented Design Basics
- Design Patterns (Singleton, Factory, Observer)
- UML Basics
- Low-Level Design Fundamentals
- Class Design
- API Design
- Dependency Injection
8. Software Engineering
- SDLC
- Agile
- Scrum
- Git
- CI/CD Basics
- Unit Testing
- Integration Testing
- Regression Testing
- Code Review
9. Java (If Applying for Java Roles)
- Collections Framework
- Comparable vs Comparator
- HashMap Internal Working
- ConcurrentHashMap
- String Pool
- JVM
- JDK vs JRE vs JVM
- Garbage Collection
- Exception Handling
- Multithreading
- Executors Framework
- Synchronization
10. C++ (If Applying for C++ Roles)
- STL
- Vector
- Map
- Set
- Priority Queue
- Smart Pointers
- Virtual Functions
- Templates
- Memory Management
11. Python (If Applying for Python Roles)
- List vs Tuple
- Dictionary
- Set
- Decorators
- Generators
- Iterators
- Lambda Functions
- GIL
- Multithreading vs Multiprocessing
Frequently Asked Interview Questions
- What is the difference between a process and a thread?
- Explain how virtual memory works.
- What is the difference between TCP and UDP?
- How does DNS resolve a domain name?
- Explain the ACID properties.
- What are database indexes and why are they useful?
- What is normalization? Why is BCNF required?
- Difference between INNER JOIN and LEFT JOIN.
- Explain polymorphism with an example.
- What is the difference between an interface and an abstract class?
- How does HashMap work internally?
- Explain deadlock and ways to prevent it.
- What happens when you type a URL into a browser?
- What is a race condition?
- Explain the Producer-Consumer problem.
- What is the difference between HTTP and HTTPS?
Preparation Strategy
A good preparation plan for campus placements is:
- Data Structures & Algorithms: 50%
- Operating Systems: 15%
- DBMS: 15%
- Computer Networks: 10%
- OOP: 5%
- Software Engineering, Git, and SDLC: 5%
This combination covers the majority of technical interviews conducted by companies such as Microsoft, Google, Amazon, Adobe, Walmart, Atlassian, Oracle, Cisco, ServiceNow, Qualcomm, Arcesium, Goldman Sachs, JPMorgan Chase, and many product-based startups.
