This commit is contained in:
eggy 2024-05-14 03:12:55 -04:00
parent 23fc909827
commit 8af1d2ff70

View File

@ -30,30 +30,14 @@
= Skills = Skills
#indent[ #indent[
*Languages:* Python, TypeScript, JavaScript, SQL, Rust, C++, Java, HTML, CSS \ *Languages:* Python, C/C++, VHDL, MATLAB, Rust, Java, SQL \
// Dart, Ruby
*Frameworks:* React, Node.js, Vue, Flutter, Spring Boot, Next.js, Express,
Prisma, Axum \
// Qt, Jest / Pytest, Apollo, Prisma, Rails // Qt, Jest / Pytest, Apollo, Prisma, Rails
*Tools:* Linux, Git, Docker, PostgreSQL, AWS/GCP, Redis, Kubernetes, Terraform, *Tools:* Linux, Git, PostgreSQL, Qt, STM32
GraphQL, nginx // Jenkins, systemd, Jira
] ]
= Experience = Experience
#indent[ #indent[
// #work_entry(
// "Technical Volunteer",
// "Organization for Transformative Works",
// start_date: "Feb 2024",
// end_date: "present",
// location: "Remote",
// tools: "Python, Ruby on Rails, React, MySQL",
// tasks: (
// [Upgrading archive import pipelines to migrate 4000+ user works to be accessible
// to *7 million registered users*],
// ),
// )
#work_entry( #work_entry(
"Software Developer Intern", "Software Developer Intern",
@ -87,9 +71,6 @@
[Owned and launched a HubSpot/Airtable to Google Sheets sync feature to *46000+ [Owned and launched a HubSpot/Airtable to Google Sheets sync feature to *46000+
enterprise users* by writing AWS Lambda functions in Python, abstracting enterprise users* by writing AWS Lambda functions in Python, abstracting
interfaces to easily support future sources], interfaces to easily support future sources],
[Wrote and deployed a new *React* data query builder for our business
intelligence visualisation service to *33000+ users*, eliminating the need for
clients to manually write API calls or Python code],
[Designed a conflict resolution algorithm for merging databases, *reducing [Designed a conflict resolution algorithm for merging databases, *reducing
unrecoverable errors by 75%*], unrecoverable errors by 75%*],
[Developed a *serverless microservice* that asynchronously ingests email [Developed a *serverless microservice* that asynchronously ingests email
@ -127,16 +108,20 @@
#indent[ #indent[
#project( #project(
"Mandown Comic Downloader", "Box Box Revolution",
"Python, Qt", "Rust, STM32",
repo_link: "https://github.com/potatoeggy/mandown", repo_link: "https://github.com/potatoeggy/boxboxrevolution",
) )
- Created a CLI and GUI to scrape, download, and convert webcomics into - Created a rhythm game to detect punches with an ultrasonic sensor in time with
e-ink-optimised ebooks (EPUB, PDF) notes of popular songs
- Designed a *scalable data conversion system* via a canonical format, allowing - Developed firmware to measure from an ultrasonic sensor, tone a buzzer, and show
any format to convert to any other scrolling notes on an LCD
- Implemented *image caching and multithreading* to increase download and update
speeds by *300%* #project("Climate Controller", "ARM Assembly")
- Programmed an FPGA to heat/cool a theoretical room to a target temperature given
switch-controlled inputs
- Added conditions such as avoiding changes if windows are open, vacation mode,
and realistic heating curves
#project( #project(
"Kobo Sync Server", "Kobo Sync Server",
@ -148,6 +133,18 @@
- 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 allow
syncing over the internet syncing over the internet
#project(
"Mandown Comic Downloader",
"Python, Qt",
repo_link: "https://github.com/potatoeggy/mandown",
)
- Created a CLI and GUI to scrape, download, and convert webcomics into
e-ink-optimised ebooks (EPUB, PDF)
- Designed a *scalable data conversion system* via a canonical format, allowing
any format to convert to any other
- Implemented *image caching and multithreading* to increase download and update
speeds by *300%*
// #project( // #project(
// "Genshin Rewards Simulator", // "Genshin Rewards Simulator",
// "Vue, TypeScript", // "Vue, TypeScript",
@ -159,17 +156,6 @@
// - Reduced action latency by *90%* by lazily loading art assets at opportune times, // - Reduced action latency by *90%* by lazily loading art assets at opportune times,
// such as during cutscenes // such as during cutscenes
#project(
"Jeopardy!",
"Vue, TypeScript, WebSockets",
repo_link: "https://github.com/potatoeggy/jeopardy",
demo_link: "https://jeopardy.eggworld.me/host",
)
- Created a beautiful and polished remote game where participants buzz in on their
devices over WebSockets
- Synchronised game state between clients and the host with shared TypeScript
types and the observer pattern
// #project( // #project(
// "RecipeReady", // "RecipeReady",
// "https://github.com/vincentjguo/recipeready-server", // "https://github.com/vincentjguo/recipeready-server",
@ -197,6 +183,7 @@
// with *SDL2* and *Vulkan* // with *SDL2* and *Vulkan*
// - WebGPU and WASM for portability, typestate to guarantee everything is always // - WebGPU and WASM for portability, typestate to guarantee everything is always
// valid // valid
] ]
= Education = Education