#import "fontawesome.typ": fa, globe, github, linkedin, envelope, phone #import "lib.typ": template, work_entry, project, indent, SMALL_STRONG, DEFAULT_STRONG // orange!! #let color = rgb("#1f497d") #let name = "Christopher Lam" #let contact_data = ( ( service: fa[#phone], display: "416-409-0886", link: "tel:4164090886" ), ( service: fa[#envelope], display: "christopher.peter.lam@protonmail.com", link: "mailto://christopher.peter.lam@protonmail.com" ), ( service: fa[#linkedin], display: "linkedin.com/in/christopherlam888", link: "https://www.linkedin.com/in/christopherlam888" ), ( service: fa[#github], display: "github.com/christopherlam888", link: "https://github.com/christopherlam888" ), ) #show: doc => template(name, contact_data, color, doc) // MAIN CONTENT STARTS here #let IMAGE_WIDTH = 1.5cm #place(bottom + center, dy: 1.5cm, image("monogram.png", width: IMAGE_WIDTH)) = Technical Skills - *Languages:* Python, JavaScript, TypeScript, Kotlin, C, C++, Rust, Dart, Java, SQL, XML, XSL, Bash - *Tools:* OpenCV, Flask, PostgreSQL, React, React Native, NodeJS, Express, MongoDB, Flutter, Linux = Experience #block(inset: (right: 0.5em))[ #work_entry( "Software Developer, Software Quality Analyst", "i4i Infrastructure for Information", location: "Toronto", start_date: "May 2023", end_date: "Sep 2023", tasks: ( [Developed a program to automate converting hundreds of client data values from Excel to Word metadata], [Designed Python, XML, and XSL code to extract and process data to interface with existing software products], [Performed 1000+ functional, security, and stress tests to ensure quality for clients like Pfizer and Astellas], [Communicated with developers and clients to perform root cause analysis on hundreds of major issues], [Coordinated with management and team members to delegate work, present results, and meet deadlines] ) ) #work_entry( "Electrical/Communications Subsystem Lead", "UW Orbital Engineering Design Team", start_date: "Sep 2022", end_date: "present", location: "Waterloo", tasks: ( [Implemented the Diffie-Hellman key exchange in C using a 3072-bit prime number and 256-bit keys], [Managed a team of 10 to develop electrical and power, battery management, ADCS, and computer systems], [Led the design of the custom transceiver by reviewing schematics and optimizing the layout per RF guidelines], [Validated PCBs with power and RF testing, resulting in a recorded 34 dB gain measured by VNA S-parameters], ) ) ] = Projects #set strong(delta: SMALL_STRONG) #indent[ #project("Produce Palate", "https://github.com/christopherlam888/produce-palate", "Python, OpenCV, Scikit-learn, Flask") - Created an image preprocessing algorithm to reduce noise, perform contour detection, and enhance colours - Trained an AI image classifier model with KNN, Random Forest, and SVM algorithms tuned using grid search - Achieved 96% accuracy recognizing 5 distinct classes of fruits and vegetables in a web game built with Flask #project("Snake Wave", "https://github.com/olivia-yong/htn2023", "Python, OpenCV, Pygame, Flask, PostgreSQL, bcrypt") - Designed a snake game controlled by hand gestures using OpenCV and Google's MediaPipe ML model - Implemented a Flask API with PostgreSQL to handle user authentication with bcrypt and track a leaderboard #project("The Everyday Watch Collector App", "https://github.com/christopherlam888/the-ewc", "Kotlin, XML, React, NodeJS, Express, MongoDB, JavaScript") - Created a user-friendly interface to display 100+ glossary entries and 40+ videos using Kotlin and XML - Utilized Retrofit and Gson to retrieve API data in JSON with seamless fallback to local data upon Internet loss - Automated unit and instrumented tests using Espresso to ensure code quality and minimize regressions - Developed a contributions page using React to send web inputs through a POST request to the REST API - Deployed a REST API using NodeJS, Express, and MongoDB to perform CRUD operations on a cloud database #project("Catholic Companion (Saints App)", "https://github.com/christopherlam888/saints-app", "React Native, TypeScript, Python, BeautifulSoup") - Developed an app to display a saint of the day and a list of Catholic prayers in React Native and TypeScript - Devised a web scraping algorithm to extract data with BeautifulSoup and clean data with LanguageTool - Optimized performance with multithreading pools, resulting in a 5x increase in speed to retrieve 250 listings #project("RecipeReady", "https://github.com/christopherlam888/recipe-ready-frontend", "Python, Selenium, Flutter, Dart") - Produced a recipe app to help users plan daily meals with a weekly schedule and a generated grocery list - Gathered 500+ recipes by scraping with Selenium, and created a REST API to get data from a cloud database ] = Education #indent[ #work_entry( "BASc Mechatronics Engineering", "University of Waterloo", start_date: "2022", end_date: "2027", tasks: ( [GPA: 4.0/93%, Dean’s List, Faculty of Engineering Entrance Scholarship, President's Scholarship of Distinction], [Courses & Concepts: Object-Oriented Programming, Algorithms and Data Structures, Circuits, Digital Logic], ) ) ] = Honours #show link: underline #block(inset: (right: 0.5em))[ #grid( columns: (11fr, 2fr), column-gutter: 1cm, [ - 1st Place CubeSat Design Challenge, Canadian Satellite Design Challenge - The Governor General's Academic Medal (Bronze Medal), Governor General of Canada ], align(right)[*#text(("2023", "2022").join("\n"))*] ) ]