feat: content overhaul

This commit is contained in:
eggy 2024-06-17 21:28:48 -04:00
parent 1984d47151
commit 33f4f2520c
2 changed files with 45 additions and 42 deletions

View File

@ -66,16 +66,17 @@
tools: "Next.js, Spring Boot, PostgreSQL, AWS, Terraform", tools: "Next.js, Spring Boot, PostgreSQL, AWS, Terraform",
tasks: ( tasks: (
// [Improved client responsiveness by *80* by employing stale-while-revalidate hooks for caching and ?? SWR performance, caching, error handling], // [Improved client responsiveness by *80* by employing stale-while-revalidate hooks for caching and ?? SWR performance, caching, error handling],
[?? Performance: optimised dashboard responsiveness by SWR in React / TS, lazy [Optimised dashboard performance by *80%* by employing *stale-while-revalidate*
load with Hibernate, *reducing load times by 50%*], hooks in *React* and lazily loading backend models with Hibernate, improving
[?? owned feature for user to upload supplementary documents, *reducing support user retention by *30%*],
tickets by 30%* by automating document verification and storage (doc vault)], [Achieved SOC 2 security compliance by implementing *role-based permissions with
[?? Planned and executed a roadmap to SOC 2 security compliance by *implementing JWTs* in *Spring Boot*, logging alerts to CloudWatch, and introducing new
role-based permissions with JWTs in Java*, sending backend logs to CloudWatch, privacy controls for user data],
and introducing new privacy controls for user data], [Owned the creation of an end-to-end document vault feature for users to upload
[?? created a pipeline to deploy Lambdas from version control ?? *Introduced and verify supplementary identity documents with *Textract*, *reducing support
CI/CD for AWS Lambdas* by codifying them in Terraform for reproducible and tickets by 25%*],
automatic deployments], [Created CI/CD pipelines to automatically deploy AWS Lambdas with *Terraform* and
*Jenkins*],
), ),
) )
@ -87,15 +88,16 @@
location: "Remote", location: "Remote",
tools: "React, Python, PostgreSQL, AWS", tools: "React, Python, PostgreSQL, AWS",
tasks: ( tasks: (
[?? Owned and launched a HubSpot/Airtable to Google Sheets sync feature to [Owned the creation of a new feature to sync *46000+ enterprise users'*
*46000+ enterprise users* with AWS Lambda and Python], HubSpot/Airtable data to Google Sheets and emailed CSVs to databases with AWS
[?? Wrote and deployed a new *React* data query builder and Python backend for Lambda and *Python*],
our business intelligence visualisation service to *33000+ users*, eliminating [Engineered a new *React* data query builder and *FastAPI* backend for our
the need for clients to manually write API calls or Python code], business intelligence visualisation service to *33000+ users*, eliminating the
[Designed a conflict resolution algorithm for merging databases, *reducing need for clients to manually write API calls],
unrecoverable errors by 75%*], [Designed a conflict resolution algorithm to merge databases, reducing
[?? new tool dDeveloped a *serverless microservice* that asynchronously ingests *unrecoverable errors by 75%*],
email attachments directly into ETL pipelines], // [?? new tool dDeveloped a *serverless microservice* that asynchronously ingests
// email attachments directly into ETL pipelines],
// [??? emphasise test driven development or remove line *Reduced request errors by 30%* by creating backend testing infrastructure with // [??? emphasise test driven development or remove line *Reduced request errors by 30%* by creating backend testing infrastructure with
// *Pytest* to catch regressions and test new features across database engines with // *Pytest* to catch regressions and test new features across database engines with
// *90% code coverage*], // *90% code coverage*],
@ -110,14 +112,15 @@
location: "Waterloo, ON", location: "Waterloo, ON",
tools: "Express, Redis, GraphQL, Docker, Kubernetes", tools: "Express, Redis, GraphQL, Docker, Kubernetes",
tasks: ( tasks: (
[Shipped a new *bus registration tool* for attendees by creating new database [Built a new travel tool application leveraging *GraphQL* and *Apollo Server* to
tables and GraphQL resolvers], track bus capacity for *500+ attendees* through real-time registration processes],
[Created a real-time event statistics dashboard by implementing GraphQL [Streamlined event check-in times by *80%* for *1900+ guests* by generating
*subscriptions with Redis PubSub*], Apple/Google Wallet passes over *Express* and *Node.js*],
[?? tell story Diagnosed and *recovered from load spike crashes* by debouncing [Diagnosed and recovered from crashes due to load spikes up to *800k updates per
queries, using rate limiting as a stopgap], hour* at the world's largest student-run hackathon by autoscaling *Redis* and
[?? feature first Reduced event check-in times by *80%* for *1900+ attendees* by *Postgres* on *Kubernetes*],
generating digital wallet passes over Express], // [Upgraded the event statistics dashboard to update in real time with GraphQL
// *subscriptions with Redis PubSub*],
), ),
) )
] ]
@ -132,9 +135,9 @@
repo_link: "https://github.com/potatoeggy/mandown", repo_link: "https://github.com/potatoeggy/mandown",
) )
- Created a CLI and GUI to scrape, download, and convert webcomics into - Created a CLI and GUI to scrape, download, and convert webcomics into
e-ink-optimised ebooks (EPUB, PDF) e-ink-optimised PDF/EPUBs
- Designed a *scalable data conversion system* via a canonical format, allowing - Designed a scalable ebook converter with a *plugin-based architecture* to
any format to convert to any other improve compatibility
- Implemented *image caching and multithreading* to increase download and update - Implemented *image caching and multithreading* to increase download and update
speeds by *300%* speeds by *300%*
@ -143,10 +146,10 @@
"Rust, Axum", "Rust, Axum",
repo_link: "https://github.com/potatoeggy/kobink", repo_link: "https://github.com/potatoeggy/kobink",
) )
- *Reimplemented the Kobo Store Sync protocol* in an Axum backend to instead sync - Created an *Axum* backend to send custom files to Kobos by *reimplementing the
personal ebook files Kobo Sync API*
- Deployed the service behind an nginx reverse proxy and Cloudflare DNS to allow - Deployed the service behind an nginx reverse proxy and Cloudflare DNS to sync
syncing over the internet over the internet
// #project( // #project(
// "Genshin Rewards Simulator", // "Genshin Rewards Simulator",
@ -165,10 +168,10 @@
repo_link: "https://github.com/potatoeggy/jeopardy", repo_link: "https://github.com/potatoeggy/jeopardy",
demo_link: "https://jeopardy.eggworld.me/host", demo_link: "https://jeopardy.eggworld.me/host",
) )
- Created a beautiful and polished remote game where participants buzz in on their - Created a beautiful and polished game where participants buzz in on their
devices over WebSockets devices over *WebSockets*
- Synchronised game state between clients and the host with shared TypeScript - Synchronised game state between clients and the host with shared types and the
types and the observer pattern *observer pattern*
// #project( // #project(
// "RecipeReady", // "RecipeReady",
@ -203,8 +206,8 @@
#indent[ #indent[
#work_entry( #work_entry(
"University of Waterloo",
"B.A.Sc. in Computer Engineering", "B.A.Sc. in Computer Engineering",
"University of Waterloo",
start_date: "Sep 2022", start_date: "Sep 2022",
end_date: "Apr 2027", end_date: "Apr 2027",
location: "Waterloo, ON", location: "Waterloo, ON",

View File

@ -7,7 +7,7 @@
#let HEADING_FONT = TITLE_FONT #let HEADING_FONT = TITLE_FONT
#let BODY_FONT = "New Computer Modern" #let BODY_FONT = "New Computer Modern"
#let BODY_FONT_SIZE = 11pt #let BODY_FONT_SIZE = 11.5pt
#let HEADING_FONT_SIZE = 0.95em #let HEADING_FONT_SIZE = 0.95em
#let TITLE_FONT_SIZE = 2em #let TITLE_FONT_SIZE = 2em
@ -16,7 +16,7 @@
#let BODY_LINE_SPACING = 0.75em #let BODY_LINE_SPACING = 0.75em
// rest = not top // rest = not top
#let PAGE_MARGINS = (right: 0.4in, rest: 0.3in) #let PAGE_MARGINS = (right: 0.5in, rest: 0.4in)
// Format locations. // Format locations.
#let format_location(location) = { #let format_location(location) = {
@ -110,7 +110,7 @@
// Set name and contact data and format headings // Set name and contact data and format headings
#let template(name, color, doc) = { #let template(name, color, doc) = {
set page(margin: PAGE_MARGINS, paper: "us-letter") set page(margin: PAGE_MARGINS, paper: "us-letter")
set list(indent: 0.75em, marker: [•]) set list(indent: 0.65em, marker: [•])
set text(font: (BODY_FONT), BODY_FONT_SIZE) set text(font: (BODY_FONT), BODY_FONT_SIZE)
set par(leading: BODY_LINE_HEIGHT) set par(leading: BODY_LINE_HEIGHT)
align(center)[ align(center)[