CURRICULUM LOW LEVEL MASTERY
*Goal: Move from syntax to a visceral understanding of pointers, memory layout, and the toolchain.*
Low-Level Engineering Curriculum: From Zero to Systems Architect
Philosophy: This curriculum is designed to transform you from a user of software into a builder of systems. It moves from the microscopic (bits, pointers, memory) to the macroscopic (kernels, distributed systems, compilers), using a project-based approach where you build real infrastructure from scratch in C.
๐ Phase 1: Language & Memory Fundamentals
Goal: Move from syntax to a visceral understanding of pointers, memory layout, and the toolchain.
LEARN_C_MODERN_APPROACH_KING.md- Focus: Standard C Syntax and logic.
SPRINT_1_REAL_WORLD_PROJECTS.md- Key Projects: Memory Inspector (Visualizing Stack/Heap), Safe String Library, Memory Leak Detector.
CSAPP_3E_DEEP_LEARNING_PROJECTS.md(Foundation)- Project 1: Hello Toolchain: Build a Pipeline Explorer to see every stage from
.cto executable. - Project 2: Bitwise Inspector: Seeing how the machine represents types at the byte level.
- Project 1: Hello Toolchain: Build a Pipeline Explorer to see every stage from
๐๏ธ Phase 2: Data Structures, Safety & Invariants
Goal: Internalize the โcontractsโ of systems programming. Ownership, alignment, and robust data management.
DATA_STRUCTURES_FROM_FIRST_PRINCIPLES.md- Key Projects: Memory Arena (Bump Allocator), Dynamic Array, Hash Table from scratch.
SPRINT_2_DATA_AND_INVARIANTS_PROJECTS.md- Focus: Ownership and Memory Layout.
- Key Projects: Gap Buffer (Text Editor core), Arena Allocator, JSON Parser with explicit ownership.
LEARN_ALGORITHMS_DEEP_DIVE.md- Key Projects: Sorting Visualizer, Binary Search Toolkit, Recursion/Call Stack Visualizer.
โ๏ธ Phase 3: Control Flow, State & Systems Integration
Goal: Build software that survives the real world. Handling signals, file descriptors, and complex state.
SPRINT_3_CONTROL_FLOW_STATE_PROJECTS.md- Key Projects: Modal Text Editor (State Machine), HTTP Parser, Connection Pool.
SPRINT_4_5_REAL_WORLD_PROJECTS.md- Focus: Performance contracts. Caches, Ring Buffers, and B-Trees.
SPRINT_5_SYSTEMS_INTEGRATION_PROJECTS.md- Focus: Production reality.
- Key Projects: Log Tailer (Rotation handling), Process Supervisor, HTTP Connection Pool (Resilience).
CONCURRENCY_THREADS_SEMAPHORES_PROJECTS.md- Focus: Core concurrency primitives. Understanding race conditions and synchronization from scratch.
๐ป Phase 4: Machine Mastery (The CS:APP Path)
Goal: The deep hardware-software interface. Reverse engineering and OS abstractions.
CSAPP_3E_DEEP_LEARNING_PROJECTS.md(The Gauntlet)- Project 3: Bomb Lab: Binary reverse engineering.
- Project 4: Attack Lab: Mastering overflows and ROP chains.
- Project 5: Arch Lab: Building a CPU simulator (Y86).
- Project 6: Cache Lab: Squeezing performance from the hierarchy.
- Project 7: Shell Lab: Building a job-control shell.
- Project 8: Malloc Lab: Writing a production-grade allocator.
LEARN_DISASSEMBLY_FROM_SCRATCH.md- Project: Build an x86-64 Disassembler in C.
ADVANCED_UNIX_PROGRAMMING_DEEP_DIVE.md- Focus: Advanced IPC, signals, and daemon engineering.
๐ Phase 5: Network Engineering & Protocols
Goal: Build the internet from scratch. No libraries, just raw sockets.
LEARN_ASTERISK_PBX_FROM_SCRATCH_IN_C.md- Focus: VoIP, SIP, RTP. Real-time UDP networking.
- Projects: SIP Parser, RTP Audio Receiver/Sender, Conference Bridge.
VPN_WIREGUARD_TAILSCALE_LEARNING_PROJECTS.md- Focus: Tunneling, virtual interfaces (TUN/TAP), encryption.
LEARN_LDAP_FROM_SCRATCH_IN_C.md- Focus: Directory protocols, ASN.1 encoding, binary formats.
LEARN_CAMEL_FROM_SCRATCH_IN_C.md- Focus: Message routing, enterprise integration patterns in C.
๐ Phase 6: Embedded, Bare Metal & Real-Time
Goal: Direct hardware control without an OS.
ARM_ASSEMBLY_LEARNING_PROJECTS.mdLEARN_BARE_METAL_PROGRAMMING.mdLEARN_RTOS_FROM_SCRATCH_IN_C.md- Capstone: Build a Real-Time Operating System kernel (scheduler, context switching).
LEARN_C_MP3_PLAYER_FROM_SCRATCH.md- Focus: Interfacing with audio hardware, timing, decoding buffers.
๐๏ธ Phase 7: Build Your Own Infrastructure (Specializations)
Goal: Recreate the giants. Choose one or more paths.
- Cloud Infra:
LEARN_CLOUD_FROM_SCRATCH_IN_C.md(Containers, cgroups, namespaces) - Virtualization:
LEARN_PROXMOX_FROM_SCRATCH_IN_C.md(Build a hypervisor management layer) - Monitoring:
LEARN_MONITORING_SYSTEM_IN_C.md(Build a Zabbix clone) - Databases:
DATABASE_INTERNALS_C_LEARNING_PROJECTS.md - Compilers:
COMPILERS_INTERPRETERS_LEARNING_PROJECTS.md - Virtual Machines:
LEARN_JVM_INTERNALS_BUILD_FROM_SCRATCH.md - Graphics:
LEARN_COMPUTER_GRAPHICS_FROM_SCRATCH_IN_C.md(Rasterizers, Raytracers) - iOS Development:
LEARN_IOS_IN_C_DEEP_DIVE.md(Building iOS apps in pure C) - Visualization:
LEARN_GRAFANA_IN_C.md(Building a visualization dashboard backend) - Computational Geometry:
LEARN_COMPUTATIONAL_GEOMETRY_CAD_KERNEL_DEEP_DIVE.md(Build a CAD kernel)
๐ Phase 8: The Kernel โ The Summit
The final test of a systems engineer.
OPERATING_SYSTEMS_FROM_FIRST_PRINCIPLES.mdLEARN_LINUX_KERNEL_DEEP_DIVE.md- Focus: Understanding the Linux kernel source, modules, and internals.
TRACK_A_OS_KERNEL_PROJECTS.md- Final Capstone: Write a Unix-like kernel from scratch.