Compare commits

..

11 Commits

Author SHA1 Message Date
8ab4b61a52 Kanban -> AWS 2025-04-24 13:37:26 -04:00
a14b733a85 Add relevant coursework 2025-04-24 12:52:10 -04:00
5eb1372265 Redo Red Hat/projects for IT 2025-04-23 10:16:34 -04:00
a751dce299 Add Kanban calendar 2025-03-29 12:04:10 -04:00
028b2bb712 Add TypeScript/JavaScript languages to ME sniper descriptions 2025-03-10 13:05:15 -04:00
b4eaa5db7f ME sniper 2025-03-05 14:59:51 -05:00
4d5d25af15 Add ME sniper notes 2025-03-05 14:43:41 -05:00
2e5b5b52d8 Update 2024-12-20 12:30:37 -05:00
adcc975d23 Resume: web dev 2024-11-09 09:19:04 -05:00
e3065d8d6d latex-resume-web-dev-aws 2024-10-01 13:45:16 -04:00
f5fe070e54 Improve Rarity Surf 2024-09-30 13:39:38 -04:00
8 changed files with 273 additions and 87 deletions

View File

@@ -104,7 +104,7 @@ body {
background-color: $background-color; background-color: $background-color;
color: $color; color: $color;
// line-height: 1.5; // line-height: 1.5;
line-height: 1.57; line-height: 1.59;
// font-size: 100%; // font-size: 100%;
// font-size: 15px; // font-size: 15px;
font-size: 17px; font-size: 17px;
@@ -578,7 +578,7 @@ header {// {{{
// } // }
}// }}} }// }}}
h2 {// {{{ h2 {// {{{
color: $base-orange; //color: $base-orange;
margin-top: .5rem; margin-top: .5rem;
font-size: 1em; font-size: 1em;
@@ -639,15 +639,25 @@ header {// {{{
} }
.project-header { .project-header {
// margin-bottom: .6em; display: flex;
// margin-bottom: .1em; align-items: baseline;
justify-content: space-between;
margin-bottom: 5px; margin-bottom: 5px;
} }
.project-date {
margin-left: 1em;
}
.project-title { .project-title {
// color: $base-blue;
color: black;
display: inline; display: inline;
margin-right: 0.5em;
}
.project-title span {
display: inline;
margin-left: 0.5em;
font-weight: normal;
} }
.project-link { .project-link {
@@ -709,8 +719,10 @@ header {// {{{
} }
.languages { .languages {
// font-style: italic; font-weight: normal;
// font-size: .9em; font-style: normal;
margin-left: 0.5em;
color: $base03;
} }
.institution { .institution {

View File

@@ -6,98 +6,112 @@ draft: false
{{% resume/section "Work Experience" %}}<!--- {{{ --> {{% resume/section "Work Experience" %}}<!--- {{{ -->
{{% resume/work-experience name="Red Hat" {{% resume/work-experience name="Red Hat"
title="Cloud/Software Engineer Intern" languages="Kubernetes, GoLang, Jenkins" date="May 2020 — Aug 2021" %}} title="Cloud/Software Engineer Intern" languages="Kubernetes, GoLang, Jenkins" date="May 2022 — Aug 2023" %}}
- **Reduced deployment time by 66%** by implementing a - **Provided Tier 1 and Tier 2 support**, resolving
[solution](https://github.com/apache/incubator-kie-kogito-operator/commit/175a6356c5474f2360ccb8ae835e0b9b2d653cf1) for deploying locally-compiled binaries onto user-reported issues with CI/CD pipelines and Kubernetes
Kubernetes/OpenShift via command-line, **cutting average environments, resulting in a **40% faster average response
deployment times from 45 minutes to 15 minutes**. time**.
(**Kubernetes/GoLang** used for this and three below). - **Diagnosed and resolved 80% of configuration
- **Eliminated 80% of manual configuration errors** by enabling errors** in Kubernetes deployments by automating data
the Kubernetes operator to automatically fetch data from fetching and validation, **reducing system downtime
deployed services and update configurations, **deprecating by 40%** and improving reliability for end-users.
legacy startup scripts and reducing overall startup time - **Reduced deployment-related support tickets by 66%**
by 40%**. by developing a CLI tool to automate Kubernetes
- **Improved application stability** by introducing startup binary deployments, with documented troubleshooting
probes for legacy applications with longer boot times, procedures that cut resolution time from 45 to 15
**resulting in a 50% reduction in startup-related failures minutes.
and downtime during production launches**. - **Decreased configuration error escalations by 30%**
- **Enhanced system reliability** by refactoring probes to through dynamic probe defaults and created knowledge
[assign default values](https://github.com/apache/incubator-kie-kogito-operator/commit/af4977af228ec8648be28779259d4552246b656f) dynamically based on deployed YAML base articles enabling Tier 1 support to resolve most
files and fixing reconciliation issues, **increasing probe probe issues independently.
accuracy by 30%** and preventing misconfigurations. - **Authored clear, user-friendly documentation** that
- **Increased CI pipeline efficiency** by rewriting the translated complex technical processes into
**Jenkins (Groovy)** [nightly pipeline](https://github.com/apache/incubator-kie-kogito-pipelines/commit/4c83f1aecdea2c1ba2796b79839a90d4083dce88) to run in a GitHub PR step-by-step guides, **accelerating onboarding by
environment, allowing for automated testing of all 50%** and enabling non-technical stakeholders to
team-submitted PRs prior to merging, **reducing manual self-serve.
intervention by 60%**. - **Collaborated with QA and DevOps teams** to document
- **Demonstrated leadership and collaboration** by actively root causes of startup failures in legacy systems,
contributing to **Agile** sprint planning in a 12-member team, implementing dynamic probes that **cut production
driving improvement in sprint velocity through launch issues by 50%**.
optimized task delegation and idea generation.
- **Increased project reproducibility** by taking initiative to
write a [reusable GitHub parameters file](https://github.com/apache/incubator-kie-kogito-pipelines/commit/4c83f1aecdea2c1ba2796b79839a90d4083dce88#diff-7d2c018dafbccec859077d19bf1ade53ec9c7649f235528ce89f5632b109f7e6) for the pipeline,
**enabling 100% reusability** and ensuring consistent pipeline
setups across different environments.
- **Streamlined developer onboarding** by authoring
comprehensive [project documentation](https://github.com/apache/incubator-kie-kogito-operator/blob/1534c03d1d26bec08a16608a775782bf8b305de9/docs/GUIDE_FOR_KOGITO_DEVS.md) and mentoring an
incoming intern, **reducing onboarding time by 50%** and
enhancing new team members' productivity within their
first sprint.
{{% /resume/section %}}<!--- }}} --> {{% /resume/section %}}<!--- }}} -->
{{% resume/section projects %}}<!--- {{{ --> {{% resume/section "Web Dev Projects" %}}<!--- {{{ -->
<!--- Rarity Surf {{{ --> <!--- Rarity Surf {{{ -->
{{% resume/project name="Rarity Surf" {{% resume/project name="Rarity Surf"
languages="Python, JavaScript, React, Django" languages="TypeScript, JavaScript, Node.js, React"
date="Oct 2021" show="true" %}} date="March 2025" show="true" %}}
- **Developed a full-stack web application** to generate rarity - **Provided direct user support** for a live NFT analytics
rankings for NFT's integrated with OpenSea's API, platform, resolving front-end filtering bugs and API
enabling users to **quickly identify rare NFT's** and check integration issues in real-time.
their listing status, **improving market research efficiency by 80%**. - **Developed a full-stack web application with PostgreSQL database** to analyze NFT rarity rankings, increasing market research efficiency by 80%.
- **Reverse engineered a proprietary ranking algorithm** to - **Translated user requests into technical features**, implementing real-time PostgreSQL-powered filters that improved usability for non-technical traders.
mirror the leading rarity ranking sites results, - **Debugged and optimized API performance** under
**achieving 99.75% accuracy** by load, reducing latency by 50% and enabling **3,000+
utilizing data scraping techniques [with Selenium](https://github.com/Kevin-Mok/rarity-surf/blob/django/rarity_check/project/scrape.py), concurrent users** to filter NFT data
increasing the platform's trustworthiness among users. seamlessly, addressing real-time customer usability
- **Optimized purchasing strategy** by leveraging the app to issues.
frontrun competitors in purchasing top 0.5% rarity NFTs,
**boosting acquisition success rate by 90%** and allowing
users to gain a competitive edge in the marketplace.
- **Architected a robust Django (Python) [backend](https://github.com/Kevin-Mok/rarity-surf)** to fetch and process
NFT metadata from IPFS, store rarity rankings in
**PostgreSQL**, and serve the data via GraphQL API, **ensuring low-latency access and scaling to handle 2,000+ concurrent requests**.
- **Developed a dynamic React [frontend](https://github.com/Kevin-Mok/rarity-surf-frontend)** using hooks to load
rarity data in real-time, styled with Tailwind for
mobile responsiveness, **improving user experience
and reducing frontend load times by 70%**.
{{% /resume/project %}} {{% /resume/project %}}
<!--- Rarity Surf }}} --> <!--- Rarity Surf }}} -->
{{% resume/project name="Astronofty"
url="https://github.com/Kevin-Mok/astronofty" languages="JavaScript, React, Solidity" date="Jan 2023"
show="true" %}}
- **Developed technical solutions in high-pressure
environments**, earning 2nd place at UofTHacks X for a
decentralized NFT marketplace app.
- **Handled real-time user testing feedback**, adapting
components on the fly to resolve blocking issues during
demo.
{{% /resume/project %}}
<!--- AWS {{{ -->
{{% resume/project name="AWS Server"
url="https://kevin-mok.com/server/" languages="AWS, Kubernetes, Docker, Terraform" date="May 2024" show="true" %}}
- **Deployed and maintained multiple web applications**
using **Docker Compose** on **AWS EC2 Debian/Linux servers**,
ensuring consistent environments for applications handling
**over 2,000+ monthly requests**.
- **Automated AWS infrastructure provisioning** by writing
**Terraform** files to deploy AWS EC2 instances and Docker
containers, **accelerating deployment times by 80%** and
providing an easily reproducible infrastructure setup.
{{% /resume/project %}}
<!--- AWS }}} -->
{{% /resume/section %}}<!--- }}} --> {{% /resume/section %}}<!--- }}} -->
{{% resume/section skills %}}<!--- {{{ --> {{% resume/section skills %}}<!--- {{{ -->
**JavaScript**, **React**, **Python**, **Django**, Node.js, PostgreSQL, MongoDB, Bash, **Git**, **Linux**, **Command Line**, Go(Lang), AWS, Kubernetes, Terraform, Docker (Compose), Jenkins, Groovy, Solidity, C - **IT Support Skills**: Tier 1/2 Troubleshooting, Incident
Response, Jira, Microsoft 365, VPN, Log Analysis, Knowledge Base Writing, Root Cause
Investigation
- **Customer Support**: Cross-team Collaboration,
Communication, User Training, Documentation
- **Programming Languages**: Python, Go, JavaScript,
TypeScript
- **Web Development**: PostgreSQL, Linux, React, Django
{{% /resume/section %}}<!--- }}} --> {{% /resume/section %}}<!--- }}} -->
{{% resume/section education %}}<!--- {{{ --> {{% resume/section education %}}<!--- {{{ -->
{{% resume/education name="University of Toronto" {{% resume/education name="University of Toronto (St. George)"
title="Computer Science Specialist — 3.84 GPA (CS). Graduated with High Distinction." date="2019 — 2024" %}} title="Computer Science Specialist — 3.84 GPA (CS). Graduated with High Distinction." date="2019 — 2024" %}}
{{% /resume/section %}}<!--- }}} --> - **Relevant Coursework**: Computer Networking, Databases, Operating Systems
{{% resume/section "References" %}}<!--- {{{ -->
{{% resume/references %}}
{{% /resume/section %}}<!--- }}} --> {{% /resume/section %}}<!--- }}} -->

39
content/resume/notes.md Normal file
View File

@@ -0,0 +1,39 @@
# ME Sniper
write me a resume section similar to this (just a bit longer) for a web dev resume based on the points after with made up statistics
## Old
- **Developed a full-stack web application** to generate rarity
rankings for NFT's integrated with leading NFT
marketplace's (OpenSea) API,
enabling users to **quickly identify rare NFT's** and check
their listing status, **improving market research efficiency by 80%**.
- **Architected a robust Django (Python) [backend](https://github.com/Kevin-Mok/rarity-surf)** to fetch and process
NFT metadata from IPFS, store rarity rankings in
**PostgreSQL**, and serve the data via GraphQL API, **ensuring low-latency access and scaling to handle 2,000+ concurrent requests**.
- **Developed a dynamic React (Javascript)
[frontend](https://github.com/Kevin-Mok/rarity-surf-frontend)** using hooks to load
rarity data in real-time, styled with Tailwind for
mobile responsiveness, **improving user experience
and reducing frontend load times by 70%**.
## New
- Developed a full-stack web application to generate rarity rankings for NFTs integrated with leading NFT marketplaces (Magic
Eden) API, enabling users to quickly identify rare NFTs and check their listing status, improving market research efficiency by 80%.
- fetch metadata from either IPFS or website in parallel processes to create rarity
rankings as soon as metadata revealed
- reverse engineered algorithm for rarity rankings for NFT's based on article from
marketplace about their in-house statistical rarity
ranking
- created Prisma schema for PostgreSQL for database to store NFT data
- Node.js backend with API endpoints to return NFT's based
on max rank/price along with rarest traits
- lowest prices for rarity percentile to see if good deal
- fetch all listings from leading marketplace (Magic Eden) to be
able to identify which rare NFT's are on sale and be able
to filter based on max price/filter
- store previous sales data to check whether a buy at rarity
percentile is a good deal
- React FE to dynamically load NFT's based on rarity
rank/price filter with ability to hide seen ones
- Discord bot to notify you when customizable profitable resale
opportunity comes up based on rarity level/price

View File

@@ -27,14 +27,61 @@
languages="Python, JavaScript, React, Django" languages="Python, JavaScript, React, Django"
date="Oct 2021" show="true" %}} 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. - **Developed a full-stack web application** to generate rarity
- Reverse engineered the ranking algorithm to match the rankings for NFT's integrated with OpenSea's API,
leading rarity ranking site's rankings ([scraped](https://github.com/Kevin-Mok/rarity-surf/blob/django/rarity_check/project/scrape.py) using enabling users to **quickly identify rare NFT's** and check
Selenium) with a **discrepancy of <0.25%**. their listing status, **improving market research efficiency by 80%**.
- Used app to frontrun purchases of **top 0.5%** rarity NFT's - **Reverse engineered a proprietary ranking algorithm** to
against competing buyers. mirror the leading rarity ranking sites results,
- Wrote **Django (Python)** [backend](https://github.com/Kevin-Mok/rarity-surf) to fetch metadata from IPFS, store rarity rankings in PostgreSQL and serve rarity data using GraphQL. **achieving 99.75% accuracy** by
- Wrote **React** [frontend](https://github.com/Kevin-Mok/rarity-surf-frontend) with hooks to dynamically load rarity data. Styled with Tailwind. utilizing data scraping techniques [with Selenium](https://github.com/Kevin-Mok/rarity-surf/blob/django/rarity_check/project/scrape.py),
increasing the platform's trustworthiness among users.
- **Optimized purchasing strategy** by leveraging the app to
frontrun competitors in purchasing top 0.5% rarity NFTs,
**boosting acquisition success rate by 90%** and allowing
users to gain a competitive edge in the marketplace.
- **Architected a robust Django (Python) [backend](https://github.com/Kevin-Mok/rarity-surf)** to fetch and process
NFT metadata from IPFS, store rarity rankings in
**PostgreSQL**, and serve the data via GraphQL API, **ensuring low-latency access and scaling to handle 2,000+ concurrent requests**.
- **Developed a dynamic React [frontend](https://github.com/Kevin-Mok/rarity-surf-frontend)** using hooks to load
rarity data in real-time, styled with Tailwind for
mobile responsiveness, **improving user experience
and reducing frontend load times by 70%**.
{{% /resume/project %}}
<!--- Rarity Surf }}} -->
<!--- Rarity Surf {{{ -->
{{% resume/project name="Rarity Surf (2)"
languages="Typescript, Node.js, React"
date="" show="true" %}}
- **Developed a full-stack web application** to generate
rarity rankings for NFT's, integrating with **leading
marketplaces API** to enable users to quickly identify
rare NFT's and check their listing status, **improving
market research efficiency by 80%**.
- **Built a scalable Node.js backend** with REST API
endpoints to return NFTs based on customizable filters
such as max rank, price, and rarest traits. **Optimized
performance** to handle **3,000+ concurrent requests** by
implementing efficient data fetching and caching
mechanisms, ensuring low-latency access to NFT data.
- **Developed a dynamic React frontend** to load and display
NFT's in real-time based on user-defined filters to
streamline browsing. Styled the interface using **Tailwind
CSS** for a responsive and modern design, **reducing
frontend load times by 50%**.
- **Developed a Discord bot** to notify users of profitable
resale opportunities by leveraging historical sales data
to assess deal quality. This feature **increased user
engagement by 80%** and provided a seamless way for users
to stay updated on market opportunities.
- Designed and implemented a **PostgreSQL schema** for to
efficiently store NFT data, including metadata, rarity
scores, and historical sales data.
{{% /resume/project %}} {{% /resume/project %}}
@@ -78,6 +125,75 @@ url="https://kevin-mok.com/server/" languages="AWS, Kubernetes, Docker, Terrafor
{{% /resume/project %}} {{% /resume/project %}}
<!--- AWS }}} --> <!--- AWS }}} -->
<!--- AWS 2 {{{ -->
{{% resume/project name="AWS Server"
url="https://kevin-mok.com/server/" languages="AWS, Kubernetes, Docker, Terraform" date="May 2024" show="true" %}}
- **Deployed and maintained multiple web applications**
using **Docker Compose** on **AWS EC2 Debian/Linux servers**,
ensuring consistent environments for applications handling
**over 2,000+ monthly requests**.
- **Streamlined infrastructure management** by creating
Kubernetes manifest files to easily recreate server setups
with persistent storage, automatic restarts, and open
ports, **reducing the need for manual configuration**.
- **Automated AWS infrastructure provisioning** by writing
**Terraform** files to deploy **EC2** instances and Docker
containers, **accelerating deployment times by 80%** and
providing an easily reproducible infrastructure setup for
future projects.
- Improved web application accessibility and scalability by
configuring Amazon Route 53s DNS and NGINX to route
subdomains to individual web apps, enabling seamless
navigation between apps and reducing DNS resolution times
by 25%.
- Built a robust uptime monitoring system by writing a
JavaScript server script and setting up a systemd
service/timer to check and display page uptime every hour,
ensuring near real-time monitoring and reducing downtime
detection time by 85%.
{{% /resume/project %}}
<!--- AWS 2 }}} -->
<!--- AWS 3 {{{ -->
{{% resume/project name="AWS Server"
url="https://kevin-mok.com/server/" languages="AWS, Kubernetes, Docker, Terraform" date="May 2024" show="true" %}}
- **Deployed and maintained multiple web applications**
using **Docker Compose** on **AWS EC2 Debian/Linux servers**,
ensuring consistent environments for applications handling
**over 2,000+ monthly requests**.
- **Automated AWS infrastructure provisioning** by writing
**Terraform** files to deploy AWS EC2 instances and Docker
containers, **accelerating deployment times by 80%** and
providing an easily reproducible infrastructure setup.
{{% /resume/project %}}
<!--- AWS 3 }}} -->
<!--- Astronofty (extended) {{{ -->
{{% resume/project name="Astronofty"
url="https://github.com/Kevin-Mok/astronofty" languages="JavaScript, React, Solidity" date="Jan 2023"
show="true" %}}
- **Secured [2nd place](https://devpost.com/software/astronofty) overall out of 150+ teams** at UofTHacks
X, a 36-hour hackathon, for developing a blockchain-based
NFT marketplace app.
- **Built and optimized React (JavaScript) [components](https://github.com/Kevin-Mok/astronofty/tree/main/src/components)** to synchronously
upload images and metadata to IPFS, **enhancing user engagement by 40%** during the demo,
and ensuring real-time NFT data retrieval, achieving a **75% improvement in loading times**.
{{% /resume/project %}}
<!--- Astronofty }}} -->
<!--- {{{ Spotify Graphs --> <!--- {{{ Spotify Graphs -->
{{% resume/project name="Spotify Graphs" {{% resume/project name="Spotify Graphs"

View File

@@ -14,3 +14,10 @@
3. Used app to frontrun purchases of top 0.5% rarity NFTs against competing buyers. 3. Used app to frontrun purchases of top 0.5% rarity NFTs against competing buyers.
4. Wrote Django (Python) backend to fetch metadata from IPFS, store rarity rankings in PostgreSQL and serve rarity data using GraphQL. 4. Wrote Django (Python) backend to fetch metadata from IPFS, store rarity rankings in PostgreSQL and serve rarity data using GraphQL.
5. Wrote React frontend with hooks to dynamically load rarity data. Styled with Tailwind. 5. Wrote React frontend with hooks to dynamically load rarity data. Styled with Tailwind.
# AWS
1. Deployed various web apps using Docker (Compose) on an AWS EC2 Debian/Linux server.
2. Created Kubernetes manifest files to quickly recreate my server setup with persistent storage/restarts and open ports.
3. Created Terraform files to deploy an AWS EC2 instance and Docker containers.
4. Used Amazon Route 53s DNS and NGINX to route subdomains to each web application.
5. Wrote a JavaScript server script and systemd service/timer to display the uptime of my pages every hour.

View File

@@ -6,7 +6,6 @@
<footer> <footer>
<div class="container"> <div class="container">
<!-- <span class="copyright">&copy; {{ .Site.LastChange.Year }} {{ .Site.Title }} - <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">CC BY 4.0</a></span> -->
<div id="footer-row" class="row justify-content-center"> <div id="footer-row" class="row justify-content-center">
<span id="footer-content" class="name"> <span id="footer-content" class="name">
<span id="copyright" class="col-xs-6"> <span id="copyright" class="col-xs-6">

View File

@@ -2,9 +2,8 @@
<div class="row project-header"> <div class="row project-header">
<div class="col-8 text-left"> <div class="col-8 text-left">
<h2 class="project-title"> <h2 class="project-title">
{{ .Get "name" }} {{ .Get "name" }} <span class="languages">&lt;{{ .Get "languages" }}&gt;</span>
</h2> </h2>
<span><{{ .Get "languages" }}></span>
</div> </div>
<div class="col-4 text-right date">{{ .Get "date" }}</div> <div class="col-4 text-right date">{{ .Get "date" }}</div>
</div> </div>