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.4 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="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/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="Astronofty" url="https://github.com/Kevin-Mok/astronofty" languages="React, Solidity" date="Jan 2023" show="true" %}}

  • Created for a 36 hour hackathon (UofTHacks X) where it came 2nd overall.
  • Created and deployed a smart contract with Solidity on the Ethereum blockchain to create/buy/sell NFT's.
  • Wrote a React hook to fetch and show listed NFT's, NFT details and owned NFT's.
  • Used API to synchronously upload images and metadata to IPFS.

{{% /resume/project %}}

{{% /resume/section %}}

{{% resume/section skills %}}

AWS, Kubernetes, Terraform, Docker (Compose), Jenkins, Groovy, Go(Lang), Bash, Linux, JavaScript, React, Python, Django, Node.js, PostgreSQL, MongoDB, Solidity, C, 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 %}}