resume

> cat ~/resume

An Ngo

Software engineer · M.S. Computer Science student @ SJSU

San Jose, CAGitHubLinkedInemail

Systems-oriented software engineer and M.S. Computer Science student at San José State University. I build parallel, graphics and AI-assisted software, and I like putting deterministic, testable boundaries around complex or unpredictable parts.

// education

  1. Aug 2026–present

    M.S. Computer Science

    San José State University

    • Expected May 2028
  2. Aug 2023–May 2026

    B.S. Computer Science

    San José State University

    • Summa Cum Laude, GPA 3.95/4.00
    • Computer Science Department Honors
    • Coursework: Operating Systems, Parallel Processing, Computer Architecture, Machine Learning

// experience

  1. Jan 2026–present

    Operating Systems Research Assistant

    San José State University · San Jose, CA · the project >

    • Led a 4-student team researching spiking-neural-network inference in an in-car OS prototype
    • Set the architecture, divided the work, merged 189 files across branches and presented to faculty
    • Built the host-side safety harness in C: 4 priority lanes, a 256-event trace and a 16-actor watchdog
    • Wrote 168 checks in 7 suites behind make compliance-test, with an injected clock for reproducible runs

    C · Python · Make · QEMU · Linux

// projects

  1. Jun–Sep 2026

    VoxForge

    Solo · A voxel editor where AI edits are proposals, checked and previewed before anything is applied

    • Made model output a non-executable proposal, checked for 15 issue types and applied only after preview
    • Routed model calls through a server-side route to the local Codex CLI or an OpenAI Responses API gateway
    • Cut draw calls from 16,384 to 8 and frame time from 55.1 to 0.13 ms at 16,384 voxels (three.js reproduction)
    • Wrote 259 tests (node:test), all passing

    TypeScript · Next.js · React Three Fiber · three.js · OpenAI API

  2. Apr–Sep 2026

    Parallel Renderer

    Solo · A C++20 Monte Carlo path tracer comparing four ways to split an image across CPU threads

    • Compared serial, static, atomic-tile-index and OpenMP scheduling on 16 cores
    • Cut render time from 474.9 to 35.7 ms at 16 threads (13.29×, 83.1% efficiency), matching OpenMP's 13.16×
    • Ran 1.57× faster than static partitioning at 16 threads
    • Seeded each sample by pixel and sample index so every schedule renders the same image

    C++20 · std::thread · OpenMP · SDL3 · Dear ImGui · CMake

  3. Feb–May 2026

    Reflex Royale

    Team of 3 (71 of 89 commits) · A multiplayer reaction-time game where the server runs the rooms and times every press

    • Built server-authoritative Socket.IO rooms for up to 4 players, timing each press on the server
    • Added bcrypt accounts, MongoDB-backed sessions, and reconnects with host transfer
    • Wrote 109 passing tests (51 Node, 58 Playwright)

    Next.js · Express · Socket.IO · MongoDB · Playwright

// skills

Languages
C · C++ · Python · Java · JavaScript · TypeScript · SQL · HTML/CSS
Frameworks & graphics
React · Next.js · Express · Socket.IO · three.js · React Three Fiber · SDL3 · Dear ImGui
Systems & parallel
Linux · QEMU · OpenMP · std::thread · atomics · Make · CMake · CTest
Tools
Git · MongoDB · Playwright · OpenAI API · Codex CLI · Microsoft Office