Education

Ph.D. in Computer Science

Sep 2023 — Present

University of California, Irvine

Research in binary translation. Paper under submission. Advisor: Professor Michael Franz.

Experience

Binary Ninja Decompiler Infrastructure Enhancement

Jun 2025 — Sep 2025

Intern, Vector 35 — Melbourne, FL

  • Implemented Xtensa register windowing support and enhanced call site analysis by designing complete register window rotation system with modified parameter recognition, enabling efficient calls analysis with overlapping register sets.
  • Architected ILTransparentCopy attribute system allowing SSA analysis algorithms to trace through architectural register assignments while preserving logical data flow, improving decompilation optimization accuracy.
  • Fixed ELF binary loader to correctly handle program headers and section addressing by modifying section-to-segment mapping logic, resolving NOTE section misclassification issues that caused incorrect memory layout analysis.
  • Enhanced constant folding optimization by implementing double-precision instructions evaluation in the intermediate representation, reducing unnecessary runtime computations and improving decompiled code quality.
  • Architected a scalable calling convention model using register classes and lists with separate ID spaces, enabling TriCore architecture support while benefiting all processor architectures and eliminating fallback to heuristics for function parameter identification.

Software Engineering Intern, Google LLC — San Jose, CA

  • Enhanced the lexer to handle complex linker scripts more efficiently, reducing errors and improving maintainability.
  • Replaced lambda-based expression handling with structured expression types, improving potential performance, reducing memory overhead, and enhancing debuggability.
  • Collaborated with upstream maintainers to ensure smooth integration of changes, addressing bottlenecks in the review and feedback process.
  • Integrated Intel VTune profiler support into JITLink for enhanced performance analysis.
  • Enabled profiling of JIT-compiled code using VTune’s API.
  • Developed a test based on existing LLVM JIT profiling tools.

SMPL Compiler

Jan 2023 — Mar 2023
  • Developed an optimizing compiler in C++ for the SMPL programming language.
  • Constructed a recursive descent parser, generating a Static Single Assignment(SSA)-based intermediate representation(IR) to facilitate advanced optimization techniques.
  • Transformed the program into an SSA form, ensuring each variable is assigned once, simplifying data flow analysis.
  • Utilized the SSA form to implement optimization, including copy propagation and common subexpression elimination.
  • Extended the compiler to support array operations, focusing on eliminating redundant array loads.
  • Developed a global register allocator, leveraging the SSA form to track live ranges, build interference graphs, and perform graph coloring for optimal register allocation.

Microbenchmark for Manycore System HammerBlade

Jun 2022 — Sep 2022
  • Explored and designed a runtime system for HammerBlade to facilitate swift task migration and reduce memory-to-icache transfers.
  • Implemented a microbenchmark in C to assess the trade-off between cache misses and core hopping.
  • Profiled and compared the performance difference between the normal execution model and the core hopping model.

Laboratory Information Management System

Sep 2020 — Sep 2021

Software Engineer, Burning Rock Dx — Irvine, CA

  • Implemented the web service with Python, Flask on MySQL for laboratory information management.
  • Implemented RESTful API with Flask-WTForm, Flask-HTTPAuth, and Flask-Login for data collection and search.
  • Designed and managed the database models with Flask-SQLAlchemy, Flask-Migrate, and Python Shell.
  • Experienced in Agile development and maintained the new system version on Apache for staging environment.

Service

PLDI 2023 Student Volunteer

2023

PLDI 2022 Student Volunteer

2022

Skills

Languages

C/C++Assembly (x86/64, AArch64)PythonRustLinker ScriptsBluespecSQLShell Scripting

Frameworks & Tools

LLVMMLIRClangGCCGhidraCMakeNinjaValgrindMavenGitTensorFlowDocker