#import "fontawesome.typ": * #import "lib.typ": template, education_entry, work_entry, project, indent, SMALL_STRONG, DEFAULT_STRONG #set page(margin: 1.75in) #set par(leading: 0.5em, first-line-indent: 1.8em, justify: true) #show par: set block(spacing: 0.55em) #show heading: set block(above: 2em, below: 1em) #set list(indent: 1em) // Change the theme color of the cv. #let color = rgb("#ff983e") #let name = "Daniel Chen" #let contact_data = ( ( service: fa[#globe], display: "eggworld.me", link: "https://eggworld.me" ), ( service: fa[#github], display: "github.com/potatoeggy", link: "https://github.com/potatoeggy" ), ( service: fa[#linkedin], display: "potatoeggy", link: "https://www.linkedin.com/in/potatoeggy/" ), ( service: fa[#envelope], display: "daniel.chen1@uwaterloo.ca", link: "mailto://daniel.chen1@uwaterloo.ca" ), ) #show: doc => template(name, contact_data, color, doc) // MAIN CONTENT STARTS here // TODO: make lines more impactful // introduce some bolding (a lighter gray) to highlight things // improve readability / ideally increase line height // rn it looks like a wall of text = Skills #indent[ *Languages*: Python, TypeScript/JavaScript, Rust, SQL, C++, Java, HTML, CSS \ *Frameworks*: Node.js, Express, React, Next.js, Vue, Flutter, Qt, Prisma, Apollo, Axum \ *Tools*: Linux, Git, Docker, PostgreSQL, Redis, Kubernetes, AWS, GCP, OpenTelemetry, GraphQL ] = Experience #indent[ #work_entry( "Software Engineering Intern", "Dropbase", start_date: "May 2023", end_date: "Aug 2023", location: "San Francisco, CA (Remote)", tasks: ( [Automated synchronising Airtable and HubSpot APIs with Google Sheets via *AWS Lambda*], [Engineered a *heuristic algorithm* for resolving *SQL* aliases for database-specific editor autocompletion], [Refactored the frontend to use *react-hook-form* to aggregate and validate user input, improving DX], [Built a service for importing and validating CSV/Excel files from personalised email addresses into databases], ) ) #work_entry( "Backend Developer", "Techyon", start_date: "Mar 2023", end_date: "present", location: "Waterloo, ON", tasks: ( [Integrated *OpenTelemetry* and Grafana into a *Kubernetes* cluster to collect traces and improve observability], [Dynamically generated Apple Wallet pass files over *Apollo GraphQL* Server to streamline registration], [Automated judge-to-hacker matching and scheduling with a custom algorithm based on their preferences], [Organised Canada's largest hackathon with more than 1000 attendees and 6000 applicants], ) ) ] = Projects #set strong(delta: SMALL_STRONG) #indent[ #project("Mandown Comic Converter", "https://github.com/potatoeggy/mandown", "Python, Qt") - Developed a CLI to scrape, download, and convert online comics into e-ink friendly formats - Abstracted 4 ebook creation libraries into a common comic conversion API for e-ink devices - Implemented *image caching and multiprocessing* to increase download and update speeds by *300%* - Minimised regressions between release cycles by writing *unit and integration tests* with 55% code coverage #project("Primoprod Genshin Simulator", "https://github.com/potatoeggy/primoprod", "Vue, TypeScript") - Created an interactive, realistic, cross-platform game simulator with fluid animations based off a popular game - Constructed an extensible JSON data schema to concisely simplify adding new game content // #project("Kobink — Kobo Sync Server", "https://github.com/potatoeggy/kobink", "Rust, Axum, Postgres") // - ??? something here (reverse engineering) // - ??? something here (synchronisation and DB, HTTP headers) #project("RecipeReady Recipe Aggregator", "https://github.com/vincentjguo/recipeready-server", "Flutter, Selenium, FastAPI, Android") - Developed a cross-platform mobile/web app to generate recipes based on ingredients and dietary restrictions - Scraped thousands of websites for recipes to build a database with a robust *many-to-many tag system* - Aggregated common ingredients heuristically to build a shopping list and a meal plan for each week #project("Box Box Revolution", "https://github.com/potatoeggy/boxboxrevolution", "Rust, STM32") - Developed a rhythm game to detect punches with an ultrasonic sensor in line wth notes of popular songs - Developed firmware to measure from an ultrasonic sensor, tone a buzzer, and show scrolling notes on an LCD ] = Awards #show link: underline - Winner of the #link("https://github.com/anyuan-chen/resketch")[EdTech] prize at StormHacks 2022 from 350+ participants - Winner of the #link("https://github.com/anyuan-chen/perdiem")[IBM Open Source] prize at YRHacks 2022 from 90+ participants = Education #indent[ #education_entry( "University of Waterloo", "Candidate for B.A.Sc. in Computer Engineering", start_date: "Sep 2022", end_date: "Apr 2027 (expected)", location: "Waterloo, ON", details: ( [Courses: Object-oriented programming, data structures & algorithms, digital computers & circuits ], )) ]