Ziyi Yu

RIT Software Engineering '27

Hello! My name is Ziyi, and I am a first-generation student trying to turn my aspirations into reality. I am currently seeking a software engineering co-op position, available May - December 2025.

Languages

Frameworks

Developer Tools

Experience

Course Assistant - Software Development and Problem Solving I & II

Rochester Institute of Technology

Fall 24 & Spring 25

Rochester NY

  • Support professors in GCIS-123 and GCIS-124, two challenging introductory programming courses required for most computing majors at RIT, demonstrating a strong foundation in Python, Java, and algorithmic problem-solving.

  • Assist during lectures by providing in-class debugging support, allowing students to resolve coding issues in real-time and stay on track with the course material.

  • Grade assignments, exams, and projects with a focus on providing constructive feedback to help students improve their coding skills and understanding of core concepts.

  • Hold weekly office hours and mentoring sessions, explain complex programming concepts in an accessible manner to students with varying levels of experience.


Projects

Personal Website Portfolio

Tools: HTML, CSS, Javascript, Bootstrap

Updated Spring 2025

  • You're looking at it right now!

  • This is just a spot to keep track of past and ongoing projects.

NutriKit

Tools: Python, React, Flask, PostgreSQL, Reactstrap

Fall 2024

  • Developed a responsive full-stack web application using React and Flask to help users track daily calorie intake and plan meals.

  • Implemented a PostgreSQL database to store and manage food-related data, with Python scripts handling SQL queries and database interactions.

  • Built a RESTful API using Flask (Python) to connect the React frontend with the backend database.

NutriApp

Tools: Java, JavaFX, JUnit, SonarQube, JaCoCo

Fall 2024

  • Collaborated in a team of five to dissect a comprehensive list of requirements, strategically designing and de-

  • veloping subsystems to meet functional and technical specifications.

  • Designed and implemented subsystems by applying numerous Gang of Four design patterns, such as the Adaptor pattern for exporting data and the Mediator pattern for handling multiuser communication.

  • Built an intuitive user interface using JavaFX. Wrote unit tests with JUnit, achieving high code coverage as mea-

  • sured by JaCoCo.

  • Git was used for version control.

Ufund

Tools: Java, Angular, Spring, JUnit, SonarQube, JaCoCo

Summer 2024

  • Led a team of four to develop a full-stack web application for tracking an organization’s needs, using the Spring framework to build a RESTful API and Angular for the user interface.

  • Adopted the Scrum methodology, including sprint planning, frequent stand-ups, code reviews, and end-of-sprint demos. Used Trello to track and assign user stories to each team member.

  • SonarQube was used for metric analysis and JaCoCo for monitoring code coverage.

  • Consistently updated the project’s design documentation, complete with UML class diagrams and sequence diagrams.

Game Solver Collection (Personal Project)

Tools: Python, Java, JUnit, Pytest

Summer 2024

  • Designed and implemented a collection of game solvers for popular logic puzzles, including Sudoku and Hangman, using the backtracking algorithm to find solutions.

  • Demonstrated problem-solving skills by adapting the backtracking algorithm to the unique rules and constraints of each game.

Pete's Pike

Tools: Java, JUnit, JavaFX

Spring 2024

  • Collaborated in a team of three to develop a fully interactive digital version of the strategy tabletop game, Pete’s Pike.

  • Implemented two playable interfaces, allowing gameplay through both a command-line interface and a GUI designed with JavaFX.

  • Utilized Git for version control.

  • The auto-solver feature was implemented using the backtracking algorithm.

Back to Top