Skip to content
dami.peng

Open to Summer 2027 SWE internships and new grad roles

Dami Peng

Software engineer building backend systems and infrastructure.

I like designing systems that work reliably in production and understanding the engineering decisions behind them.

Isometric 3D model of my room: desk with a curved monitor, shelves, posters, a bed and a floor lamp
My room, modelled in Blender

SWE intern at IBM Skills Network, third term — backend infrastructure for a platform serving 80K monthly users.

Engineering intern at Shopify, Winter 2027. Computational Mathematics at the University of Waterloo.

I'm drawn to problems where the right fix is structural: separating workers from API servers, getting events reliably across replicas, or making background jobs observable without digging through production pods. I enjoy thinking about system boundaries, failure modes and the tradeoffs behind an architecture. I care less about adding another layer of abstraction and more about making the underlying system work well.

At the same time, I like understanding how things work beneath those abstractions. Outside of work, I spend a lot of time building projects in C++. I've built a C compiler with Flex, Bison and LLVM, and enjoy exploring the mechanics behind the tools and systems I use. I also spent a term on optimization research, benchmarking accelerated gradient methods on CIFAR-10 — an experience that reinforced my preference for measurement over intuition.

I write here about the systems I build, the engineering decisions behind them, what breaks, and the things I learn along the way.

  • −99%

    Redis memory, by moving uploads to direct-to-S3 pre-signed URLs

  • 80K

    monthly users on a React/TypeScript SPA re-architected from a 20K-LOC legacy app

  • $17K/yr

    saved in infra and API costs: Kubernetes worker isolation plus an LLM/STT model migration

Full work history →
  • C Compiler

    C++ · Flex · Bison · LLVM

    End-to-end compiler with a two-pass design — symbol collection, then semantic analysis and LLVM IR codegen — over a type-safe AST built on std::variant.

  • Parametric Modelling

    C++ · Maya API · CMake

    A Maya plug-in with custom dependency-graph nodes that generate procedural staircase and arched-bridge meshes in real time, with Perlin-noise surface weathering.

  • Chess

    C++ · X11

    Chess engine with standard and atomic variants, three computer difficulty levels and thread-safe move calculation. A differential renderer cut move redraws from 3.5s to 0.1s.

  • Portfolio Optimization

    Python · Gurobi · Linear programming

    A robust linear program for portfolio selection that adapts Soyster's and Bertsimas–Sim models to worst-case volatility. Team paper for CO 370, Deterministic OR Models.