Programming Fundamentals | Notion
Computer Organisation and Architecture
Assembly and Machine Code
Operating System
Basic Computer Networking
Basic Programming Concepts
Programming Paradigms
Data Structures and Algorithms
Memory Management in Programming Languages
Concurrency in Programming Language
C/C++
Haskell
Desigining Good Softwares
Testing
Clean code, Programming principles and Refactoring