Software Engineering learning paths
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Arnau Martin c75a8820e3 Add 3 new learning paths: Distributed Systems, Database Internals, Cloud Architecture
Coverage gap analysis identified 3 areas with insufficient depth:

- Distributed Systems (10 sections) — consensus (Paxos, Raft),
  vector clocks, CRDTs, consistency models, replication, partitioning,
  distributed transactions, failure detection, case studies
- Database Internals (10 sections) — B-trees, LSM trees, WAL/ARIES,
  buffer pool, MVCC implementation, query processing, lock management,
  index internals, storage engine architecture
- Cloud Architecture Patterns (10 sections) — 12-factor, multi-account
  strategy, landing zones, cloud migration (6 Rs), serverless patterns,
  multi-cloud, security architecture, cost architecture

Technical Writing was evaluated but skipped — already well covered
in soft-skills/11-technical-writing.md, software-architecture, and
observability paths.

Also updated:
- README.md — added all 3 paths to the learning paths table
- FUTURE_PATHS.md — added new paths to "beyond original plan" section
2026-08-27 11:04:52 +02:00
.github/workflows feat: add 10 new learning paths and expand 4 existing ones 2026-08-03 12:03:55 +02:00
archetypes First commit 2026-07-30 14:42:24 +02:00
assets First commit 2026-07-30 14:42:24 +02:00
content Add 3 new learning paths: Distributed Systems, Database Internals, Cloud Architecture 2026-08-27 11:04:52 +02:00
static First commit 2026-07-30 14:42:24 +02:00
.gitignore First commit 2026-07-30 14:42:24 +02:00
.hugo_build.lock First commit 2026-07-30 14:42:24 +02:00
.markdownlint.jsonc First commit 2026-07-30 14:42:24 +02:00
FUTURE_PATHS.md Add 3 new learning paths: Distributed Systems, Database Internals, Cloud Architecture 2026-08-27 11:04:52 +02:00
go.mod First commit 2026-07-30 14:42:24 +02:00
go.sum First commit 2026-07-30 14:42:24 +02:00
hugo.toml fix: correct live site URL to kyngo.github.io 2026-08-03 12:08:23 +02:00
README.md Add 3 new learning paths: Distributed Systems, Database Internals, Cloud Architecture 2026-08-27 11:04:52 +02:00

Software Engineering Learning Paths

A structured collection of learning paths covering fundamental and advanced software engineering topics. Built as a Hugo static site with the Book theme.

Live site: https://kyngo.github.io/learning-paths/

Purpose

This repository provides in-depth, technically rigorous learning material for software engineers at any level. The paths are designed to be:

  • Progressive — each topic builds from foundational concepts to advanced patterns
  • Practical — theory is paired with real-world examples and exercises
  • Clear — complex topics are explained as simply as the subject allows, without sacrificing technical accuracy

Learning Paths

Path Description
Programming Logic Algorithms, data structures, control flow, computational thinking
DSA Interview Prep Sliding window, two pointers, trees, heaps, backtracking, binary search
Databases & SQL Relational design, SQL mastery, indexing, transactions, NoSQL
Data Engineering ETL/ELT, data lakes, warehouses, Spark, Airflow, Kafka, dbt
Database Internals B-trees, LSM trees, WAL, MVCC, query planning, buffer pools, storage engines
System Design Scalability, load balancing, caching, distributed systems
Distributed Systems Consensus, replication, CRDTs, vector clocks, partitioning, distributed transactions
Software Architecture Design patterns, clean architecture, DDD, event-driven systems
APIs & Web Services REST, authentication, GraphQL, webhooks, rate limiting
Testing & Quality Unit/integration/e2e testing, TDD, property testing, performance
Operating Systems Processes, memory, file systems, I/O, concurrency, containers
Python Python language from basics to advanced patterns
Java Java ecosystem, OOP, concurrency, enterprise patterns
PHP PHP from basics to modern frameworks (Laravel, Symfony)
Go Goroutines, channels, interfaces, standard library, modules, patterns
Rust Ownership, borrowing, lifetimes, traits, async, systems programming
C / C++ Memory management, pointers, compilation, STL, modern C++, systems programming
JavaScript / TypeScript / Node.js Full JS ecosystem including types and server-side
Android (Kotlin + Jetpack Compose) Kotlin language, coroutines, Jetpack Compose UI, navigation, architecture
Swift and SwiftUI Apple development — Swift language and SwiftUI framework
Frontend Development CSS, browser APIs, responsive design, accessibility
Progressive Web Apps Service workers, offline-first, push notifications, Web APIs
Terraform Infrastructure as Code with Terraform
Amazon Web Services AWS cloud services and architecture
Cloud Architecture Patterns 12-factor, multi-account, migration strategies, serverless, multi-cloud, cost architecture
DevOps & CI/CD Pipelines, GitLab CI, GitHub Actions, GitOps, DORA metrics
Observability Metrics, logs, traces, Prometheus, Grafana, Datadog, SLOs, alerting
Kubernetes Pods, deployments, networking, Helm, security, operations
Scripting Shell scripting, automation, text processing
Tools Git, Docker, SSH, Apache, Nginx, package management
Git Advanced Internals, rebase, reflog, hooks, workflows at scale
Networking TCP/IP, DNS, HTTP, subnetting, network architecture
Mathematics for Engineers Number systems, algebra, discrete math, linear algebra, probability, statistics, calculus, information theory
Machine Learning Regression, classification, clustering, feature engineering, scikit-learn, MLOps
IT Fundamentals Operating systems, hardware, computer assembly, security basics
Cybersecurity Threat landscape, cryptography, OSINT, offensive/defensive security
Web Security OWASP Top 10, XSS, CSRF, OAuth 2.0, OIDC, transport security, API security
AI and Large Language Models Neural networks, transformers, LLMs, RAG, agents, MCP, prompt engineering
Soft Skills Communication, leadership, collaboration, career growth

Structure

Content lives under content/paths/. Each learning path has its own folder with an _index.md and numbered section files:

content/paths/
├── python/
│   ├── _index.md
│   ├── 01-basics.md
│   ├── 02-data-structures.md
│   └── ...
├── tools/
│   ├── _index.md
│   ├── 01-git.md
│   ├── 02-docker.md
│   └── ...
└── ...

Local Development

# Prerequisites: Hugo extended (v0.164.0+)
brew install hugo

# Run dev server
hugo server

# Build
hugo --gc --minify
IT Fundamentals → Programming Logic → Python → Scripting → Networking → AWS

Or for web development:

Programming Logic → JavaScript/TypeScript/Node.js → Frontend Development → Terraform → AWS

Deployment

Deployed automatically to GitHub Pages via GitHub Actions on push to master.