LogoSoftware Engineering Learning Paths

      • Computer Architecture
      • Operating Systems
      • File Systems
      • Linux Basics
      • Virtualization and Containers
      • Security Fundamentals
      • Authentication and Authorization
      • Version Control: Git Concepts
      • Software Development Lifecycle
      • Hardware
      • Assembling a Computer
      • Linux Administration
      • Numbers & Arithmetic
      • Algebra
      • Functions & Graphs
      • Discrete Mathematics
      • Logic & Proofs
      • Graph Theory
      • Linear Algebra
      • Probability
      • Statistics
      • Calculus Essentials
      • Information Theory
      • Mathematics in Practice
      • OSI and TCP/IP Models
      • Physical and Data Link Layers
      • IP Addressing
      • Routing
      • Transport Layer: TCP vs UDP
      • DNS (Domain Name System)
      • HTTP/HTTPS
      • Network Security
      • Load Balancing and Reverse Proxies
      • Troubleshooting Tools
      • Cloud Networking
      • Subnetting
      • Processes & Threads
      • CPU Scheduling
      • Memory Management
      • Virtual Memory
      • File Systems
      • I/O Systems
      • Concurrency Primitives
      • Containers from the OS Perspective
      • Variables, Data Types, and Memory
      • Control Flow
      • Functions, Scope, and Recursion
      • Data Structures
      • Algorithms
      • Big-O Notation and Complexity Analysis
      • Computational Thinking and Problem Decomposition
      • Recursion Deep Dive
      • Graph Algorithms
      • Dynamic Programming
      • Complexity Analysis In Depth
      • Shell Basics
      • Variables, Quoting, and Expansion
      • Control Structures
      • Functions
      • Text Processing
      • Pipes, Redirection, and Process Substitution
      • File Operations and Permissions
      • Regular Expressions
      • Process Management
      • Script Debugging and Error Handling
      • Cron, Systemd Timers, and Automation
      • Portable Scripting and POSIX Compliance
      • Arrays & Strings
      • Hashmaps & Sets
      • Linked Lists
      • Stacks & Queues
      • Trees
      • Heaps & Priority Queues
      • Backtracking
      • Binary Search — Advanced Patterns
      • Graphs
      • Dynamic Programming
      • Tries & Advanced Structures
      • Relational Database Fundamentals
      • SQL Basics
      • Joins and Subqueries
      • Aggregations and Grouping
      • Data Definition and Constraints
      • Normalization and Schema Design
      • Indexing and Query Optimization
      • Transactions and Concurrency
      • NoSQL Concepts
      • Database Administration
      • Practical Patterns
      • Data Engineering Fundamentals
      • Data Modelling for Analytics
      • SQL for Data Engineering
      • ETL & ELT Pipelines
      • Apache Spark
      • Workflow Orchestration
      • Streaming & Real-Time Data
      • Data Lakes & Lakehouses
      • Data Warehouses
      • dbt (Data Build Tool)
      • Data Quality & Governance
      • Cloud Data Platforms
      • Introduction to Machine Learning
      • Data Preparation
      • Linear Models
      • Decision Trees & Ensembles
      • Support Vector Machines
      • Unsupervised Learning
      • Model Evaluation
      • Hyperparameter Tuning
      • Feature Selection & Engineering
      • Time Series
      • ML Pipelines & scikit-learn
      • MLOps & Deployment
      • Storage Fundamentals
      • B-Trees & B+Trees
      • LSM Trees & Log-Structured Storage
      • Write-Ahead Logging
      • Buffer Pool Management
      • MVCC Implementation
      • Query Processing
      • Lock Management
      • Index Internals
      • Storage Engine Architecture
      • Python: Syntax, Types, and the Interpreter
      • Python: Control Flow, Functions, and Modules
      • Python: Object-Oriented Programming
      • Python: The Standard Library
      • Python: Error Handling and Exceptions
      • Python: Decorators, Generators, and Context Managers
      • Python: Type Hints and Static Analysis
      • Python: Concurrency and Parallelism
      • Python: Packaging and Distribution
      • Python: Testing
      • Web Frameworks
      • Fundamentals
      • Networking & Protocols
      • Load Balancing
      • Caching
      • Databases at Scale
      • Message Queues & Event-Driven Architecture
      • Microservices Architecture
      • Storage & Content Delivery Networks
      • Reliability & Resilience
      • Observability
      • Security Architecture
      • Search & Analytics
      • Distributed Systems Fundamentals
      • Time & Ordering
      • Consistency Models
      • Consensus Algorithms
      • Replication
      • Partitioning & Sharding
      • Distributed Transactions
      • CRDTs & Eventual Consistency
      • Failure Detection & Recovery
      • Case Studies
      • Architecture Fundamentals
      • Design Patterns
      • Clean Architecture
      • Domain-Driven Design
      • Event-Driven Architecture
      • Monolith to Microservices
      • Architectural Patterns
      • Architecture Decisions
      • REST Principles
      • API Design
      • Authentication & Authorization
      • OpenAPI & Documentation
      • Versioning & Evolution
      • Rate Limiting & Throttling
      • GraphQL
      • Webhooks & Async APIs
      • gRPC & Binary Protocols
      • Testing Philosophy
      • Unit Testing
      • Mocking & Test Doubles
      • Integration Testing
      • End-to-End Testing
      • TDD & BDD
      • Property Testing & Fuzzing
      • Performance Testing
      • Contract Testing
      • JavaScript Fundamentals
      • Prototypes and `this`
      • ES6+ Features
      • Asynchronous JavaScript
      • TypeScript: The Type System
      • Node.js Runtime and Architecture
      • npm Ecosystem and Package Management
      • Error Handling Patterns
      • Testing in JavaScript/TypeScript
      • Module Resolution and Build Systems
      • Vue Ecosystem: Vue 3, Vite, and Nuxt
      • React Ecosystem: React and Next.js
      • Syntax, Types, and the Runtime
      • Control Flow and Functions
      • Arrays and Strings
      • Object-Oriented PHP
      • Error Handling and Exceptions
      • The Type System (PHP 8.x)
      • Namespaces, Autoloading, and Composer
      • Working with Databases (PDO)
      • HTTP, Sessions, and the Request Lifecycle
      • Testing with PHPUnit
      • Modern PHP Patterns and Architecture
      • Frameworks: Laravel and Symfony
      • Performance, OpCache, and Deployment
      • Security
      • Go Fundamentals
      • Types & Variables
      • Control Flow
      • Functions
      • Structs & Methods
      • Interfaces
      • Concurrency
      • Error Handling
      • Generics
      • Standard Library
      • Modules & Tooling
      • Patterns & Idioms
      • Getting Started
      • Types & Variables
      • Ownership & Borrowing
      • Structs & Enums
      • Error Handling
      • Collections & Iterators
      • Traits & Generics
      • Lifetimes
      • Concurrency
      • Smart Pointers & Memory
      • Modules & Cargo
      • Patterns & Ecosystem
      • C Fundamentals
      • Pointers & Memory
      • Strings & Arrays
      • Structs & Unions
      • The Preprocessor & Compilation
      • File I/O & System Calls
      • C++ Core
      • C++ Object-Oriented
      • Templates & STL
      • Modern C++
      • Concurrency
      • Build Systems & Tooling
      • Java: JVM Architecture
      • Java: Syntax, Types, and Operators
      • Java: Object-Oriented Programming
      • Java: Generics and Type Erasure
      • Java: Collections Framework
      • Java: Exception Handling
      • Java: Concurrency
      • Java: Streams and Functional Programming
      • Java: Memory Management and Garbage Collection
      • Java: Build Tools
      • Java: Testing
      • Java: Enterprise Patterns — Spring Basics
      • Modern Java
      • DevOps Principles
      • CI Fundamentals
      • CD & Deployment Strategies
      • GitLab CI
      • GitHub Actions
      • Artifact Management
      • Infrastructure Automation
      • Observability in CI/CD
      • Introduction to Observability
      • Metrics
      • Logging
      • Distributed Tracing
      • Instrumentation
      • Dashboards & Visualisation
      • Alerting
      • Observability Platforms
      • Observability in Practice
      • Advanced Topics
      • Git
      • Docker and Docker Compose
      • SSH
      • Apache HTTP Server
      • Nginx
      • Package Management
      • Containers in Production
      • Git Internals
      • Rebase Workflows
      • Reflog & Recovery
      • Advanced Branching
      • Submodules & Subtrees
      • Hooks & Automation
      • Collaboration at Scale
      • Troubleshooting
      • Core Concepts
      • Workloads
      • Networking
      • Storage
      • Configuration & Scaling
      • Helm & Packaging
      • Security
      • Operations
      • Swift Fundamentals
      • Functions and Closures
      • Collections and Enumerations
      • Structs and Classes
      • Protocols and Generics
      • Error Handling and Concurrency
      • SwiftUI Fundamentals
      • SwiftUI State Management
      • SwiftUI Navigation
      • SwiftUI Lists and Data
      • Animations and Gestures
      • App Architecture
      • Kotlin Fundamentals
      • Functions and Lambdas
      • Collections and Sequences
      • Object-Oriented Kotlin
      • Coroutines and Concurrency
      • Kotlin Patterns and Ecosystem
      • Jetpack Compose Fundamentals
      • Compose State Management
      • Compose Navigation
      • Lists and Data Loading
      • Animations and Gestures
      • App Architecture
      • HTML Semantics and Accessibility
      • CSS Fundamentals
      • Layout: Flexbox and Grid
      • Responsive Design
      • CSS Architecture
      • Browser Rendering Pipeline
      • Web Performance
      • Web APIs
      • State Management Patterns
      • Build Tooling
      • Accessibility in Depth
      • PWA Fundamentals
      • Service Workers
      • Caching Strategies
      • Offline-First Architecture
      • Push Notifications
      • Advanced Web APIs
      • Performance & Loading
      • Testing & Deployment
      • AWS Global Infrastructure
      • IAM (Identity and Access Management)
      • Compute
      • Storage
      • Databases
      • Networking: VPC
      • Load Balancing
      • DNS: Route 53
      • Messaging
      • Monitoring
      • Containers: ECS, ECR, EKS
      • Serverless Patterns
      • Well-Architected Framework
      • Security Services
      • Cost Management
      • Cloud Computing Fundamentals
      • Multi-Account & Organisation Strategy
      • Networking Architecture
      • Compute Patterns
      • Data Architecture Patterns
      • Cloud Migration Strategies
      • Serverless Architecture
      • Multi-Cloud & Hybrid Patterns
      • Security Architecture
      • Cost Architecture
      • Infrastructure as Code Concepts
      • HCL Syntax
      • Providers, Resources, and Data Sources
      • State
      • Variables, Outputs, and Locals
      • Modules
      • Lifecycle Rules and Dependencies
      • Workspaces and Environment Management
      • Provisioners
      • Import, State Manipulation, and Refactoring
      • CI/CD Integration
      • Best Practices
      • Testing & Validation
      • Threat Landscape & Attacker Mindset
      • Cryptography
      • Network Security
      • Web Application Security
      • Identity & Access Management
      • Operating System Security
      • Cloud Security
      • Vulnerability Management
      • Security Operations & Incident Response
      • Secure Software Development
      • Compliance & Governance
      • Offensive Security
      • OSINT (Open Source Intelligence)
      • Web Security Fundamentals
      • Injection Attacks
      • Cross-Site Scripting (XSS)
      • Authentication
      • Authorisation
      • OAuth 2.0 & OpenID Connect
      • CSRF & Other Attacks
      • Transport Security
      • API Security
      • Security Testing & Operations
      • Neural Networks and Deep Learning
      • The Transformer Architecture
      • Language Models
      • Training and Fine-Tuning Language Models
      • Prompt Engineering
      • Retrieval-Augmented Generation (RAG)
      • Agents and Tool Use
      • Inference and Deployment
      • Evaluation, Safety, and Alignment
      • Multimodal Models
      • Building LLM Applications
      • AI-Assisted Development
      • Using AI Effectively
      • Agents, Skills, Steering, and System Prompts
      • MCP (Model Context Protocol)
      • ACP (Agent Communication Protocol)
      • Communication
      • Giving & Receiving Feedback
      • Collaboration & Teamwork
      • Time Management
      • Leadership
      • Problem Solving
      • Meetings
      • Negotiation & Influence
      • Career Growth
      • Emotional Intelligence
      • Technical Writing
      • Feedback in Engineering Culture
      • Meeting Design and Async Collaboration
      • Mentoring and Teaching
      • Interviewing

    Tools

    • Sections

    Tools#

    Essential tools every developer and systems administrator needs to master. From version control and containerization to web servers and package management.

    Sections#

    1. Git
    2. Docker and Docker Compose
    3. SSH
    4. Apache
    5. Nginx
    6. Package Management
    7. Containers in Production
    Backward Advanced Topics Git Forward
    • Sections