Resume

My education, experience, and skills.

Haoyu (Michael) Zhang

Master's Student at Carnegie Mellon University, Pittsburgh, PA, USA

Program: Information Networking @ INI

Summary

My studies encompassed a wide range of core courses including Software Construction, Computer Networks, Parallel Computer Architecture and Programming, Storage Systems, Distributed Systems, and Computer Graphics. This extensive academic exposure has helped me develop a comprehensive skill set, and instilled in me the ability to adapt to new technological scenarios swiftly.

Currently, I'm doing a research project about WebAssembly virtual machines with Prof. Benjaimn Tizer.

Areas of Expertise

Programming LanguagesPlatforms / Frameworks / Libraries
JavaSpringBoot, Apache Kafka, gRPC (Learning)
C++OpenMP, OpenMPI, Boost, STL
PythonNumpy, Pandas, Matplotlib
TS/JSReact.js, Vue.js, D3.js, Apache Echarts
VirgilWizard Engine
CUDA(Learning)
Haskell(Learning)
Version ControlForeign Languages
Git (GitHub, Gitlab)Mandarin, English, Japanese
MiscellaneousInterests
Linux, Git, GDB, Wireshark, Docker, AWS, CI/CD, Test AutomationHigh Performance Computing, Systems Programming, Computer Graphics

Work and Research Experiences

SZ DJI Technology Co. Ltd

Shenzhen, Guangdong, China. Jan 2021 - July 2021

Position: Full-stack Engineer Intern

  • Scope: Testing Automation Systems
  • Team size: 30
  • Stack:
    • Backend: Java | SpringBoot, MongoDB
    • Frontend: JavaScript | Vue.js, Apache Echarts
  • Accomplishments:
    • Initialize and setup project's frontend base from scratch
    • Constructed a test management platform for autonomous vehicle systems with Vue.js and Spring Boot. There's a main dashboard enables test engineers to configure, create, and monitor test cases. Integrated existing testing tools and services into the platform. Boosted overall automation test coverage from 78% to 85%.
    • Communicated with other teams to assist integrating the platform into their workflows. Saved average test case runtime by 15%.
    • Developed a co-editing system for engineers to release, update or rollback test package versions in a visualized way.
    • Designed and deployed a scheduling service to allocate available machines to different testing tasks based on calculated priorities.
    • Streamlined processes of device appointment and reduced average device idle rates by 40%.

Yunnan Haopy Pharmaceuticals Co., Ltd.

Yunnan, Kunming, China. June 2019 - Dec. 2020

Position: Software Engineer

  • Scope: Online Shopping Platform, Commodity Distribution System, Warehouse Management System
  • Team size: 15
  • Stack:
    • Backend: Java | SpringBoot, PostgreSQL, Redis
    • Frontend: JavaScript | Vue.js
  • Accomplishments:
    • Led the transition from monolithic Python-based services to a Java-based Microservices Architecture. Re-designed the system for better maintainability.
    • Mentored backend interns and helped their integration into the team.

Carnegie Mellon University

Pittsburgh, PA, United States. Jan 2023 - Now - Dec 2023

Position: Research Assistant @ WebAssembly Research Center

  • Description: Contribute to the development of a WebAssembly virtual machine named the Wizard Engine, as well as Virgil Programming Language.
  • Team size: 8
  • Stack: Virgil Programming Language, x86-64 Assembly, WebAssembly, C++
  • Responsibilities:
    • Wizard Engine
    • Virgil
  • Accomplishments:
    • SIMD support for Wizard's fast interpreter
    • SIMD support for Wizard's JIT compiler
    • SIMD support for Wizard's reference interpreter
    • Extension for Virgil's assemblers

Open-source Contributions

Sied Projects

  • This Website
  • Media Review Board (WIP)

Course Projects

  • TinyShell: A simple shell with basic features, written in C
  • TinyProxy: A simple proxy server with basic features, written in C
  • TinyMalloc: A simple memory allocator with basic features, written in C
  • TinyRaft: A simple Raft implementation with basic features, written in Java
  • Scotty3D: 3D graphics software package includes components for software rastization, interactive mesh editing, realistic path tracing, and dynamic animation. , written in C++
  • MyFTL: A simple FTL for SSDs, written in C++
  • CloudFS: Cloud-based file system, written in C++
  • Campfire: Parallelized chemical reaction simulation, written in C++

Education

Soochow University Suzhou, Jiangsu, China. Sep 2015 - June 2019

  • Program: Bioinformatics
  • Core Courses: Data Structures and Algorithms, Statistics, Informatics, Database Management, Java Programming Language, R & Bioinformatics, Machine Learning

Carnegie Mellon University Pittsburgh, PA, United States. Jan 2022 - Dec 2023 (Expected)

  • Program: Master of Information Networking
  • Core Courses: Software Construction, Computer Networks, Parallel Computer Architecture and Programming, Storage Systems, Distributed Systems, Computer Graphics, Optimizing Compilers, Cloud Computing

Pastimes and Activities

  • Cooking! I'm a big fan of cooking and I'm good at making Chinese food. Also learning new recipes of other cuisines.
  • I'm keen on reading books, IT blogs, Medium and Quora.
  • I like doing sports (basketball, swimming, ping-pong...)
  • I love traveling and exploring new places. My last tour was in Orlando and Tempa.

Last updated: Dec. 2023