Zhaoyu Dai 734-934-4830 # dzhaoyu@umich.edu Education University of Michigan, Ann Arbor Sep 2021 – Dec 2023 Bachelor of Science, Computer Science Ann Arbor, MI Gpa: 3.8 King’s College London Sep 2019 – May 2021 Bachelor of Computer Science London, UK Gpa: 4.0 Relevant Coursework • Data Structures • Software Engineering • Database System • Object Oriented Design • Internet System • Foundation of Algorithms • Operating System • Computer Architecture Technical Skills Languages : Java, Go/Golang, C++, HTML/CSS, JavaScript, SQL Developer Tools : IntelliJ, VS code Technologies/Frameworks : Linux, Jenkins, Git, AWS S3, AWS EC2, Docker, Kubernetes Work Experience Weride.ai May 2022 – Sep 2022 Software Engineer Intern San Jose, California • Developed an extension of Spark SDK using Java to allow users to write company’s driving log files directly to AWS S3. • Made an image of the Spark SDK by Docker and pushed it to the company’s Kubernetes Cluster. • Worked on a Java library that can convert Spark Dataframe to Protobuf like Google’s JsonFormatter. • Built up ETL data pipelines using Spark to consume RabbitMQ’s messages, new Spark data pipelines consume around 30% less memory comparing to old C++ pipelines. • Created a robust Python Flask web service for syncing up exception logs in MySQL to AWS S3. • Made a Go web service to summarize the coverage of test cases of all C++ code in code base using Bazel, Gin, Gorm, and PostgreSQL. Projects Max Football Calendar | Java, Springboot, ReactJS • Developed a website for documenting college football gaming events. The website allowed college students access upcoming and previous gaming data with ease. • Used Springboot framework to develop REST API and H2 in memory database for storing records. • Made dynamic web pages using HTML CSS Bootstrap and ReactJS framework. • Application is containerized using Docker and deployed to AWS EC2. Drpc | Go, Redis, Distributed system • Created an upgraded rpc library comparing to golang’s original net/rpc library. • Drpc server can handle both TCP and HTTP connection based on choice of Client side, and the max QPS can reach around 10K. • Drpc services are registered by Redis KV data store for service discovery, solving the problem of no service discovery in net/rpc. • Drpc has multiple load balancing strategies like Round-Robin, Random to reduce traffics of connections. Dmr, distributed file processing system | Go, Distributed System • Designed a distributed file processing system with MapReduce for counting words information. Efficiency is 60% percent better than sequential processing in terms of time. • Used golang’s net/rpc library to make RPC call between master and worker. • Implemented sufficient heart beat mechanism for the master to record status of worker and redistribute jobs. Honor USA Computing Olympiad Dec 2018 – Present Platinum Contestant • Achieved Platinum, the highest division of USA Computing Olympiad by reaching perfect score in Gold division during the Contest.