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.

107 lines
4.7 KiB

4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
8 months ago
  1. ---
  2. title: "Resume"
  3. date: 2019-02-11T07:50:51-05:00
  4. draft: false
  5. ---
  6. {{% resume/section "Work Experience" %}}<!--- {{{ -->
  7. {{% resume/work-experience name="Red Hat"
  8. title="Cloud/Software Engineer Intern" date="May 2020 — Aug 2021" %}}
  9. - Reduced deployment time by **66%** by [implementing ability](https://github.com/apache/incubator-kie-kogito-operator/commit/175a6356c5474f2360ccb8ae835e0b9b2d653cf1) to
  10. deploy locally-compiled binaries onto **Kubernetes**/**OpenShift**
  11. using only command-line.
  12. - Implemented ability for Kubernetes operator to fetch data
  13. from a deployed service and update config with data.
  14. - Added startup probes to handle starting legacy application containers that require additional startup time.
  15. - Refactored probes to [have default values](https://github.com/apache/incubator-kie-kogito-operator/commit/af4977af228ec8648be28779259d4552246b656f) assigned based on
  16. deployed YAML while also fixing reconciliation issues.
  17. - Automated the promotion and release process
  18. as part of the **Jenkins** [release pipeline](https://github.com/apache/incubator-kie-kogito-pipelines/commit/4c83f1aecdea2c1ba2796b79839a90d4083dce88).
  19. - Wrote [documentation](https://github.com/apache/incubator-kie-kogito-operator/blob/1534c03d1d26bec08a16608a775782bf8b305de9/docs/GUIDE_FOR_KOGITO_DEVS.md) on how to get started with the project to onboard new
  20. developers and mentored the incoming intern.
  21. {{% /resume/section %}}<!--- }}} -->
  22. {{% resume/section projects %}}<!--- {{{ -->
  23. <!--- AWS {{{ -->
  24. {{% resume/project name="AWS Server/Kubernetes"
  25. url="https://kevin-mok.com/server/" date="May 2024" show="true" %}}
  26. - Deployed [various web apps](https://kevin-mok.com/server/) using **Docker** (Compose) and on an
  27. **AWS EC2** Debian/**Linux** server.
  28. - Created **Kubernetes** [manifest files](https://github.com/Kevin-Mok/aws-minicube) to quickly recreate my server setup
  29. with persistent storage/restarts and open ports.
  30. - Used Amazon Route 53's DNS and **NGINX** to route
  31. subdomains to each web application.
  32. - Used AWS security groups to allow inbound HTTPS traffic.
  33. - Used Amazon EBS snapshots to regularly back up server.
  34. - Wrote a [**JavaScript** script][server script] and [systemd service][systemd service]/[timer]
  35. to display the uptime of my pages every hour.
  36. [server script]: https://git.kevin-mok.com/Kevin-Mok/server-pages/src/branch/master/server-status.js
  37. [systemd service]: https://git.kevin-mok.com/Kevin-Mok/server-pages/src/branch/master/server-pages.service
  38. [timer]: https://git.kevin-mok.com/Kevin-Mok/server-pages/src/branch/master/server-pages.timer
  39. {{% /resume/project %}}
  40. <!--- AWS }}} -->
  41. <!--- Rarity Surf {{{ -->
  42. {{% resume/project name="Rarity Surf"
  43. date="Oct 2021" show="true" %}}
  44. - Web app to give rarity rankings to NFT's within minutes of their metadata being revealed and check which are listed (based on rarity and price filters) on the OpenSea marketplace using their API.
  45. - Reverse engineered the ranking algorithm to match the
  46. leading rarity ranking site's rankings (scraped using
  47. Selenium) with a **discrepancy of <0.25%**.
  48. - Used app to frontrun purchases of **top 5%** rarity NFT's
  49. against competing buyers.
  50. - Wrote **Django (Python)** backend to fetch metadata from IPFS, store rarity rankings in PostgreSQL and serve rarity data using GraphQL.
  51. - Wrote **React** frontend with hooks to dynamically load rarity data. Styled with Tailwind.
  52. {{% /resume/project %}}
  53. <!--- Rarity Surf }}} -->
  54. <!--- Astronofty {{{ -->
  55. {{% resume/project name="Astronofty"
  56. url="https://github.com/Kevin-Mok/astronofty" date="Jan 2023"
  57. show="true" %}}
  58. - Created for a 36 hour hackathon (UofTHacks X) where it [**came 2nd overall**](https://devpost.com/software/astronofty).
  59. - Created and deployed a smart contract with **Solidity** on
  60. the Ethereum blockchain to create/buy/sell NFT's
  61. using MetaMask.
  62. - Wrote a **React** hook to fetch and show listed NFT's, NFT details and owned NFT's.
  63. - Used API to synchronously upload images and metadata to IPFS.
  64. {{% /resume/project %}}
  65. <!--- Astronofty }}} -->
  66. {{% /resume/section %}}<!--- }}} -->
  67. {{% resume/section skills %}}<!--- {{{ -->
  68. AWS, Kubernetes, Docker (Compose), **JavaScript**, **React**, **Python**, Go, Bash, Solidity, C, **Django**, Node.js, Jenkins, PostgreSQL, **Linux**, **Git**, **Command Line**
  69. {{% /resume/section %}}<!--- }}} -->
  70. {{% resume/section education %}}<!--- {{{ -->
  71. {{% resume/education name="University of Toronto"
  72. title="Computer Science Specialist — 3.84 GPA (CS). Graduated with High Distinction." date="2018 — 2023" %}}
  73. {{% /resume/section %}}<!--- }}} -->
  74. {{% resume/section "References" %}}<!--- {{{ -->
  75. {{% resume/references %}}
  76. {{% /resume/section %}}<!--- }}} -->
  77. <!-- vim: fdm=marker -->