CloudTides - Elastic platform on idle cloud resources
date: 2021-08-10
Cloud Tides is a platform that offers idle cloud resources from big cloud services to small companies and research groups in need
My contribution:
• Redesigned the front-end page with Angular JS to better introduce the platform and attract potential customer
• Designed and implemented a role-based user management system to manage permissions with Golang and SQL
Introduction Webpage: http://www.cloudtides.org.cn/
Github Repo: https://github.com/cloudtides/CloudTides
Analytics Zoo Open-Source Big Data AI platform
date: 2021-08-15
Analytics Zoo is an open-source platform that unifies analytics and AI by providing a collection of tools and libraries for building, deploying, and scaling end-to-end deep learning applications on big data frameworks like Apache Spark, Flink, and Ray.
My contribution:
• Supported multi-model front-end HTTP serving to serve different models with single front-end Scala service
• Introduced the support of local inference model serving that cloud be up to 9 times faster than cluster serving
• Implemented front-end gRPC serving with java-grpc library to provide users a new option and improve speeds for roughly 20% comparing with HTTP serving
Project Github Repo: https://github.com/intel-analytics/analytics-zoo
Golang distributed system project
date: 2021-04-15
This project involved the development of a comprehensive MapReduce framework in Golang,
encompassing both sequential and distributed operational modes,
and integrating fault tolerance for enhanced system resilience.
Additionally, I did related projects that explore Paxos,
shardkv, and shardmaster, demonstrating proficiency in designing and managing complex distributed architectures,
with a focus on data distribution and consistency. This body of work collectively illustrates a
strong capability in building and deploying advanced software solutions within distributed environments.
Operating system course project
date: 2020-12-15
p1 - Multi-threaded Programming: Focuses on implementing a thread library, including mutexes, condition variables, and CPU scheduling, with supporting lecture slides on synchronization and locks.
p2 - Concurrency and CPU Simulation: Builds on p1 by delving into deeper concurrency, CPU simulation, and interrupt handling, with files suggesting internal components for managing CPU contexts and thread data structures.
p3 - Virtual Memory (Paging): Implements a virtual memory pager, defining interfaces for initialization, process creation, and page mapping, supported by readings on system design and lecture slides on virtual pages and swap files.
p4 - File System: Involves implementing a file system with client and server components, including core file system logic, client-side interfaces, and server-side data structures, with lecture slides discussing Remote Procedure Calls (RPC) and redundancy.