Compare commits

..

3 Commits

Author SHA1 Message Date
3bfe3642eb Update 2024-12-28 10:43:16 -05:00
b00256bb08 Improved AWS resume 2024-10-08 10:45:53 -04:00
6f4d260885 latex-resume-aws-web-dev 2024-10-01 14:20:48 -04:00
8 changed files with 117 additions and 233 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.59; line-height: 1.57;
// 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,25 +639,15 @@ header {// {{{
} }
.project-header { .project-header {
display: flex; // margin-bottom: .6em;
align-items: baseline; // margin-bottom: .1em;
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 {
@@ -719,10 +709,8 @@ header {// {{{
} }
.languages { .languages {
font-weight: normal; // font-style: italic;
font-style: normal; // font-size: .9em;
margin-left: 0.5em;
color: $base03;
} }
.institution { .institution {

View File

@@ -6,106 +6,92 @@ 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 2022 — Aug 2023" %}} title="Cloud/Software Engineer Intern" languages="Kubernetes, GoLang, Jenkins" date="May 2020 — Aug 2021" %}}
- **Provided Tier 1 and Tier 2 support**, resolving - **Reduced deployment time by 66%** by implementing a
user-reported issues with CI/CD pipelines and Kubernetes [solution](https://github.com/apache/incubator-kie-kogito-operator/commit/175a6356c5474f2360ccb8ae835e0b9b2d653cf1) for deploying locally-compiled binaries onto
environments, resulting in a **40% faster average response Kubernetes/OpenShift via command-line, **cutting average
time**. deployment times from 45 minutes to 15 minutes**.
- **Authored clear, user-friendly documentation** that (**Kubernetes/GoLang** used for this and three below).
translated complex technical processes into - **Eliminated 80% of manual configuration errors** by enabling
step-by-step guides, **accelerating onboarding by the Kubernetes operator to automatically fetch data from
50%** and enabling non-technical stakeholders to deployed services and update configurations, **deprecating
self-serve. legacy startup scripts and reducing overall startup time
by 40%**.
- **Improved application stability** by introducing startup
probes for legacy applications with longer boot times,
**resulting in a 50% reduction in startup-related failures
and downtime during production launches**.
- **Enhanced system reliability** by refactoring probes to
[assign default values](https://github.com/apache/incubator-kie-kogito-operator/commit/af4977af228ec8648be28779259d4552246b656f) dynamically based on deployed YAML
files and fixing reconciliation issues, **increasing probe accuracy by 30%** and preventing misconfigurations.
- **Increased CI pipeline efficiency** by rewriting the
**Jenkins (Groovy)** [nightly pipeline](https://github.com/apache/incubator-kie-kogito-pipelines/commit/4c83f1aecdea2c1ba2796b79839a90d4083dce88) to run in a GitHub PR
environment, allowing for automated testing of all
team-submitted PRs prior to merging, **reducing manual
intervention by 60%**.
- **Demonstrated leadership and collaboration** by actively - **Demonstrated leadership and collaboration** by actively
contributing to **Agile** sprint planning in a 12-member team, contributing to Agile sprint planning in a 12-member team,
driving improvement in sprint velocity through driving improvement in sprint velocity through
optimized task delegation and idea generation. optimized task delegation and idea generation.
- **Collaborated with QA and DevOps teams** to document - **Increased project reproducibility** by taking initiative to
root causes of startup failures in legacy systems, write a [reusable GitHub parameters file](https://github.com/apache/incubator-kie-kogito-pipelines/commit/4c83f1aecdea2c1ba2796b79839a90d4083dce88#diff-7d2c018dafbccec859077d19bf1ade53ec9c7649f235528ce89f5632b109f7e6) for the pipeline,
implementing dynamic probes that **cut production **enabling 100% reusability** and ensuring consistent pipeline
launch issues by 50%**. setups across different environments.
- **Diagnosed and resolved 80% of configuration - **Streamlined developer onboarding** by authoring
errors** in Kubernetes deployments by automating data comprehensive [project documentation](https://github.com/apache/incubator-kie-kogito-operator/blob/1534c03d1d26bec08a16608a775782bf8b305de9/docs/GUIDE_FOR_KOGITO_DEVS.md) and mentoring an
fetching and validation, **reducing system downtime incoming intern, **reducing onboarding time by 50%** and
by 40%** and improving reliability for end-users. enhancing new team members' productivity within their
- **Reduced deployment-related support tickets by 66%** first sprint.
by developing a CLI tool to automate Kubernetes
binary deployments, with documented troubleshooting {{% /resume/section %}}<!--- }}} -->
procedures that cut resolution time from 45 to 15
minutes. {{% resume/section projects %}}<!--- {{{ -->
- **Decreased configuration error escalations by 30%**
through dynamic probe defaults and created knowledge <!--- AWS {{{ -->
base articles enabling Tier 1 support to resolve most
probe issues independently. {{% 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](https://kevin-mok.com/server/)**
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](https://github.com/Kevin-Mok/terraform-deploys/tree/main) to deploy AWS EC2 instances and Docker
containers, **accelerating deployment times by 80%** and
providing an easily reproducible infrastructure setup.
- **Improved web application accessibility** by
configuring **AWS Route 53**s DNS and **NGINX** to route
subdomains to individual web apps, **enabling seamless
navigation between apps**.
- **Built a uptime monitoring system** by writing a
[JavaScript script](https://git.kevin-mok.com/Kevin-Mok/server-pages/src/branch/master/server-pages.service) and setting up a systemd
service/timer to check and display page uptime,
**ensuring near real-time monitoring and reducing downtime
time by 95%**.
- **Optimized cloud security** by configuring AWS security
groups to allow inbound HTTPS traffic, **improving system
accessibility while maintaining secure data transmission**,
resulting in a **50% reduction in data interference
attempts**.
- **Enhanced data resilience** by automating regular backups
using Amazon EBS snapshots, ensuring **99.9% uptime and data
integrity** by creating consistent and reliable backups,
**reducing potential data loss by 95%** in disaster scenarios.
{{% /resume/project %}}
<!--- AWS }}} -->
{{% /resume/section %}}<!--- }}} --> {{% /resume/section %}}<!--- }}} -->
{{% resume/section skills %}}<!--- {{{ --> {{% resume/section skills %}}<!--- {{{ -->
- **Data Entry**: 120 WPM, Microsoft 365 (Office/Excel) AWS, Kubernetes, Terraform, Docker (Compose), Jenkins, Groovy, Go(Lang), Bash, **Linux**, **JavaScript**, **React**, **Python**, **Django**, Node.js, PostgreSQL, MongoDB, Solidity, C, **Git**, **Command Line**
- **Customer Support**: Tier 1/2 Troubleshooting, Cross-team Collaboration,
Communication, Documentation
- **Programming**: Python, Go, JavaScript, TypeScript, AWS, PostgreSQL, Linux, React, Django
{{% /resume/section %}}<!--- }}} --> {{% /resume/section %}}<!--- }}} -->
{{% resume/section "Web Dev Projects" %}}<!--- {{{ -->
<!--- Rarity Surf {{{ -->
{{% resume/project name="Rarity Surf"
languages="TypeScript, JavaScript, Node.js, React"
date="March 2025" show="true" %}}
- **Provided direct user support** for a live NFT analytics
platform, resolving front-end filtering bugs and API
integration issues in real-time.
- **Developed a full-stack web application with PostgreSQL database** to analyze NFT rarity rankings, increasing market research efficiency by 80%.
- **Translated user requests into technical features**, implementing real-time PostgreSQL-powered filters that improved usability for non-technical traders.
{{% /resume/project %}}
<!--- Rarity Surf }}} -->
<!--- {{{ Astronofty -->
{{% 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 %}}
<!--- }}} Astronofty -->
<!--- {{{ Kanban -->
{{% resume/project name="Kanban Calendar"
url="https://github.com/Kevin-Mok/astronofty"
languages="TypeScript, JavaScript, React, Next.js" date="Feb 2025"
show="true" %}}
- **Resolved UI bugs and cross-device compatibility
issues**, contributing documentation for consistent
reproduction and team-wide fixes.
- **Built and maintained a [responsive calendar interface](https://kanban-calendar-lake.vercel.app/)**,
enhancing productivity for users managing personal and
professional tasks.
{{% /resume/project %}}
<!--- }}} Kanban -->
{{% /resume/section %}}<!--- }}} -->
{{% resume/section education %}}<!--- {{{ --> {{% resume/section education %}}<!--- {{{ -->
{{% resume/education name="University of Toronto (St. George)" {{% resume/education name="University of Toronto (St. George)"
@@ -113,7 +99,7 @@ title="Computer Science Specialist — 3.84 GPA (CS). Graduated with High Distin
{{% /resume/section %}}<!--- }}} --> {{% /resume/section %}}<!--- }}} -->
{{% resume/section "Referral" %}}<!--- {{{ --> {{% resume/section "References" %}}<!--- {{{ -->
{{% resume/references %}} {{% resume/references %}}

View File

@@ -1,39 +0,0 @@
# 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

@@ -52,40 +52,23 @@ date="Oct 2021" show="true" %}}
<!--- Rarity Surf }}} --> <!--- Rarity Surf }}} -->
<!--- Rarity Surf {{{ --> <!--- Rarity Surf (short) {{{ -->
{{% resume/project name="Rarity Surf (2)" {{% resume/project name="Rarity Surf"
languages="Typescript, Node.js, React" languages="Python, JavaScript, React, Django"
date="" show="true" %}} date="Oct 2021" show="true" %}}
- **Architected a robust Django (Python) [backend](https://github.com/Kevin-Mok/rarity-surf)** store NFT 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%**.
- **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 %}}
<!--- Rarity Surf }}} --> <!--- Rarity Surf (short) }}} -->
<!--- Astronofty {{{ --> <!--- Astronofty {{{ -->
@@ -107,30 +90,6 @@ show="true" %}}
{{% resume/project name="AWS Server" {{% resume/project name="AWS Server"
url="https://kevin-mok.com/server/" languages="AWS, Kubernetes, Docker, Terraform" date="May 2024" show="true" %}} url="https://kevin-mok.com/server/" languages="AWS, Kubernetes, Docker, Terraform" date="May 2024" show="true" %}}
- Deployed [various web apps](https://kevin-mok.com/server/) using **Docker** (Compose) on an
**AWS EC2** Debian/**Linux** server.
- Created **Kubernetes** [manifest files](https://github.com/Kevin-Mok/aws-minicube) to quickly recreate my server setup
with persistent storage/restarts and open ports.
- Created **Terraform** [files](https://github.com/Kevin-Mok/terraform-deploys/tree/main)
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][systemd service]/[timer]
to display the uptime of my pages every hour.
[server script]: https://git.kevin-mok.com/Kevin-Mok/server-pages/src/branch/master/server-status.js
[systemd service]: https://git.kevin-mok.com/Kevin-Mok/server-pages/src/branch/master/server-pages.service
[timer]: https://git.kevin-mok.com/Kevin-Mok/server-pages/src/branch/master/server-pages.timer
{{% /resume/project %}}
<!--- 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** - **Deployed and maintained multiple web applications**
using **Docker Compose** on **AWS EC2 Debian/Linux servers**, using **Docker Compose** on **AWS EC2 Debian/Linux servers**,
ensuring consistent environments for applications handling ensuring consistent environments for applications handling
@@ -144,38 +103,20 @@ url="https://kevin-mok.com/server/" languages="AWS, Kubernetes, Docker, Terrafor
containers, **accelerating deployment times by 80%** and containers, **accelerating deployment times by 80%** and
providing an easily reproducible infrastructure setup for providing an easily reproducible infrastructure setup for
future projects. future projects.
- Improved web application accessibility and scalability by - **Improved web application accessibility** by
configuring Amazon Route 53s DNS and NGINX to route configuring **AWS Route 53**s DNS and **NGINX** to route
subdomains to individual web apps, enabling seamless subdomains to individual web apps, **enabling seamless
navigation between apps and reducing DNS resolution times navigation between apps**.
by 25%. - **Built a uptime monitoring system** by writing a
- Built a robust uptime monitoring system by writing a [JavaScript script](https://git.kevin-mok.com/Kevin-Mok/server-pages/src/branch/master/server-pages.service) and setting up a systemd
JavaScript server script and setting up a systemd service/timer to check and display page uptime,
service/timer to check and display page uptime every hour, **ensuring near real-time monitoring and reducing downtime
ensuring near real-time monitoring and reducing downtime time by 95%**.
detection time by 85%.
{{% /resume/project %}} {{% /resume/project %}}
<!--- AWS 2 }}} --> <!--- AWS }}} -->
<!--- 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) {{{ --> <!--- Astronofty (extended) {{{ -->

View File

@@ -20,4 +20,6 @@
2. Created Kubernetes manifest files to quickly recreate my server setup with persistent storage/restarts and open ports. 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. 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. 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. 5. Used AWS security groups to allow inbound HTTPS traffic.
6. Used Amazon EBS snapshots to regularly back up server.
6. Wrote a JavaScript server script and systemd service/timer to display the uptime of my pages every hour.

View File

@@ -2,8 +2,9 @@
<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" }} <span class="languages">&lt;{{ .Get "languages" }}&gt;</span> {{ .Get "name" }}
</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>

View File

@@ -1,5 +1,10 @@
<div class="references"> <div class="references">
<span> <span>
Referred to job by Stephanie Te (stephanie.te@verisk.com). See my LinkedIn for
<a href="https://www.linkedin.com/in/kev-mok/details/recommendations/?detailScreenTabIndex=0"
target="_blank">
references</a> from my
Red Hat managers/mentee, a startup client and a graduate
student mentor.
</span> </span>
</div> </div>