Hi, I'mHamster.

A
Self-driven, quick starter, passionate researcher with a curious mind who enjoys solving complex and challenging real-world problems.

About

I am a Electronic and Computer Engineering Undergraduacte Student at University of Michigan - Shanghai Jiao Tong University Joint Institute. I enjoy problem-solving and coding. Always strive to bring 100% to the work I do. I have worked on technologies like C/C++, Python, Shell, Cuda, MatLab, MySQL, Java during research and course projects. I have 6 months of professional work experience which helped me strengthen my experience in Python and Shell. I am passionate about developing complex applications that solve real-world problems impacting millions of users.

Research Interests:
  • Real-Time System Scheduling
  • Time Critical Computing
  • Skills Summary:
  • Languages: C/C++, Python, Shell, MatLab, Java
  • Libraries: NumPy, Pandas, OpenCV, Scikit-learn
  • Frameworks: CUDA, Apache Hadoop, Spark, K8s, PyTorch
  • Tools & Technologies: Git, Docker, Origin, MySQL
  • Looking for an opportunity to work in a challenging position combining my skills in Software Engineering, which provides professional development, interesting experiences and personal growth.

    Experience

    Teaching Assistant

      Please refer to my teaching page

    • VE203 (MATH2030J): Discrete Mathematics
        Topics: Logics, Relations, Advanced Counting, Group Theory, Number Theory, Graph Theory
    • VE280 (ECE2800J): Programming and Elementary Data Structures
        Topics: Basic Linux, C++ Syntax, Testing, OOP, Dynamic Memory, STL
    • VG101 (ENGR1010J): Introduction to Computer and Programming
        Topics: MatLab, C, C++ Syntax
    • VV186 (MATH1860J): Honors Mathematics
        Topics: Function and Limits, Differentiation, Series, Integral of single variable
    • All the RC (recitation class) materials are available on github.
    Sept 2021 - Summer 2023 | Shanghai, China
    AI Platform Intern
      Project Orca: Distributed Tensorflow and Pytorch
    • Refactored github repo CI/CD workflow, eliminated unncessary dependencies, added daily/nightly testing
    • Validated Yarn,K8S cluster setting, updated corresponding tutorials and documents;
    • Created dockerfile for orca under different python environments
      Project Fresian: High-Level Big-Data Recommendation;
    • Developed Big Data recommendation example codes, created corresponding documents
    • Released the corresponding tookit with docker-compose, k8s, helmchart
    Tools: Python, Spark, Ray, K8s, Tensorflow, PyTorch
    Dec 2022 - May 2023 | Shanghai, China
    TA mentor
    • Plan/ attend/ facilitate/ lead TA orientation, training workshops, seminars
    • Work on the improvement of JI TA training programs, TA management, and other TA related issues
    • Conduct spot check of TAs' recitation class, labs & office hours, provide constructive suggestions for their improvement, and file reports monthly for backup
    Mar 2022 - Present | Shanghai, China

    Projects

    Powered by Google Tag Manager: Click to show details
    Screenshot of web app
    (New!) "SAVE" (Capstone Proj)

    SAVE: A Vision-Based Bicycle Safety System for Alerting Collision with Vehicles.

    Details Details
      Key Insights:
    • 🚴Designed a cyclist equipment with safety embedded system.
    • 🖥️Built a web server to allow real-time monitoring on both computers and mobiles.
    • ⚡Improved program execution speed while extending battery life by scheduling.
    • Dependencies:
    • Raspberry Pi 4B, Intel NCS2, 2x 100 Binocular Camera, MPU6050
    • C++ 17 on Linux, OpenVINO, OpenCV, Caddy Server 2
    • Awards:
    • 🏆Silver Award of Undergraduate Thesis in JI 2023 Winter Expo
    music streaming app
    Big-Data Recommendation

    A recommendation system on Million Song Dataset

    Accomplishments Accomplishments
    • Tools: Hadoop, Spark, Avro, Drill, Scikit-learn, LaTeX
    • Retrieve the dataset, interprete on the data structure and turn into avro file in parall.
    • Use drill (sqlite) to perform basic queries on dataset.
    • Use both Spark and Mapreduce to recommend the most similar song with diverse customization.
    • Reduce data dimension by PCA and effectively predict the year of the songs.
    • Demostrate our idea by well typed beamer slides and an A1 poster.
    quiz app
    Multithreaded DB

    Multi-threading optimization for simple database queries.

    Details Details
    • Require: C++17, Clang >= 6.0, CMake >= 2.7
    • Implement multi-thread in each single query to be 40% faster.
    • Auto detect the optimized thread num based on table size
    • Use priority queue with mutex to guarantee efficiency and sorting records
    Screenshot of web app
    Shell based on C

    A simple shell (mumsh) implemented by system-level C.

    Details Details
    • Key Points: system call, signal catching, pipe, built-in command.
    • Support basic Unix commands w/o arguments, e.g. ls -la.
    • Bash style file I/O redirection, e.g. cat <1.txt > 2.txt.
    • Basic pipe, e.g. echo 123 | grep 1 .
    • Catch interrupt signal including CTRL-D and CTRL-C.
    • Implement shell built-in command pwd and cd.
    Screenshot of  web app
    Music Game on PIC32

    A simple music game developed on PIC32MX795F512L.

    Details Details
    • Peripherals: JR12684-3A, piezoresistor, buzzer
    • Use UART to interact and display on the screen, get pressures (as hits) from the piezoresistor by ADC module, control the looped music using Timer and PWM.

    Skills

    Languages

    C/C++
    Shell Scripting
    Python
    MatLab
    MySQL
    Java

    Libraries

    NumPy
    Pandas
    OpenCV
    scikit-learn
    matplotlib

    Frameworks

    CUDA
    Hadoop
    Spark
    Kubernates
    PyTorch

    Other

    Git
    Docker
    LaTeX

    Education

    UM-SJTU JI

    Shanghai, China

    Degree: Bachelor of Engineer in ECE (in progress)
    Major: Electronic and Computer Engineering
    Minor: Computer Science
    GPA: 3.81/4.0

      Core Courseworks Taken:

      • ECE4820J Introduction to Operating System (A+)
      • ECE4720J Methods and Tools for Big Data (A+)
      • ECE3730J Design of Microprocessor Based Systems
      • ECE3700J Introduction to Computer Organization

    Contact