🧠 Computer Science and Engineering Roadmap and Checklist
Complete syllabus of Computer Science and Engineering (UG), structured as a practical checklist.
📚 Overview
Computer Science is divided into 4 parts:
- Computer Science 1 – Hardware & Engineering
- Computer Science 2 – Programming & Core CS
- Computer Science 3 – Daily / Systems CS
- Computer Science 4 – Real-World Applications
📘 Discrete Mathematics PDF is required for understanding graphs
📐 Mathematics Syllabus
☁️ Cloud computing basics are covered under Computer Networks
📑 Table of Contents
Computer Science 1
Computer Science 2
Computer Science 3
- Design and Analysis of Algorithms
- Operating Systems
- Computer Networks
- DBMS and SQL
- Software Engineering
Computer Science 4
Computer Science - 1
Digital Electronics
-
[ ] Boolean Algebra
- Number Systems
- Arithmetic Operations
- 1’s & 2’s Complement
- Karnaugh Maps
-
[ ] Hardware
- Logic Gates
- Flip-Flops & Latches
- Adder / Subtractor
- Encoder / Decoder
- Multiplexer / Demultiplexer
- Integrated Circuits
- Printed Circuit Boards
Computer Organization and Architecture
-
[ ] Computer Organization
- Address Bus, Data Bus
- ROM, EPROM, RAM
- Memory Hierarchy & Cache
- Virtual Memory
- Secondary Storage
- PLDs & Controllers
- Input / Output Devices
-
[ ] Computer Architecture
- Stack & Registers
- Endianness
- Floating Point Numbers
- Addressing Modes
- Pipelining
- Interrupts
- RISC vs CISC
- aarch64, x86 / AMD64, MIPS, RISC-V
- Assembly Language
Theory of Computation and Automata
- [ ] Automata and Languages
Computer Science - 2
Compiler Design
- [ ] Lexical Analysis
- [ ] Syntax Analysis
- [ ] Type Checking
- [ ] Intermediate Code Generation
- [ ] Optimization
- [ ] Code Generation
- [ ] Assembly & Linking
- [ ] Memory Management
- [ ] Interpreters
- [ ] Golang Specification
Programming
-
[ ] C
- Data Types & Type Conversion
- Operators & Precedence
- Functions & Scope
- Control Flow
- Arrays, Strings, Pointers
- Structs, Union, Enum
- Dynamic Memory
- File I/O
- math.h
-
[ ] C++
- Namespaces
- Classes & Objects
- Access Control
- Constructors & Destructors
- Inheritance & Polymorphism
- Templates
Data Structures
-
[ ] Arrays
-
[ ] Linked Lists
-
[ ] Skip Lists
-
[ ] Hash Tables
-
[ ] Stack, Queue, Set
-
[ ] Trees
- BST, AVL, Splay
- Red-Black Trees
- Segment Trees
- Tries
-
[ ] Graphs
- Adjacency Matrix
- Adjacency List
Algorithms
- [ ] Searching (Binary Search, Priority Queue)
- [ ] Sorting (Merge, Quick, Insertion, Selection)
- [ ] BFS / DFS
- [ ] Dijkstra
- [ ] Bellman-Ford
- [ ] Minimum Spanning Trees
- [ ] Time & Space Complexity
Artificial Intelligence
- [ ] Knowledge Representation
- [ ] First Order Logic
- [ ] State Space Search
- [ ] Hill Climbing
- [ ] Simulated Annealing
- [ ] A*
- [ ] Min-Max
- [ ] Bayes Theorem
- [ ] Neural Networks
- [ ] Gradient Descent
- [ ] CNNs
- [ ] Backpropagation
Computer Science - 3
DBMS and SQL
-
[ ] SQL
- DDL, DML, DQL, DCL, TCL
- Joins
- Subqueries
- Aggregate Functions
- Window Functions
-
[ ] DBMS
- ER Model
- Keys & Constraints
- Normal Forms
- Indexing
- Transactions
- ACID / BASE
- SQL Injection
- NoSQL
Operating Systems
- [ ] Boot Process
- [ ] Processes & Threads
- [ ] IPC
- [ ] Scheduling Algorithms
- [ ] Deadlocks & Synchronization
- [ ] Memory Management
- [ ] Virtual Memory
- [ ] File Systems
- [ ] OS Security
- [ ] Unix Commands
Computer Networks
- [ ] OSI & TCP/IP Layers
- [ ] Flow & Congestion Control
- [ ] Routing Algorithms
- [ ] UDP & Sockets
- [ ] IPv4 / IPv6
- [ ] BGP & OSPF
- [ ] HTTP, FTP, DNS, SMTP
- [ ] Cloud Computing Basics
Software Engineering
- [ ] SDLC Models
- [ ] Cost Estimation
- [ ] COCOMO
- [ ] Risk Management
- [ ] Requirements Engineering
- [ ] Design Principles
- [ ] Testing & QA
Computer Science - 4
Cryptography and Network Security
- [ ] Encryption Algorithms
- [ ] Hashing
- [ ] Key Distribution
- [ ] Digital Signatures
- [ ] Compression
- [ ] Firewalls
- [ ] Steganography
- [ ] SSL / TLS
Data Science and Machine Learning
- [ ] Bias & Variance
- [ ] Supervised Learning
- [ ] Unsupervised Learning
- [ ] k-NN
- [ ] Clustering
- [ ] Image Processing
Web Development
-
[ ] Frontend
- HTML5
- CSS3
- JavaScript
- Browser APIs
- Accessibility
-
[ ] Backend
- Go / Python
- Git Internals
- Message Queues
Computer Graphics
- [ ] OpenGL Basics
- [ ] Rendering
- [ ] Shading
- [ ] Texturing
- [ ] Ray Tracing
- [ ] Ray Casting
Projects
👉 https://github.com/apeman/awesome_computer_science/blob/master/what-should-i-code.md