SlideShare une entreprise Scribd logo
1  sur  1
Télécharger pour lire hors ligne
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.

Contenu connexe

Tendances

Intro to Flutter
Intro to FlutterIntro to Flutter
Intro to FlutterEason Pai
 
Angular2 & Native Script GDG DevFest 2016
Angular2 & Native Script GDG DevFest 2016Angular2 & Native Script GDG DevFest 2016
Angular2 & Native Script GDG DevFest 2016Luciano Murruni
 
Mobile development with Flutter
Mobile development with FlutterMobile development with Flutter
Mobile development with FlutterAwok
 
Intro to Flutter
Intro to FlutterIntro to Flutter
Intro to FlutterShady Selim
 
Flutter festival Info session -2022
Flutter festival Info session -2022Flutter festival Info session -2022
Flutter festival Info session -2022Apoorv Pandey
 
Intro to Flutter SDK
Intro to Flutter SDKIntro to Flutter SDK
Intro to Flutter SDKdigitaljoni
 
Flutter dart assignment help
Flutter dart assignment helpFlutter dart assignment help
Flutter dart assignment helpcalltutors
 
Flutter overview - advantages & disadvantages for business
Flutter overview - advantages & disadvantages for businessFlutter overview - advantages & disadvantages for business
Flutter overview - advantages & disadvantages for businessBartosz Kosarzycki
 
Open source, What | Why | How
Open source, What | Why | How Open source, What | Why | How
Open source, What | Why | How Nikhil Agrawal
 
Introduction to go
Introduction to goIntroduction to go
Introduction to goAnthony Chow
 
CI/CD: Lessons from LinkedIn and Mockito
CI/CD: Lessons from LinkedIn and MockitoCI/CD: Lessons from LinkedIn and Mockito
CI/CD: Lessons from LinkedIn and MockitoC4Media
 
Why companies like Google, Alibaba and UOL choose Flutter
Why companies like Google, Alibaba and UOL choose FlutterWhy companies like Google, Alibaba and UOL choose Flutter
Why companies like Google, Alibaba and UOL choose FlutterGeison Goes
 
"React Native" by Vanessa Leo e Roberto Brogi
"React Native" by Vanessa Leo e Roberto Brogi "React Native" by Vanessa Leo e Roberto Brogi
"React Native" by Vanessa Leo e Roberto Brogi ThinkOpen
 
Mobile DevOps pipeline using Google Flutter
Mobile DevOps pipeline using Google FlutterMobile DevOps pipeline using Google Flutter
Mobile DevOps pipeline using Google FlutterAhmed Abu Eldahab
 
Flutter talkshow
Flutter talkshowFlutter talkshow
Flutter talkshowNhan Cao
 
SIGAda 2011 AdaLabs presentation slides : How make Ada go viral
SIGAda 2011 AdaLabs presentation slides : How make Ada go viralSIGAda 2011 AdaLabs presentation slides : How make Ada go viral
SIGAda 2011 AdaLabs presentation slides : How make Ada go viralAdaLabs
 
Scaling applications with go
Scaling applications with goScaling applications with go
Scaling applications with goVimlesh Sharma
 
[Alexandria Devfest] the magic of flutter
[Alexandria Devfest] the magic of flutter[Alexandria Devfest] the magic of flutter
[Alexandria Devfest] the magic of flutterAhmed Abu Eldahab
 
Flutter for web
Flutter for web Flutter for web
Flutter for web rihannakedy
 

Tendances (20)

Intro to Flutter
Intro to FlutterIntro to Flutter
Intro to Flutter
 
Angular2 & Native Script GDG DevFest 2016
Angular2 & Native Script GDG DevFest 2016Angular2 & Native Script GDG DevFest 2016
Angular2 & Native Script GDG DevFest 2016
 
Mobile development with Flutter
Mobile development with FlutterMobile development with Flutter
Mobile development with Flutter
 
Intro to Flutter
Intro to FlutterIntro to Flutter
Intro to Flutter
 
Flutter festival Info session -2022
Flutter festival Info session -2022Flutter festival Info session -2022
Flutter festival Info session -2022
 
Intro to Flutter SDK
Intro to Flutter SDKIntro to Flutter SDK
Intro to Flutter SDK
 
Flutter dart assignment help
Flutter dart assignment helpFlutter dart assignment help
Flutter dart assignment help
 
Flutter overview - advantages & disadvantages for business
Flutter overview - advantages & disadvantages for businessFlutter overview - advantages & disadvantages for business
Flutter overview - advantages & disadvantages for business
 
Open source, What | Why | How
Open source, What | Why | How Open source, What | Why | How
Open source, What | Why | How
 
Introduction to go
Introduction to goIntroduction to go
Introduction to go
 
CI/CD: Lessons from LinkedIn and Mockito
CI/CD: Lessons from LinkedIn and MockitoCI/CD: Lessons from LinkedIn and Mockito
CI/CD: Lessons from LinkedIn and Mockito
 
Why companies like Google, Alibaba and UOL choose Flutter
Why companies like Google, Alibaba and UOL choose FlutterWhy companies like Google, Alibaba and UOL choose Flutter
Why companies like Google, Alibaba and UOL choose Flutter
 
"React Native" by Vanessa Leo e Roberto Brogi
"React Native" by Vanessa Leo e Roberto Brogi "React Native" by Vanessa Leo e Roberto Brogi
"React Native" by Vanessa Leo e Roberto Brogi
 
Mobile DevOps pipeline using Google Flutter
Mobile DevOps pipeline using Google FlutterMobile DevOps pipeline using Google Flutter
Mobile DevOps pipeline using Google Flutter
 
Flutter talkshow
Flutter talkshowFlutter talkshow
Flutter talkshow
 
SIGAda 2011 AdaLabs presentation slides : How make Ada go viral
SIGAda 2011 AdaLabs presentation slides : How make Ada go viralSIGAda 2011 AdaLabs presentation slides : How make Ada go viral
SIGAda 2011 AdaLabs presentation slides : How make Ada go viral
 
Flutter 1
Flutter 1Flutter 1
Flutter 1
 
Scaling applications with go
Scaling applications with goScaling applications with go
Scaling applications with go
 
[Alexandria Devfest] the magic of flutter
[Alexandria Devfest] the magic of flutter[Alexandria Devfest] the magic of flutter
[Alexandria Devfest] the magic of flutter
 
Flutter for web
Flutter for web Flutter for web
Flutter for web
 

Similaire à Resume (20)

SamSegalResume
SamSegalResumeSamSegalResume
SamSegalResume
 
resume
resumeresume
resume
 
Sam segal resume
Sam segal resumeSam segal resume
Sam segal resume
 
Kunal bhatia resume mass
Kunal bhatia   resume massKunal bhatia   resume mass
Kunal bhatia resume mass
 
Inthiyaz-4.6Years-SharePoint
Inthiyaz-4.6Years-SharePointInthiyaz-4.6Years-SharePoint
Inthiyaz-4.6Years-SharePoint
 
Jitesh agrawal Resume
Jitesh agrawal ResumeJitesh agrawal Resume
Jitesh agrawal Resume
 
Jitesh Agrawal plone
Jitesh Agrawal ploneJitesh Agrawal plone
Jitesh Agrawal plone
 
Viswanathan CV
Viswanathan CVViswanathan CV
Viswanathan CV
 
Most Useful React Native components for Software development (1).pdf
Most Useful React Native components for Software development (1).pdfMost Useful React Native components for Software development (1).pdf
Most Useful React Native components for Software development (1).pdf
 
Net, MVC 3+ years Experience
Net, MVC 3+ years ExperienceNet, MVC 3+ years Experience
Net, MVC 3+ years Experience
 
Resume - ERF - 2015-12-15
Resume - ERF - 2015-12-15Resume - ERF - 2015-12-15
Resume - ERF - 2015-12-15
 
Ng spain
Ng spainNg spain
Ng spain
 
Gaurav agarwal
Gaurav agarwalGaurav agarwal
Gaurav agarwal
 
Stacker's the way you connect the world .pptx
Stacker's the way you connect the world .pptxStacker's the way you connect the world .pptx
Stacker's the way you connect the world .pptx
 
Raman monga
Raman mongaRaman monga
Raman monga
 
Portable Code Compiler
Portable Code CompilerPortable Code Compiler
Portable Code Compiler
 
DEMO On PYTHON WEB Development.pptx
DEMO On PYTHON WEB Development.pptxDEMO On PYTHON WEB Development.pptx
DEMO On PYTHON WEB Development.pptx
 
Mannu_Kumar_CV
Mannu_Kumar_CVMannu_Kumar_CV
Mannu_Kumar_CV
 
Arif_Shaik_CV
Arif_Shaik_CVArif_Shaik_CV
Arif_Shaik_CV
 
DineshCV (1)
DineshCV (1)DineshCV (1)
DineshCV (1)
 

Dernier

加拿大MUN学位证,纽芬兰纪念大学毕业证书1:1制作
加拿大MUN学位证,纽芬兰纪念大学毕业证书1:1制作加拿大MUN学位证,纽芬兰纪念大学毕业证书1:1制作
加拿大MUN学位证,纽芬兰纪念大学毕业证书1:1制作rpb5qxou
 
Training for Deaconess, biblical qualifications.ppt
Training for Deaconess, biblical qualifications.pptTraining for Deaconess, biblical qualifications.ppt
Training for Deaconess, biblical qualifications.pptVidalMendoza5
 
The Next Things To Immediately Do About Mating Press
The Next Things To Immediately Do About Mating PressThe Next Things To Immediately Do About Mating Press
The Next Things To Immediately Do About Mating Pressmatingpress170
 
Banged Dubai Call Girls O525547819 Call Girls Dubai
Banged Dubai Call Girls O525547819 Call Girls DubaiBanged Dubai Call Girls O525547819 Call Girls Dubai
Banged Dubai Call Girls O525547819 Call Girls Dubaikojalkojal131
 
Abanoub Ghobrial, Planning Team Leader.pdf
Abanoub Ghobrial, Planning Team Leader.pdfAbanoub Ghobrial, Planning Team Leader.pdf
Abanoub Ghobrial, Planning Team Leader.pdfAbanoubGhobrial1
 
How To Land Your Next PM Dream Job - PMISSC Meeting - April 2024
How To Land Your Next PM Dream Job - PMISSC Meeting - April 2024How To Land Your Next PM Dream Job - PMISSC Meeting - April 2024
How To Land Your Next PM Dream Job - PMISSC Meeting - April 2024Hector Del Castillo, CPM, CPMM
 
Get to know about Raquel Thompson Barbados.pdf
Get to know about Raquel Thompson Barbados.pdfGet to know about Raquel Thompson Barbados.pdf
Get to know about Raquel Thompson Barbados.pdfRaquel Thompson Barbados
 
Human Rights are notes and helping material
Human Rights are notes and helping materialHuman Rights are notes and helping material
Human Rights are notes and helping materialnadeemcollege26
 
How to make career in advance 3d animation
How to make career in advance 3d animationHow to make career in advance 3d animation
How to make career in advance 3d animationsantoshjadhav126
 
Nathan_Baughman_Resume_copywriter_and_editor
Nathan_Baughman_Resume_copywriter_and_editorNathan_Baughman_Resume_copywriter_and_editor
Nathan_Baughman_Resume_copywriter_and_editorNathanBaughman3
 
Jumark Morit Diezmo- Career portfolio- BPED 3A
Jumark Morit Diezmo- Career portfolio- BPED 3AJumark Morit Diezmo- Career portfolio- BPED 3A
Jumark Morit Diezmo- Career portfolio- BPED 3Ajumarkdiezmo1
 
APSC Motor Vechile Inspector 18 Posts.pdf
APSC Motor Vechile Inspector 18 Posts.pdfAPSC Motor Vechile Inspector 18 Posts.pdf
APSC Motor Vechile Inspector 18 Posts.pdfsoumita869
 
401799841-Increasing-Crimes-and-Suicides-Among-Youth.pptx
401799841-Increasing-Crimes-and-Suicides-Among-Youth.pptx401799841-Increasing-Crimes-and-Suicides-Among-Youth.pptx
401799841-Increasing-Crimes-and-Suicides-Among-Youth.pptxwaghmare9860lavin
 
dentinalhypersensitivity, classification and material used
dentinalhypersensitivity,  classification and material useddentinalhypersensitivity,  classification and material used
dentinalhypersensitivity, classification and material usedaishwaryakhare5
 
Senior IT Professional with Master’s Degree with 21+ years of experience is...
Senior IT Professional with Master’s Degree with 21+ years of experience   is...Senior IT Professional with Master’s Degree with 21+ years of experience   is...
Senior IT Professional with Master’s Degree with 21+ years of experience is...Anas Acharath Parakat
 
Network to Success - Using Social Media in Job Search
Network to Success - Using Social Media in Job SearchNetwork to Success - Using Social Media in Job Search
Network to Success - Using Social Media in Job SearchBruce Bennett
 
怎么办理美国UCLA毕业证加州大学洛杉矶分校学位证书一手渠道
怎么办理美国UCLA毕业证加州大学洛杉矶分校学位证书一手渠道怎么办理美国UCLA毕业证加州大学洛杉矶分校学位证书一手渠道
怎么办理美国UCLA毕业证加州大学洛杉矶分校学位证书一手渠道7283h7lh
 
What is the career path of a VFX artist?
What is the career path of a VFX artist?What is the career path of a VFX artist?
What is the career path of a VFX artist?santoshjadhav126
 
Chapter 4 - Promoting Inclusive Culture.ppt
Chapter 4 - Promoting   Inclusive Culture.pptChapter 4 - Promoting   Inclusive Culture.ppt
Chapter 4 - Promoting Inclusive Culture.pptmoytopo
 
How to prepare yourself for a job interview.pptx
How to prepare yourself for a job interview.pptxHow to prepare yourself for a job interview.pptx
How to prepare yourself for a job interview.pptxJohnreyFalsarioBasid
 

Dernier (20)

加拿大MUN学位证,纽芬兰纪念大学毕业证书1:1制作
加拿大MUN学位证,纽芬兰纪念大学毕业证书1:1制作加拿大MUN学位证,纽芬兰纪念大学毕业证书1:1制作
加拿大MUN学位证,纽芬兰纪念大学毕业证书1:1制作
 
Training for Deaconess, biblical qualifications.ppt
Training for Deaconess, biblical qualifications.pptTraining for Deaconess, biblical qualifications.ppt
Training for Deaconess, biblical qualifications.ppt
 
The Next Things To Immediately Do About Mating Press
The Next Things To Immediately Do About Mating PressThe Next Things To Immediately Do About Mating Press
The Next Things To Immediately Do About Mating Press
 
Banged Dubai Call Girls O525547819 Call Girls Dubai
Banged Dubai Call Girls O525547819 Call Girls DubaiBanged Dubai Call Girls O525547819 Call Girls Dubai
Banged Dubai Call Girls O525547819 Call Girls Dubai
 
Abanoub Ghobrial, Planning Team Leader.pdf
Abanoub Ghobrial, Planning Team Leader.pdfAbanoub Ghobrial, Planning Team Leader.pdf
Abanoub Ghobrial, Planning Team Leader.pdf
 
How To Land Your Next PM Dream Job - PMISSC Meeting - April 2024
How To Land Your Next PM Dream Job - PMISSC Meeting - April 2024How To Land Your Next PM Dream Job - PMISSC Meeting - April 2024
How To Land Your Next PM Dream Job - PMISSC Meeting - April 2024
 
Get to know about Raquel Thompson Barbados.pdf
Get to know about Raquel Thompson Barbados.pdfGet to know about Raquel Thompson Barbados.pdf
Get to know about Raquel Thompson Barbados.pdf
 
Human Rights are notes and helping material
Human Rights are notes and helping materialHuman Rights are notes and helping material
Human Rights are notes and helping material
 
How to make career in advance 3d animation
How to make career in advance 3d animationHow to make career in advance 3d animation
How to make career in advance 3d animation
 
Nathan_Baughman_Resume_copywriter_and_editor
Nathan_Baughman_Resume_copywriter_and_editorNathan_Baughman_Resume_copywriter_and_editor
Nathan_Baughman_Resume_copywriter_and_editor
 
Jumark Morit Diezmo- Career portfolio- BPED 3A
Jumark Morit Diezmo- Career portfolio- BPED 3AJumark Morit Diezmo- Career portfolio- BPED 3A
Jumark Morit Diezmo- Career portfolio- BPED 3A
 
APSC Motor Vechile Inspector 18 Posts.pdf
APSC Motor Vechile Inspector 18 Posts.pdfAPSC Motor Vechile Inspector 18 Posts.pdf
APSC Motor Vechile Inspector 18 Posts.pdf
 
401799841-Increasing-Crimes-and-Suicides-Among-Youth.pptx
401799841-Increasing-Crimes-and-Suicides-Among-Youth.pptx401799841-Increasing-Crimes-and-Suicides-Among-Youth.pptx
401799841-Increasing-Crimes-and-Suicides-Among-Youth.pptx
 
dentinalhypersensitivity, classification and material used
dentinalhypersensitivity,  classification and material useddentinalhypersensitivity,  classification and material used
dentinalhypersensitivity, classification and material used
 
Senior IT Professional with Master’s Degree with 21+ years of experience is...
Senior IT Professional with Master’s Degree with 21+ years of experience   is...Senior IT Professional with Master’s Degree with 21+ years of experience   is...
Senior IT Professional with Master’s Degree with 21+ years of experience is...
 
Network to Success - Using Social Media in Job Search
Network to Success - Using Social Media in Job SearchNetwork to Success - Using Social Media in Job Search
Network to Success - Using Social Media in Job Search
 
怎么办理美国UCLA毕业证加州大学洛杉矶分校学位证书一手渠道
怎么办理美国UCLA毕业证加州大学洛杉矶分校学位证书一手渠道怎么办理美国UCLA毕业证加州大学洛杉矶分校学位证书一手渠道
怎么办理美国UCLA毕业证加州大学洛杉矶分校学位证书一手渠道
 
What is the career path of a VFX artist?
What is the career path of a VFX artist?What is the career path of a VFX artist?
What is the career path of a VFX artist?
 
Chapter 4 - Promoting Inclusive Culture.ppt
Chapter 4 - Promoting   Inclusive Culture.pptChapter 4 - Promoting   Inclusive Culture.ppt
Chapter 4 - Promoting Inclusive Culture.ppt
 
How to prepare yourself for a job interview.pptx
How to prepare yourself for a job interview.pptxHow to prepare yourself for a job interview.pptx
How to prepare yourself for a job interview.pptx
 

Resume

  • 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.