Shawn Lee

  Singapore    shawnlsj97@gmail.com

Hi there! I am currently completing a Bachelor's Degree in Computer Science at the National University of Singapore, specialising in software engineering and computer security. My eventual career goal is to become a software engineer, with a longer-term aspiration of moving into management.


Education

National University of Singapore

Bachelor of Computing in Computer Science (with Honours)
Computer Science - Software Engineering and Computer Security Focus Area
Holder of NUS Merit Scholarship
Vice-Captain of Varsity Men's Water Polo Team
Resident of Temasek Hall 2018/19
August 2018 - May 2022

Raffles Institution

GCE ‘A’ levels - 11 academic units

Subjects taken: General Paper, Biology, Chemistry, Mathematics, Economics, Mother Tongue (Mandarin), Project Work

January 2010 - December 2015

Skills

Programming Languages
Libraries, Frameworks & Tools

Visual Studio Code • ReactJS • Node.js • MongoDB • IntelliJ • Android Studio • Firebase • Selenium • JavaFX/FXML • Gradle • CI/CD • AdobeXD • WordPress • MYSQL

Version Control

Git • GitHub • BitBucket • SourceTree


Work Experience

Service Reliability Intern

[Final Report] [Presentation Slides]

DBS Bank Ltd is a Singapore multinational banking and financial services corporation that was established on 16 July 1968 and is headquartered in Marina Bay, Singapore. Over the years, DBS has continued to innovate and adapt to technological disruption, enabling her to be recognised as the World’s Best Digital Bank. Since its establishment, DBS has expanded into 18 markets across the globe with over 280 branches (DBS, 2018). This includes 6 priority markets in Asia, namely Singapore, Hong Kong, China, India, Indonesia and Taiwan.

I was attached to the Technology Service department under the Technology and Operations business function. My team was responsible for the development and support for CUS related application development work, which is critical especially during the Covid-19 pandemic, as most employees depend on collaborative services to work with one another while working from home.

During my internship, the team was working on a web application to monitor the availability and performance of CUS such as Microsoft OneDrive and SharePoint, as well as mobile services such as BlackBerry Work. The application relies on the use of bots to test variables such as login time, upload/download speed to determine the availability and performance of the services. In addition, the web application allows different departments to keep track of relevant metrics such as the breakdown of the number of company issued mobile devices by country and application utilisation percentage by displaying the data in the form of graphs and charts.

Major Tasks:

  • Created RESTful API using Node.js for bots developed by colleagues to upload performance data to the MongoDB database. API also allows data to be downloaded to be displayed using Highcharts on the React front-end
  • Created RESTful API using Node.js for upload ad download of metrics data to MongoDB database
  • Test APIs extensively using Postman
  • Integrate APIs with React front-end using axios
  • Integrate TinyMCE WYSIWYG HTML editor onto React front-end for users to directly alter HTML content on front-end
  • Presented completed work to colleague taking over the project, ensuring a proper handover process at the end of my internship

Minor Tasks:

  • Port data from old to new MongoDB database
  • Worked together with fellow intern to create API documentation
  • Integrated SonarQube (static analysis to detect bugs and vulnerabilities) and NexusIQ (detect security vulnerabilities) into Jenkins pipelines via groovy script

Note: Screenshots are unpopulated with data for data privacy reasons.


           
June 2020 - July 2020

Full-Stack Web Developer Intern

Clickr Media is an Internet marketing consultancy. I interned in the tech department and was primarily involved in web development. On top of implementing client specifications, I was heavily involved in an individual internal project. I started part-time in October and November and transitioned to full-time during the winter break.

My task was to create a project and employee work hours management site to help project managers keep track of deadlines and hours expended for the projects under their charge. Additionally, project managers are also able to retrieve work hours clocked by each employee to ensure that all work is accounted for. They are also able to export project and work hours reports in the form of an excel sheet for easy dissemination. Finally, the site also sends out a task reminder to project managers' emails whenever a project is due in a few days.

My project has significantly improved internal processes of Clickr by automating the tracking process. Previously, many of these processes were handled via Google Sheets and there was a lack of automated reminders and updates. I have also incorporated the jquery plugin, DataTables, for fast retrieval and sorting of information.

Major Tasks:

  • Created project and employee work hours management site using HTML, CSS, JavaScript, PHP, SQL & WordPress to improve project billing in the company amounting to thousands of dollars in revenue
  • Implemented DBS supplier portal using HTML, CSS & JavaScript based on AdobeXD design provided by DBS, paying close attention to the look and feel of the website
  • Created a Developer Guide and briefed person taking over the project, ensuring a proper handover process at the end of my internship

Minor Tasks:

  • Website maintenance for clients such as DBS, DHL, Blackmores, K W Ong Breast Clinic and more
  • Data migration for DBS media site


         
October 2019 - January 2020

Reservation Officer

Shangri-La Singapore
• Promoted food and beverage promotions and hotel membership to guests with a customer-oriented attitude
• Attended to telephone and email enquiries regarding restaurant reservation in both English and Mandarin with good telephone etiquette

March 2018 - June 2018

Officer of Singapore Armed Forces

BMTC School 3 Pegasus Company

Platoon Commander at Pegasus Company in Basic Military Training Centre (BMTC):
• Awarded BMTC Commander Coin in recognition of exceptional performance during Infantry 60, which is a 60km march involving high ranking officials up to the Chief of Infantry
• Spearheaded conduct of Games Day for over 600 recruits
• Voluntarily extended service to complete the BMT cohort with recruits

Officer Cadet School (Mar 2016 - Nov 2016):
• Specially selected to represent my wing to present about Operation Sook Ching to 500 fellow officer cadets during a seminar
• Appointed as Cadet Wing Safety to oversee safety of 60 fellow officer cadets during training

       
December 2016 - December 2017

Projects & Hackathons

Amazon Clone

A clone of Amazon that supports user authentication, checkout, and payment via Stripe!

[Project Page]  [GitHub]

Amazon Clone is a web application developed using React, with a Google Firebase back-end. This project was developed throughout the winter break in my third year of studies as a computer science undergraduate.

The purpose of this project is to explore full-stack web development, which we are not exposed to during the course of our studies. Visit the project page for an overview of the features implemented in Amazon Clone!

Technologies used: React, Firebase (authentication, functions and cloud firestore)

December 2020 - January 2021

Static Program Analyzer (SPA)

An interactive tool that automatically answers queries about programs!

To answer program queries, the SPA must first analyze a source program and extract relevant program design entities, abstractions, Abstract Syntax Tree (AST), program Control Flow Graph (CFG) that are stored in a Program Knowledge Base (PKB). Secondly, the SPA must provide the user with means to ask questions about programs. These questions are written in a formal Program Query Language (PQL). SPA processes the PQL queries based on the information found in the PKB and returns the results to the user. The SPA was developed alongside 5 other computer science students from the National University of Singapore as part of a requirement for our software engineering module, CS3203.

Major Contributions:

  1. Implemented the following subcomponents of the Query Processor:
    • QueryValidator - validates the semantic validity of the QueryParseResult (from parsing a query string) before the QueryBuilder uses the QueryParseResult to build a Query
    • Query - internal representation of a user query that is easy to use for evaluation
    • QueryBuilder - builds a Query using the QueryParseResult
  2. Served as the team’s Test IC, performing extensive unit, integration and system testing

Technologies used: C++

August 2020 - November 2020

JP Morgan 2020 Code for Good Hackathon

Team 12 - Twelve Muffins

[Project Page]  [Product Demo Slides]  [Product Demo Video]  [GitHub]

I participated in the 2020 APAC Code for Good virtual hackathon organised by J.P. Morgan, where teams were challenged to develop innovative technology solutions in 24 hours for nonprofit organisations under the guidance of JP Morgan's very own technological experts.

My team took on the challenge statement proposed by New Hope Community Services, which is an organisation that assists displaced individuals in their application for subsidized housing from HDB.

Our solution was to develop a progressive web app which provides a centralised and collaborative platform for easy updating of records and convenient tracking of client progress. To increase the matching accuracy between clients and potential flatmates, we employed machine learning techniques (K Nearest Neighbours algorithm) to compare the similarity across the different preferences and return the top 3 recommendations.

We emerged among the top 4 teams in our category. It was a really enjoyable experience collaborating closely with people I had just met for the first time.

Technologies used: Gatsby (React), Firebase, Figma

October 2020

Credit Suisse 2020 CodeIT Online Coding Challenge

Team PQL Babes

[GitHub]

I participated in the 2020 CodeIT Online Coding Challenge organised by Credit Suisse in the team category, where teams were challenged to solve as many coding problems of medium to hard level difficulty within a 24 hour period. My team placed 17th overall out of over 50 teams.

Technologies used: Javascript, Node.js, Heroku

September 2020

Athletick

Keeping your team in check!

[Personal Project Portfolio]  [User Guide]  [Developer Guide]  [Product Pitch & Demo Slides]  [GitHub]

Athletick is a team management desktop application for coaches and team captains of timing-based performance sports. Athletick provides them with athlete information managing, attendance tracking and performance monitoring. This enables them to better manage their team, plan for trainings and prepare for upcoming competitions. Athletick was developed alongside 4 other computer science students from the National University of Singapore as part of a requirement for our second-year software engineering module, CS2103T.

Major Contributions:

  1. Contributed calendar feature to the app which provides 2 main functions:
    • Displays an overview of training and performance records in a selected month
    • Displays training and performance records entered on a specific date
  2. Served as the team’s Integration Engineer, ensuring all features are integrated together smoothly for each project milestone submission
  3. Designed the final product using AdobeXD and implemented it using SceneBuilder

Main Takeaways:

  1. Software engineering in a team where we conceptualise and implement enhancements to a given product as well as to prepare it to be continued by future developers
  2. Preparing various types of professional technical documentation suitable for different audiences (e.g. User Guide, Developer Guide)
  3. Team meeting skills & oral presentation skills (e.g. Pitch, Product Demo

Technologies used: Java, JavaFX, TestFX, FXML, Gradle, Travis (CI/CD), SceneBuilder, AdobeXD

September 2019 - November 2019

PayWhere  

Supporting cashless dining one mall at a time!

PayWhere is an Android application that helps mobile payment users to find suitable dining outlets in shopping centres by displaying those that accept their preferred mobile payment platforms.

PayWhere contains all the information you need to dine and make payment easily, so you don't have to trawl through multiple websites.



PayWhere was developed over the summer for NUS Project Orbital. My partner, Dominique Ng and I were awarded Apollo 11, which is the highest level of achievement in this module for displaying strong evidence of project management, user testing and source code control.

Technologies used: Java & XML (Android Studio), Python (Web-Scraping using Selenium)

June 2019 - September 2019

Trackr

Never Forget a Task Again!

Trackr is a desktop application that helps you to manage tasks. Trackr is optimized for users who prefer to work with a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI).

Technologies used: Java, JavaFX, FXML, Gradle, Travis (CI/CD), SceneBuilder

August 2019 - October 2019

Extracurriculars

Vice-Captain

NUS Varsity Men's Water Polo

During my first year as a freshman in NUS, I won first place in the NYSI and SUNIG competitions, and first runner-up in NUS Open. I also had the opportunity to represent NUS overseas in the Panasonic 20th Asia Pacific Water Polo Tournament held in Hong Kong, where we faced national and state teams from Australia, Philippines and China.

My commitment to the team, coupled with my playing ability, resulted in my appointment as vice-captain in my sophomore year. As vice-captain, I am responsible for the management of team morale and ensuring a high quality of training. Moreover, I am involved in the organising of competitions and hosting of foreign teams. Recently, we hosted The Hong Kong Polytechnic University (PolyU), and I liased with the NTU team to organise a tournament, providing a good training experience for the PolyU team.

During my term as vice-captain, I have been successful in leading the team to a first place finish in the NYSI and SUNIG competitions. My captain and I aimed to have a clean sweep of first positions in every tournament the team plays in during our term as leaders.

             

May 2018 - Present

Awards

  • 1st Place - National University of Singapore - 2019 SUNIG Water Polo
  • 1st Place - National University of Singapore - 2019 NYSI IHL Water Polo
  • 1st Place - National University of Singapore - 2019 NYSI IHL Water Polo
  • 1st Place - National University of Singapore - 2018 SUNIG Water Polo
  • 2nd Place - National University of Singapore - 2018 NUS Open Water Polo
  • 1st Place - National University of Singapore - 2018 NYSI IHL Water Polo
  • 1st Place - National University of Singapore - 2018 Inter-Hall Games Swimming (Men's)
  • Commander Coin - Basic Military Training Centre - 2017
  • SkillsFuture SG - WSQ Advanced Certificate in Team Leadership 2016
  • 2nd Place - Raffles Institution - A Division Men's Water Polo 2015
  • 3rd Place - Raffles Institution - A Division Men's Water Polo 2014