Personal Technical Roadmap · 2026–2033+

The Path to Compiler & Runtime Engineering

A personalized, implementation-driven path from my current work as a Ph.D. researcher and systems programmer toward senior-level expertise in compilers, language runtimes, virtual machines, memory systems, optimization, and high-performance execution. Every stage combines theory, engineering practice, portfolio evidence, and a clear advancement gate.

C & Modern C++ Linux & POSIX Computer Architecture Concurrency Compilers & IRs VMs, GC & JITs LLVM & MLIR ML Systems & HPC
Primary pathway

Compiler & Runtime Engineering Map

Move downward in order. Blue-topped nodes are required foundations, green-topped nodes represent current or completed evidence, and amber-topped nodes are valuable specializations that should not interrupt the core sequence.

Completed foundation Current focus Future stage Optional specialization
00Engineering Base

Professional Engineering Foundation

Create, build, test, analyze, document, and deliver reliable C/C++ repositories using a repeatable Linux workflow.

Foundation established
Build

CMake, Ninja & Presets

Debug/Release configurations, GCC/Clang portability, clean-clone reproducibility.

Quality

Warnings, Static Analysis & Formatting

Warnings-as-errors, clang-tidy, Cppcheck, clang-format, disciplined reviews.

Verification

Testing, Sanitizers & CI

CTest, ASan, UBSan, TSan, GitHub Actions, smoke and integration tests.

Workflow

Linux, Git & GitHub

WSL2 home-directory workflow, intentional commits, branches, PR-ready changes.

Design

Architecture & ADRs

Interfaces, invariants, error models, security boundaries, engineering decisions.

Debugging

GDB, LLDB & Failure Analysis

Reproduce failures, inspect state, isolate causes, verify corrections.

01Current Core

C Systems Mastery

Understand program behavior at the level of bytes, memory regions, object lifetimes, system interfaces, and undefined behavior.

Deepening now
Language

C Semantics

Translation units, storage duration, linkage, qualifiers, function pointers.

Memory

Pointers, Arrays & Lifetimes

Stack, heap, static storage, aliasing, alignment, padding, ownership conventions.

Structures

Data Structures

Dynamic arrays, lists, queues, hash tables, trees, heaps, graphs.

POSIX

Files, Processes & IPC

File descriptors, read/write, fork/exec/wait, pipes, signals, mmap, sockets.

Correctness

Defined vs. Undefined Behavior

Reason precisely about language guarantees and implementation boundaries.

Evidence

Allocator, Binary & Process Tools

Memory Arena, BinScope, ProcLens, C CLI Lab, reusable utility modules.

02Current Core

Modern C++ Systems Engineering

Use C++ as a controlled systems language with explicit ownership, predictable resource management, reusable libraries, and concurrency.

Active foundation
Core

Values, Objects & Move Semantics

Constructors, destructors, references, value categories, copy/move behavior.

Ownership

RAII & Resource Safety

Unique ownership, shared ownership, non-owning views, exception safety.

Genericity

Templates, Concepts & Containers

Generic algorithms, iterators, ranges, allocator-aware design.

Libraries

Stable APIs & Error Models

Public/private boundaries, compatibility, result types, exceptions, ABI awareness.

Concurrency

Threads, Atomics & Memory Model

Mutexes, condition variables, happens-before, ordering, safe parallelism.

Bridge

Python Bindings

Connect low-level C++ libraries to research and ML workflows when useful.

03Systems Depth

Operating Systems, Architecture & Toolchains

Build the mental bridge from source code through compilation, linking, loading, virtual memory, and CPU execution.

Growing through projects
OS

Kernel/User Boundary

System calls, processes, scheduling, virtual memory, filesystems, protection.

Architecture

CPU & Memory Hierarchy

Registers, caches, pipelines, branches, SIMD, multicore, endianness.

Assembly

x86-64, ABI & Calling Conventions

Stack frames, registers, function calls, compiler-generated assembly.

Binaries

ELF, Symbols & Relocations

Sections, segments, symbol tables, dynamic linking, debug information.

Toolchain

Compile → Assemble → Link → Load

Compiler driver, assembler, linker, loader, object files and executable startup.

Evidence

BinScope & ProcLens

Binary format reasoning and Linux process-memory visibility.

04Runtime Base

Performance & Concurrent Runtimes

Measure real behavior, explain bottlenecks, and construct reliable scheduling and execution infrastructure.

Foundations built
Measurement

Benchmark Design

Representative workloads, baselines, variability, regression detection.

Profiling

perf, Flame Graphs & Counters

CPU, cache, branch, allocation, syscall and contention analysis.

Concurrency

Thread Pools & Work Stealing

Task queues, scheduling, load balancing, shutdown and cancellation.

Correctness

Races, Deadlocks & Ordering

TSan, synchronization strategy, atomics, false sharing, happens-before.

Evidence

TaskForge Runtime

Work-stealing runtime foundation with thread, sanitizer and benchmark CI.

Evidence

PerfScope Toolkit

Repeatable profiling and evidence-based performance investigation.

05Compiler Frontend

Lexing, Parsing & Semantic Analysis

Transform source text into a validated program representation with excellent diagnostics and robust error recovery.

Next compiler layer
Lexing

Tokens & Source Locations

Source buffers, literals, trivia, encodings, deterministic scanning.

Parsing

Recursive Descent & Pratt Parsing

Grammars, precedence, associativity, ambiguity, recovery.

Representation

AST Design

Node ownership, source ranges, visitors, immutable vs. mutable trees.

Semantics

Scopes & Symbol Tables

Declarations, name lookup, shadowing, visibility, namespaces.

Types

Type Checking & Inference

Type rules, conversions, function types, constraints, error reporting.

Evidence

PoiseLang Frontend

Lexer, diagnostics, parser, AST and semantic-analysis progression.

06Middle-End

Intermediate Representations & Optimization

Represent programs for analysis and transformation while preserving every behavior permitted by the language.

Future core
IR

Basic Blocks & CFGs

Terminators, predecessors, successors, reachability, verification.

SSA

Dominance, Phi Nodes & Uses

Dominator trees, use-def chains, SSA construction and destruction.

Analysis

Dataflow & Liveness

Forward/backward analyses, fixed points, transfer functions.

Passes

Local & Global Optimization

Folding, propagation, DCE, CSE, loop transformations, inlining.

Correctness

Semantics & Optimization Safety

Aliasing, side effects, floating point, exceptions, concurrency.

Verification

Differential & Randomized Testing

Before/after validation, IR checks, fuzzing, behavioral equivalence.

07Backend

Code Generation & Native Toolchains

Lower verified IR into efficient executable code that follows target ABIs and integrates with real system toolchains.

Future core
Selection

Instruction Selection

Map IR operations to target instructions and addressing modes.

Registers

Register Allocation & Spilling

Liveness, interference, register classes, stack slots.

ABI

Frames, Calls & Object Emission

Calling conventions, prologues, relocations, debug and unwind data.

LLVM

LLVM IR & Pass Infrastructure

IRBuilder, verifier, analyses, pass manager, target machine.

Execution

Object Files, Linking & JIT Entry

Native object generation, external C calls, ORC JIT foundations.

Target

AArch64 Comparison

Broaden backend reasoning after x86-64 competence is established.

08Language Runtime

Virtual Machines, Garbage Collection & JITs

Own the systems that execute programs after translation: runtime state, object models, memory management, dynamic behavior, and adaptive compilation.

Future specialization
Execution

Interpreter → Bytecode VM

Tree walking, bytecode compilation, dispatch loops, frames and closures.

Objects

Runtime Representation

Values, objects, metadata, dynamic dispatch, exceptions, FFI.

Memory

Garbage Collection

Tracing, roots, barriers, generations, compaction, safe points.

JIT

Profiling & Tiered Compilation

Hot paths, baseline JITs, deoptimization and optimizing JIT concepts.

Runtime

Threads, Scheduling & Services

Runtime synchronization, coroutines, startup, shutdown and diagnostics.

Evidence

End-to-End Language Runtime

A cohesive PoiseLang execution system with tests and benchmarks.

09Production Ecosystem

LLVM, Clang, MLIR & Open Source

Transition from educational systems into large production compiler codebases, collaborative review, subsystem ownership, and real users.

Production transition
LLVM

Build, Test & Navigate LLVM

Source builds, lit, FileCheck, targeted tests, bug reproduction.

Clang

Frontend Subsystems

Driver, lexer, parser, AST, Sema, diagnostics, code generation.

MLIR

Dialects & Progressive Lowering

Operations, regions, interfaces, rewriting, conversion and lowering.

Contribution

Tests → Fixes → Features

Begin with documentation and tests, then bugs, analyses and transformations.

Collaboration

Review & Design Communication

Small patches, clear rationale, review etiquette, maintainability.

ML Compilers

Tensor & Graph Compilation

Bridge ML research, HPC and runtime performance through MLIR.

10Senior Ownership

Senior Compiler & Runtime Engineering

Repeatedly design, deliver, measure, debug, and evolve complex production subsystems while leading technical decisions and helping other engineers grow.

Long-term destination
Architecture

Subsystem Ownership

Define boundaries, invariants, APIs, migration paths and reliability goals.

Performance

Production Optimization

Balance latency, throughput, memory, portability and maintainability.

Debugging

Ambiguous Failure Diagnosis

Resolve failures spanning compiler, runtime, OS, hardware and user code.

Leadership

Reviews, Mentoring & Direction

Raise engineering quality through design reviews and technical guidance.

Impact

Open-Source & Research Contribution

Sustained contributions, publications, talks and reusable technical work.

Specialize

LLVM · MLIR · VM/JIT · ML Compilers

Choose one primary specialty while retaining systems and performance depth.

Current execution point

Where I Am Now

Projects 1–6: Milestone 0 complete

The professional repository foundation has been repeated across Memory Arena, BinScope, ProcLens, TaskForge, PerfScope, and PoiseLang. The next move is not another new foundation project. It is returning to Project 1, Milestone 1 and moving through the six-project cycle in order so implementation depth grows on top of the established engineering workflow.

Next: Project 1 — Memory Arena, Milestone 1
Implementation evidence

The 17-Project Portfolio Is the Roadmap’s Spine

Projects are not side work. Each one is assigned to a technical layer and must mature from foundation to correct implementation, robustness, performance, and integration.

PROJECT 01M0 complete

Memory Arena & Allocator Laboratory

Ownership, alignment, backing storage, allocation strategies, fragmentation, invariants and benchmarking.

Next execution point: Milestone 1
PROJECT 02M0 complete

BinScope Binary Inspector

ELF64 parsing, byte-level validation, symbols, sections, malformed inputs, schemas and fuzzing.

Supports toolchains, object formats and linker reasoning.
PROJECT 03M0 complete

ProcLens Process Memory Explorer

Linux processes, procfs, virtual memory, permissions, partial results and security boundaries.

Supports OS and runtime observability.
PROJECT 04M0 complete

TaskForge Runtime

Thread pools, work stealing, atomics, scheduling, race detection, shutdown and benchmark discipline.

Supports concurrent runtime engineering.
PROJECT 05M0 complete

PerfScope Toolkit

Profiling workflows, workload control, repeatable measurement, bottleneck analysis and reporting.

Supports evidence-based optimization.
PROJECT 06M0 complete

PoiseLang Frontend

Lexer, diagnostics, parsing, syntax trees, semantic analysis and the entry to the compiler pipeline.

Supports the frontend-to-runtime language track.
Supporting development

Parallel Tracks That Strengthen the Core

Ph.D. Research & HPC

GenCyberSynth develops reproducibility, SLURM execution, metrics, artifacts, experiment design and research software discipline.

Academic Electives

Prioritize Applied Deep Learning, Data Engineering, Advanced Software Engineering and Software Architecture when available.

Mathematics & Algorithms

Deepen discrete mathematics, graph algorithms, complexity, statistics, linear algebra and numerical reasoning as project needs demand.

Community & Open Source

Participate in LLVM, RSE and systems communities; progress from discussion and bug reproduction to reviewed contributions.

Practical entry routes

Roles That Lead Toward the Destination

The first role does not need to carry the final title. The best bridge is work that increases ownership of low-level, performance-sensitive, infrastructure-heavy software.

Research Software Engineer

Scientific computing, reproducible systems, HPC, data and model infrastructure.

Systems Software Engineer

C/C++, Linux, storage, databases, developer tools, embedded or platform software.

Performance / Runtime Engineer

Profiling, scheduling, memory, concurrency, execution infrastructure and optimization.

ML Systems / Compiler Engineer

Model execution, graph lowering, tensor compilers, MLIR, GPU and heterogeneous runtimes.

Operating rules

How Progress Is Measured

01

Mastery Before Accumulation

Finish and understand each system deeply instead of collecting unrelated technologies.

02

Implementation Before Abstraction

Build internal mechanisms first so higher-level tools are understood rather than memorized.

03

Evidence Before Claims

Support conclusions with tests, profiles, benchmarks, artifacts and reproducible results.

04

Advance Through Gates

A topic is complete only when it can be explained, implemented, debugged, tested and defended.

Building from Memory to Machine Code

This roadmap turns my systems projects, doctoral research, C/C++ mastery plan, performance work, compiler projects, and future LLVM/MLIR contributions into one cumulative professional identity.