Lucas Ly Ba · open to opportunities worldwide
on-site / hybrid / remote

Lucas Ly Ba

MSc student in Low-Level & Systems Engineering @ EPITA

I build the layers most people never see — compilers, developer tools, and systems software. I write Rust, C and C++ close to the metal.

  • Debian — Google Summer of Code 2026
  • Compiler Engineer @ Embecosm — gccrs
  • Tiger Compiler Maintainer @ EPITA
  • Open-source contributor
01

About

I'm a Master's student at EPITA on the GISTRE track — low-level & systems engineering. I work on compilers, systems software, and the developer tools that sit close to the machine.

I was selected for Google Summer of Code 2026 with Debian — accepted among 15,245 applicants worldwide (a 7.5% acceptance rate) — to build debian-lsp, a Language Server Protocol implementation for Debian packaging files.

I contribute to several open-source projects — among them the Swift compiler, gccrs (the GCC Rust front-end) at Embecosm, and Debian. Alongside that I maintain EPITA's Tiger Compiler, where I write SSA-based optimization passes. I also build my own systems software — a POSIX shell, a Helix-inspired editor, an OCR pipeline — and I founded Memex, a product I shipped end-to-end.

15,245 GSoC applicants · 7.5% accepted
6 core maintainers on EPITA's Tiger Compiler — I'm one
5 SSA optimization passes I implemented
curiosity for how things really work
02

Experience

  1. Open Source Developer — GSoC

    Debian · Google Summer of Code 2026

    Selected to contribute to the Debian organization, accepted among 15,245 applicants worldwide (7.5% acceptance rate). Building debian-lsp, a Language Server Protocol implementation for Debian packaging files — delivering completions, diagnostics, hover, go-to-definition, formatting, code actions, inlay hints and semantic highlighting across key Debian metadata and packaging files. Collaborating with Debian maintainers through design discussions and code reviews.

    Mentor: Jelmer Vernooij

    • Language Server Protocol
    • Rust
    • Debian packaging
    github.com/jelmer/debian-lsp ↗
  2. Teaching Assistant — YAKA · Tiger Compiler Maintainer

    EPITA — École d'Ingénieurs en Informatique

    Part of a 61-person assistant team teaching C++, Java and JavaScript to third-year students. One of six maintainers of the Tiger Compiler — the largest and longest-running project of the year, built to teach modern C++, compiler construction and software design patterns. On the backend I implemented several SSA-based optimization passes:

    • Constant propagation
    • Dead code elimination
    • Copy propagation
    • Constant folding
    • Unreachable code elimination

    Mentors: Mael Cravero, Julie Fiadino

    • C++
    • SSA
    • Compiler backend
    • Optimization
    assignments.lre.epita.fr ↗
  3. Compiler Engineering Intern

    Embecosm

    Contributed to gccrs (the GCC Rust front-end), a production-grade open-source compiler written in C++ that brings Rust support to GCC. Resolved multiple issues and pull requests across the compiler pipeline, focusing on lint accuracy, diagnostics quality and the overall compilation feedback experience.

    Mentors: Arthur Cohen, Pierre-Emmanuel Patry

    • C++
    • Rust
    • GCC internals
    • Diagnostics
    github.com/Rust-GCC/gccrs ↗
  4. Assistant Internship — YAKA

    EPITA — École d'Ingénieurs en Informatique

    Six-month teaching internship preceding my TA role — supporting third-year students on systems and C++ coursework, writing assignments, and answering technical questions throughout the semester.

    • C++
    • Teaching
    • Mentoring
03

Projects

// Open source

Swift compiler

Active open-source contributor to the Swift toolchain — currently opening pull requests against the compiler, working through a large production C++ codebase and its review process.

  • C++
  • Swift
  • Compilers
  • Open source
// Toolchain

Swift on NixOS

A reproducible flake.nix that builds the full Swift 6.5 toolchain from source on NixOS — which upstream doesn't support. Reverse-engineered the build to solve a deep cascade of toolchain problems: DT_RUNPATH vs transitive rpath, glibc sysroot detection in ClangImporter, a complete bootstrap runtime, and ncurses shimming. A complete, working NixOS build of Swift from scratch.

  • Nix / flake.nix
  • Swift
  • LLVM
  • Toolchain
  • Linux
// Systems

42sh

A POSIX-compliant Unix shell written in C from the ground up: lexer, parser, AST execution engine, built-ins, job control, redirections, piping and signal handling.

  • C
  • POSIX
  • Parsing
  • Job control
// Computer vision

OCR Sudoku Solver

An end-to-end OCR pipeline in C: image preprocessing, a neural network for digit recognition, and a constraint-propagation solver — from a photo of a grid to a solved puzzle.

  • C
  • Neural network
  • Image processing
  • Solver
// Systems

Mole

A keyboard-driven mouse navigator for X11 — a Vimium-style hint mode that traverses the AT-SPI accessibility tree (with OCR fallback) and drives the pointer via x11rb. Built for i3.

  • Rust
  • X11 / x11rb
  • AT-SPI
  • i3wm
// Also built
  • malloc in C
  • BitTorrent client (C)
  • Game of Life (OCaml)
  • ESP32 chess clock — KiCad PCB
  • STM32 embedded system
  • TinyX backend
  • Math Voice Assistant — Stanford Hackathon
04

Stack

Languages

  • C
  • C++
  • Rust
  • OCaml
  • Python
  • x86 Assembly
  • Java
  • TypeScript
  • SQL

Compilers

  • SSA form
  • Optimization passes
  • AST visitors
  • Lexing / parsing
  • Type-checking
  • Register allocation
  • LLVM IR
  • HIR / LIR
  • Escape analysis
  • GCC internals
  • LSP

Systems

  • Linux
  • Kernel architecture
  • Virtual memory
  • Multithreading
  • POSIX
  • Embedded (STM32 / ESP32)

Tooling

  • NixOS / Nix
  • Git
  • Docker
  • GDB / LLDB
  • Neovim
  • Helix
  • i3wm
  • Debian packaging
05

Community

Prologin — problem setter

I design algorithmic challenges for the selection rounds of Prologin, France's national computer-science competition.

2025 — present

EPIBuddy / Epiworld — student mentor

I mentor incoming international students at EPITA, guiding campus integration and academic onboarding in English.

2025 — present

// Let's build something low-level

Let's talk.

I'm open to opportunities in compilers, systems and tooling — internships, collaborations or roles. The fastest way to reach me is email.