proofstone / become / software engineering / systems & desktop

Systems & desktop

Compilers, databases, operating systems, desktop apps — close to the metal. Pick a profession: each one is a map you walk node by node, and every card says, up front, what you need before you start.

9 professions · 9 planned

21

Browser engine engineer

planned

The browser itself — Chromium, WebKit, Gecko — not the sites inside it.

stack: C++ · Rust

before you start: you already write C++ or Rust

22

Systems programmer

planned

Low-level code: services, daemons, memory, performance.

stack: C · C++ · Rust · Linux

before you start: you already write code

23

Desktop application developer

planned

Applications for Windows, macOS and Linux.

stack: C# · .NET · Qt · Swift · Electron / Tauri

before you start: nothing — start from zero

24

Operating systems engineer

planned

The kernel and what surrounds it: the scheduler, memory, drivers.

stack: C · Rust · Linux kernel

before you start: you already write C

25

Compiler engineer

planned

Languages and their compilers: parsers, optimisations, code generation.

stack: C++ · Rust · LLVM

before you start: you already write C++ or Rust

26

Database internals engineer

planned

The database engine: storage, indexes, query execution, transactions.

stack: C++ · Rust · algorithms and data structures

before you start: you already write C++ or Rust

27

Performance engineer

planned

Profiling and speeding up: caches, SIMD, allocations, measurements.

stack: C++ · perf · flamegraphs · benchmarks

before you start: you already write C++ or Rust

28

Runtime / VM engineer

planned

Virtual machines and garbage collectors: the JVM, V8, WebAssembly.

stack: C++ · JIT · GC

before you start: you already write C++

29

Driver developer

planned

Device drivers for the operating system.

stack: C · Windows WDK / Linux kernel

before you start: you already write C