โ๏ธSoftware Engineering
The craftsmanship of sustainable software systems: automated test pyramids, CI/CD verification pipelines, refactoring, and code review rigor.
Foundational Invariants & Core Principles:
Stage 1: Clean Code
Sequential learning progression covering core mechanics of clean code.
Unit Testing Pyramid
Unit Testing Pyramid is a foundational topic in Software Quality & Testing. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Test Doubles & Mocks
Test Doubles & Mocks is a foundational topic in Software Quality & Testing. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Property-Based Testing
Property-Based Testing is a foundational topic in Software Quality & Testing. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Consumer-Driven Contract Testing & Chaos Engineering
Consumer-Driven Contract Testing (e.g. Pact) allows downstream microservice consumers to define explicit API expectations (contracts) that upstream producers validate independently in CI pipelines, eliminating brittle end-to-end integration environments.
Consumer-Driven Contract Testing
Consumer-Driven Contract Testing is a foundational topic in Software Quality & Testing. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Stage 2: Automated Testing
Sequential learning progression covering core mechanics of automated testing.
Mutation Testing
Mutation Testing is a foundational topic in Software Quality & Testing. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
E2E Flake Reduction
E2E Flake Reduction is a foundational topic in Software Quality & Testing. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Load, Soak & Spike Testing
Load, Soak & Spike Testing is a foundational topic in Software Quality & Testing. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Chaos Engineering
Chaos Engineering is a foundational topic in System Architecture & Design. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Git Internals, DAGs & Continuous Feature Delivery
Git Internals, DAGs & Continuous Feature Delivery provides core foundational patterns in DevOps & Platform Engineering. Understand Git object hashes (Blobs, Trees, Commits), Golden Branch trunk models, and feature toggle flags.
Stage 3: CI/CD Delivery
Sequential learning progression covering core mechanics of ci/cd delivery.
Release Train Cadence
Release Train Cadence is a foundational topic in DevOps & Infrastructure. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
On-Call Escalation Policies
On-Call Escalation Policies is a foundational topic in DevOps & Infrastructure. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Supply Chain Security & SBOMs
Supply Chain Security & SBOMs is a foundational topic in Security & Identity. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Observability-Driven Testing
Observability-Driven Testing is a foundational topic in Software Quality & Testing. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Explore Other Domain Curriculums
Distributed Systems
High-availability replication, event loops, quorum consensus, and horizontal database sharding.
Software Architecture
Decoupled event streaming, microservice resilience, CQRS, and domain-driven design.
Design Patterns
GoF structural/behavioral patterns, circuit breakers, sagas, and transactional outbox patterns.
Algorithms & Data Structures
B-Trees vs LSM-Trees, graph traversal, consistent hashing rings, and asymptotic time-space trade-offs.
