1. Peter TaoSOFTWARE ENGINEER · FULL-STACK DEVELOPER
Toronto, Ontario, Canada
(647-937-4629) | peter.tao@mail.utoronto.ca | www.petersenpai.github.io | https://github.com/PeterSenpai
Work Experience
Ceridian Toronto, Canada
SOFTWARE DEVELOPER CO-OP (TYPESCRIPT, REACTJS, NODEJS, DOJO TOOLKIT, SQL, CSS, STYLUS, HTML) May. 2019 - present
• Implemented an essential toggle component on toolbar widget which is used in multiple places in the software across different teams. To do this, I
had to understand different layers of Dojo framework with limited source, refactor the legacy code without affecting other parts of the solution and provide
proper hooks and documentations for developers to use and customize the tool easily.
• Created and refactored multiple SQL scripts to provide accurate translation for users in different culture backgrounds. Identified the problems and
make adjustments in code to apply different versions of the software. Created a dedicated internal Wiki page of the whole process and helped several
developers across different teams.
• Designed, implemented, maintained the front-end framework and platform showcase. Built reusable tools and components across the solution so
that developers from all the team accomplish their goals efficiently.
• Worked in a team adopting agile methodology that has daily stand up. Collaborated with team members, analysts, designers to plan, detail and
implement the tasks. Worked with squads of different sizes.
Futurera Toronto, Canada
FULL STACK DEVELOPER (REACTJS, REDUX, REDUX THUNK, NODEJS, EXPRESSJS, SCSS) May. 2019 - Aug. 2019
• Implemented a full stack website for student organizations using NodeJs and Mysql. Designed the UI of core features with Html5, ReactJS and React
redux. Updated the styles of the UI using CSS3/SCSS and bootstrap. Developed unit tests and integration test on the feature.
• Worked in a weekly sprint agile setting. Ensured code qualities by performing codes reviews on github with the other team members.
Education
University of Toronto St.George Campus, Toronto
BACHELOR OF SCIENCE IN COMPUTER SCIENCE Mar. 2016 - Jun. 2021
Related Courses: Programming on the Web | Introduction to Artificial Intelligence | Software Design | Introduction to the Theory of Computation | Data
Structures and Analysis | Computer Organization | Software Tools and Systems Programming
Projects
Agora - Fullstack Social Media Web App (https://quiet-cove-66127.herokuapp.com) Toronto, Canada
A SOCIAL MEDIA SITE IMPLEMENTED WITH MERN STACK AND HOST ON HEROKU Jun. 2019
• On Agora, user can sign up, sign in, edit/update profile, view other developer’s profile and github repos, write/comment post, like/unlike a post and etc.
• Implemented the front-end using ReactJs along with some of its new features such as React Hooks. Used Redux/React-Redux as central state manager,
Redux-Thunk as middleware for data fetching together with action dispatching.
• Designed NoSQL database schemas and hosted on MongoDB Atlas(Cloud-based service on AWS). Built back-end logic and designed back-end routing
on NodeJs and ExpressJs and connected it to database using MongooseJs.
• Encrypted and secured users’ crucial information in database using BcryptJs, stored user’s credential on browser using JWS(JsonWebToken) so that
only logged in users can navigate to protected routes.
• Configured proxy and Cross-Origin Resource Sharing (CORS) in development environment for different hosts, reconfigured the build for production envi-
ronment hosting on Heroku (https://quiet-cove-66127.herokuapp.com).
Rubik’s Cube Solver (https://github.com/PeterSenpai/cubesolver) Toronto, Canada
A DESKTOP APP THAT SOLVES A RUBIK’S CUBE USING LAYER-FIRST METHOD. Jun. 2018
• Designed a Python program that solves a 3x3 Rubik’s cube using the beginner’s method step by step
• Coded several customized data structures to store cube stages and operations using PyQt for GUI and PyOpenGL to render a 3D cube that can be dragged
and viewed from different angles.
• Used PyOpenCV image recognition library to scan the cube through web camera and give a step by step solution after gathering images and processing
the cube stages.
My Dictionary (https://github.com/PeterSenpai/MyDictionary) Toronto, Canada
AN ANDROID APP THAT CAN EASILY TRANSLATION ENGLISH TO CHINESE. Jun. 2018
• Developed an android app that serves as a translator developed on Android Studio using Java.
• Designed an innovative feature that when user long tab and copy an English word anywhere on the phone, the translation will pop up as a notification.
• Coded multi-threading feature that allows the app to run in the background while updating the main views, sending request to iCiba servers and storing
the data in local file.
• Customized several built-in Java classes by the principle of object-oriented programming and software design.
My Photo Manager (https://github.com/PeterSenpai/PhotoManager) University of Toronto, Canada
A DESKTOP APP THAT CAN MANAGE ALL THE PHOTOS LOCALLY. Nov. 2018
• Created a Desktop app using in Java and JavaFX. Used standard MVC design pattern, S.O.L.I.D principle to structure the whole project.
• Optimized the app for Windows, OSX and Linux and allowed user to operate functions that interact with the file system such as relocating, deleting,
grouping and searching image files.