Mobile-responsive personal website, generated using Hugo. https://kevin-mok.com/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

5.5 KiB

title date draft
Resume 2019-02-11T07:50:51-05:00 false

{{% resume/section "Work Experience" %}}

{{% resume/work-experience name="Red Hat" title="Cloud/Software Engineer Intern" languages="Kubernetes, GoLang, Jenkins" date="May 2020 — Aug 2021" %}}

  • Reduced deployment time by 66% by implementing ability to deploy locally-compiled binaries onto Kubernetes/OpenShift using only command-line (Kubernetes/GoLang used for this and three below).
  • Implemented ability for Kubernetes operator to fetch data from a deployed service and update config with data to deprecate reliance on startup script.
  • Added startup probes to handle starting legacy application containers that require additional startup time.
  • Refactored probes to have default values assigned based on deployed YAML while also fixing reconciliation issues.
  • Rewrote the Jenkins (Groovy) nightly pipeline to run in a GitHub PR using a trigger keyword to test all the team's submitted PR's before merging to the main branch.
  • Took initiative to write file to define the GitHub parameters for the above pipeline so that it can be recreated easily.
  • Took initiative to write documentation on how to get started with the project to onboard new developers and mentored the incoming intern.

{{% /resume/section %}}

{{% resume/section projects %}}

{{% resume/project name="Operating Systems Course" url="https://kevin-mok.com/server/" date="Jan. 2022" show="true" %}}

  • Wrote and installed a custom Linux kernel module in C.
  • Intercepted pre-existing system calls using custom kernel module by sending commands to userspace.
  • Monitored specific process ID's in my system call to intercept their system calls.
  • Used mutex locks for thread synchronization in C.

{{% /resume/project %}}

{{% resume/project name="Rarity Surf" languages="Python, Django, React, GraphQL"
date="Oct 2021" show="true" %}}

  • Web app to give rarity rankings to NFT's and check which are listed on the OpenSea marketplace using their API.
  • Reverse engineered the ranking algorithm to match the leading rarity ranking site's rankings (scraped using Selenium) with a discrepancy of <0.25%.
  • Used app to frontrun purchases of top 0.5% rarity NFT's against competing buyers.
  • Wrote Django (Python) backend to fetch metadata from IPFS, store rarity rankings in PostgreSQL and serve rarity data using GraphQL.
  • Wrote React frontend with hooks to dynamically load rarity data. Styled with Tailwind.

{{% /resume/project %}}

{{% resume/project name="AWS Server" url="https://kevin-mok.com/server/" languages="AWS, Kubernetes, Terraform, Docker" date="May 2024" show="true" %}}

  • Deployed various web apps using Docker (Compose) on an AWS EC2 Debian/Linux server.
  • Created Kubernetes manifest files to quickly recreate my server setup with persistent storage/restarts and open ports.
  • Created Terraform files to deploy an AWS EC2 instance and Docker containers.
  • Used Amazon Route 53's DNS and NGINX to route subdomains to each web application.
  • Wrote a JavaScript server script and systemd service/timer to display the uptime of my pages every hour.

{{% /resume/project %}}

{{% /resume/section %}}

{{% resume/section skills %}}

Python, C, PostgreSQL, AWS, Kubernetes, Terraform, Docker (Compose), Jenkins, Groovy, Go(Lang), Bash, Linux, JavaScript, React, Python, Django, Node.js, MongoDB, Solidity, Git, Command Line

{{% /resume/section %}}

{{% resume/section education %}}

{{% resume/education name="University of Toronto" title="Computer Science Specialist — 3.84 GPA (CS). Graduated with High Distinction." date="2018 — 2023" %}}

{{% /resume/section %}}

{{% resume/section "References" %}}

{{% resume/references %}}

{{% /resume/section %}}