Career Profile

I’ve been in tech industry for over 6 years and have been working on various projects from backend to cloud native. I’m passionate about learning new technologies and building things. I’m a quick learner and always eager to learn new things.

Currently, I’m about to start my master degree in University of Exeter and I’m looking for a part-time job.

  • I had back-end server(Golang,Python) development experience for 4 years and I’m familiar with Golang, Python, Rust, Javascript, etc.
  • I also had cloud native development experience for 2 years and I’m familiar with Kubernetes, Openkruise, etc.
  • I also familiar with distributed system and microservices. I’m looking for a part-time job that is related to back-end development, cloud native development, distributed system or microservices.

I’m also interested in open source and I’m a huge fan of open source software. I’ve contributed a lot of features and bug fixes to open source projects and I’m also a main maintainer of some open source projects.

Get in touch with me if you have any questions or want to work together on something!

Education

MSc in Advanced Computer Science

2023 - 2024
University of Exeter (UK)

I’m going to study Advanced Computer Science in University of Exeter in 2023. I’m so excited about it and I’m looking forward to it.

BSc in Computer science and technology

2014 - 2018
North China Electric Power University (China)

I’ve studied computer science and technology in North China Electric Power University. During my college, I’ve learned a lot of knowledge about computer science and technology, such as

  • Computer Network
  • Operating System
  • Programming Language
  • Data structure and algorithm
  • Database
  • Software Engineering
  • Computer Architecture
  • Hardware

Besides, I also co-founded a tech club in my college and organized a lot of activities, including

  • Hackathon
  • Tech Talk
  • Tech Sharing

So I’ve learned a lot of soft skills and improved my communication skills during my college.

From the third year of my college, I’ve started to learn Golang and build some projects with Golang in a startup company as an intern. I’ve learned a lot of knowledge about Golang and cloud native during my internship and joined some of company’s projects.

In the last year of my college, I had joined a game company’s infrastructure team as an intern and started to get in touch with the real production environment.

Experiences

Senior Software Engineer

2021/07 - 2023/07
Shopee, Beijing

I joined Shopee as senior software engineer in 2021 in Network team. I was responsible for maintaining HA proxy and Nginx in Shopee’s production environment. I’ve learned a lot of knowledge about network and load balancing during my work in Shopee. From 2022, I was relocated to Shopee’s elastic compute team and responsible for maintaining Shopee’s deploy platform which is the core platform for all Shopee’s services. I’ve developed a lot of features for deploy platform and improved the stability of deploy platform. I’ve learned massive knowledge about cloud native and distributed system during my work in Shopee. In the meantime, I’ve also design and developed brand new deploy platform for Shopee’s which is based on Kubernetes and Openkruise. The new platform is more stable, more efficient and more flexible than the old one and aims to replace the old one in the future. In Shopee, I’ve improved my skills in

  • Golang
  • Kubernetes
  • Openkruise
  • Distributed System
  • Cloud Native
  • Network
  • Teamwork
  • Communication
  • Problem Solving
  • Project Management
  • Technical Leadership

Senior Software Engineer

2017/09 - 2021/06
Hortor Games, beijing

Hortor Games is a mobile game company that develops and publishes lots of popular mobile games in China. I joined Hortor Games as an intern in 2017, last year of my college. I was assigned to infrastructure team which provides infrastructure support for all game teams. I was responsible for maintaining and developing some internal tools for infrastructure team at first. After that, I was responsible building and maintaining new game platform to replace the old one and it should be have better performance and stability. I spent a year to build the new game platform and it was successfully launched. I’ve used a lot of technologies in the new game platform, including

  • Microservices
  • New Databases
  • MQ
  • ETCD
  • Redis
  • Kubernetes

I should mention that this new game platform has provided a lot of online services for all game teams that means the platform has a lot of traffic and it should be stable and efficient. At the maximum, the platform has handled 100k QPS and 10k concurrent connections. In the other hand, the platform had 10 Million DAU, 100 Million MAU and 1 Million orders per day. So, it takes a lot of effort to make the platform stable and efficient and it still works well till now.

I’m so proud and grateful that I’ve joined Hortor Games at my first job and enlisted in such a great project.

Certifications

Example Cert

2020 - 2021
Microsoft (111-222)

Haven’t got any certifications yet. But I’m planning to get some certifications in the future.

Projects

Here are some of my recent projects. Want to see more? Email me.

Game Platform - I've developed a game platform for Hortor Games in 2019. It's a high performance and high availability game platform. It has handled 100k QPS and 10k concurrent connections at the maximum and running well till now. It provides core ability for the game teams which improves the efficiency of game development and operation. Core ability includes - User Management(Registration, Login, Logout, etc.) - Payment(WeChat Pay, Ali Pay, etc.) - Push Notification - Game Data Management - Game Data Analysis - Logging System - Game Server Management(backend system, etc.) - Chat System - Customer Service System - etc.
Cloud Native Deploy Platform - I've developed a cloud native deploy platform for Shopee in 2023. It's a high performance and high availability deploy platform. I've maintain the old deploy platform for a year and I've found a lot of problems in the old deploy platform. Then I started to design and develop a new deploy platform which is based on Kubernetes and Openkruise. It will replace the old deploy platform in the future and it will be more stable, more efficient and more flexible than the old one. The technologies I've used in the new deploy platform includes - Kubernetes(CRD, Controller, Scheduler, etc.) - Openkruise(Customize Controller, etc.) - Distributed System - Microservices
Godis - Godis is a Redis client written in Golang. It's a high performance Redis client and it's easy to use. I've developed Godis in 2019 and it's still under development. I've used Godis in some of my projects and it works well. My main purpose of developing Godis is to learn Redis and I actually learned a lot of knowledge about Redis during the development of Godis. I also read Redis source code and learned a lot of knowledge about Redis from the source code.
GoIM - GoIM is a distributed instant messaging solution based on Golang and RocketMQ. It's a high performance and high availability solution. I've developed GoIM in 2021 and it's still under development. It has passed the basic IM tests, but it still needs a lot of work to be done. My main purpose of developing GoIM is to learn distributed system and Instant Messaging. I've occurred a lot of problems during the development of GoIM and I've fixed most of them. It means I've learned something and improved my skills.
Protoc-gen-go-http - Protoc-gen-go-http is a protoc plugin that generates http server code for gRPC service. I've developed Protoc-gen-go-http in 2021 and it is finished. I've used Protoc-gen-go-http in some of my projects and it works well.
conn-pool - Conn-pool is a connection pool for Golang. It's a high performance connection pool and it's easy to use. I've developed Conn-pool in 2019 and use it in some of company's projects and my own projects. It works well, so wrote a blog about it and it has been read by a lot of people. Some of them even DM me to ask some questions about it. I'm so happy that I can help others, so I decided to open source it and share it with others.

OSS Contributions

I'm a huge fan of open source software and I try to contribute back to the community as much as possible. Here are some of my recent

Karmada - Karmada (Kubernetes Armada) is a Kubernetes management system that enables you to run your cloud-native applications across multiple Kubernetes clusters and clouds, with no changes to your applications. I've contributed few bug fixes and features to Karmada project and used Karmada in Shopee's production environment.
Kinitiras - Kinitiras is a lightweight but powerful and programmable rule engine for kubernetes admission webhook. I'm main maintainer of Kinitiras project and I've contributed a lot of features and bug fixes to Kinitiras project. I've also introduced Kinitiras to Shopee's production environment and used it to solve some problems.
KCloudLabs - KCloudLabs is a open source organization that aims to provide some useful tools for kubernetes. I'm one of the main maintainers of KCloudLabs and I've contributed a lot of features and bug fixes to KCloudLabs projects.

Publications

I don’t have any publications yet. But I write some blogs about my projects and some technical topics.

  • Connection Pool in Golang(Chinese)
  • Yusank
    Yusank's Blog

    Skills & Proficiency

    Golang

    Kubernetes

    Databases

    NetworkProgramming

    Microservices

    MQ

    Linux

    Python

    Rust

    Javascript