Who Am I?

Personal Details

Professional Profile

Hi, I’m Samuel! I’m a NUS Computer Science Graduate, and a Software Developer. Welcome! 👋🏻

It is said that polishing your code can bring up to 2x improvement, but selecting a better algorithm can lead to better. Weary programmer 🧔🏻‍♂️, may I suggest some food for thought? Optimize the source to unlock the greatest optimization. A bowl of ice-cream 🍨 brings about untold performance improvements!

Besides crafting deep and inspirational statements such as the above, I enjoy building software applications. It’s actually pretty fun and it’s my focus area after all 🫠 (other focus area is Database Systems 💾). Coding is great cos you can build lots of cool stuff. I’m trying to get better and have fun at it.

I like listening and reading latest updates about all things software. I’d be doing more web development, lets see how it goes 👀

Professional Background

Work Experience

3 months (May - Jul 2023)

Foodpanda (pandago)

Software Engineer (Backend)

  • Planned and Presented RFC to optimize DynamoDB performance, reduce cost through restructuring GSIs, and ensure backward compatibility
  • Assisted in Re-engagement Feature implementation to increase micro conversion rate by re-engaging dropped-off customers who leave the app before completing a purchase
  • Summarized WOR (Weekly Operations Review) meetings to inform team about best practices regarding alerting and monitoring (SRE)

Leveraged knowledge: Golang, Hexagonal Architecture, SNS, SQS, DynamoDB, Docker Containers, Cypress

6 months (May - Oct 2022)

Lazada (redmart)

Software Engineer (Frontend)

  • Extended functionality of merchant’s platform with new features in quick succession
  • Enhanced user experience by migrating MUI libraries and via stylistic changes
  • Spearheaded using Cypress for e2e tests in Alibaba platform and facilitated training of this new process to team of 6 which cut down testing time by about 300% (2 hours to 0.5 hours)
  • Facilitated DevOps practices through test automation and continuous deployment scripts
  • Architected code structure, including best practices using jQuery (fetch data) and state management solutions, for more maintainable code

Leveraged knowledge: Typescript, React, useQuery, Cypress, React Testing Library, Sass

1 year (Aug 2019 - Oct 2020)

Self-employed

Math Tutor (tertiary)

  • Planned and executed necessary tuition framework for Mathematics for IB, AS, and N Level
  • Assessed the student’s progress and incorporated a systematic learning timeline
  • Provided timely feedback to parents via messages and updated records
  • Evaluated character and learning style to use different teaching approaches for each student

2 years (Apr 2018 - Apr 2020)

Singapore Police Force

Infocomm Technology Liaison Officer

  • Troubleshooted IT related matters for SPF Operations Dept (200+ people)
  • Interacted with senior management very frequently, improved social acumen
  • Communicated solutions face to face, via email, and over the phone
  • Integrated a systematic Excel document for storing hardware asset records
  • Maintained the website for the SPF Intranet Ops Website
  • Internalized and presented key points of GovTech’s migration to new software to my entire department

Leveraged knowledge: Outlook, Security protocols, Windows PowerShell, HTML

Learning & Training

Education

2020-2024

National University of Singapore (NUS)

Bachelor of Computing (Honours) in Computer Science

  • Focus areas: Database Systems & Software Engineering

2012-2017

St Joseph's Institution (SJI)

IB Diploma

  • HL Math, Physics, Music
  • IB Grade: 41 / 45

Recognition

Honours & Awards

2016

SJI

SJI Scholarship JC IBDP

2014

MOE

Edusave Scholarship for Intergrated Program

Experience

Projects

Nov 2023

Vue Web App

OrganRegistration prototype

SPA Web app that provides a 2-way data-binding of URL state to the stops on the Organ instrument. I had an issue with the storage, referencing, and sharing of organ registration stops. I could not find a suitable solution so built my own. I chose the Vue framework to give it a try in the hopes I’d be more comfortable with raw HTML and CSS.

  • Polled for problems regarding registration from public (organists) sentiment on facebook and reddit
  • Brainstormed problems, possible and current solutions on miro miro-link
  • Prototyped low-fidelity web design on excalidraw
  • App example with (multiple registrations): multiple-registrations-example-live-app

Used: Vue3, HTML, CSS

Github App Docs

Aug 2023 - Nov 2023

Next/React Web App

PeerPrep

  • A platform for users to pair up and solve programming algorithm questions to skill-up for technical interviews. It matches users based on selected criteria (difficulty and topic). It allows them to choose an algorithm question, code it in a code editor that runs in a sandboxed environment, communicate via a chatroom, and get assistance from an AI chatbot.
  • Project (5 members) in CS3219 Software Engineering Principles and Patterns across (8 weeks)

Used: NextJS, React, TypeScript, tRPC, tailwind, Prisma, MongoDB, PostgreSQL, Google Cloud Run

Github Screenshots Docs

Aug 2023 - Nov 2023

C++ CLI App

Static Program Analyzer

  • Program to parse in a simplified programming language (“SIMPLE”), generate and store necessary information in appropriate data structures in database, and then support querying relationships within source code. Consists of 3 main subsystems, the Source Parser, the Program Knowledge Base, and the Query Processor.
  • Guided Group Project (6 members) in CS3203 Software Engineering Project across 3 months

Learnt basics of C++ within 2 weeks and utilized it, following best practices (e.g. for header files, “using” namespaces, etc.).

  • Utilized basics of parsing (Lexing, Tokenizing, Abstract Syntax Tree generation)
  • Used different kinds of Bi-directional Mappers (1-to-1, 1-to-many, many-to-many) to efficiently store query relationship data to support queries.
  • Weighed key design choices using design patterns (Visitor Pattern, Factory Pattern etc.).
  • Rigorous documentation of architecture structure, design choices which increased experience with PlantUML sequence and component diagrams.
  • Document possible extension details including implementation and feasibility.

Used: C++, Catch2 test framework, Scrum practices, Atlassian Confluence & JIRA

Github Docs

Sep 2021- Nov 2021

Java app contact manager

NetworkUS

@samyipsh, @dystoriax, @e0543403, @jeromewjj, @commanderw324

  • Contact Manager for CS Students.
  • Team Project for CS2103T Software Engineer Module
  • Brownfield Group Project (5 members)

Used: Jekyll plugin & Liquid, for Static Site Generation of User and Developer Docs

Github Youtube

Aug 2021 - Sep 2021

Java app task organizer

Meap

@samyipsh

  • Individual Project for CS2103T Software Engineering Module
  • Integrated GUI by incorporating JavaFX and Scene Builder tools for a friendly user-centric experience
  • Utilized Software Unit Tests and Build Automation like Gradle to ensure code sustainability and extensibility

Used: JavaFX, Java, OOP style, Test Driven Development, Unit test, JUnit, Gradle

Github

May 2021 - Dec 2021

E-commerce (React Web App)

BakeSwitch

@samyipsh, @laitzheng, @yichong96

  • E-commerce site for home bakers to sell their baked goods
  • Orbital project during Y1 Summer
  • Developed a React application in a 2-man team that acts that provide home-bakers an online central store, for management of their bakes and orders
  • Learnt and utilized web development related languages and frameworks in the short span of 3 months (React, JavaScript, HTML, CSS)
  • Incorporated a NoSQL database using Cloud Firestore (stored users, sellers, bakes) using denormalized database for fast reads resulting in better website responsiveness

Used: ReactJS, Firebase hosting, Cloud Firestore, Denormalized data structures, HTML

Github Youtube Docs

Areas of Expertise

Skills

Programming Languages

  • Working knowledge: Go, TypeScript, C++, Java, Python, Swift, JavaScript, CSS
  • Basic knowledge C, Unix, BASH, Powershell, HTML

Software Workflows

  • Project management: Github, JIRA, Confluence

Software Tooling

  • Frontend
    • Libraries / Frameworks: React, Next, Vue, JavaFX, Jekyll
    • Styling: TailwindCSS, Sass, Bootstrap
  • Backend
    • Systems: SQS, SNS, EventEmitter, Firebase
    • Databases: PostgreSQL, DynamoDB, Firestore, MongoDB
  • Testing:
    • JS: Cypress, Jest, React Testing Library
    • C++: Catch2
    • Java: JUnit

Soft Skills

  • Collaborative
  • Systematic

Outside

Interests

Current Hobbies & Interests

Digital Art (Video & Audio editing), Art (Watercolor, Calligraphy), Piano, International Chess, Indoor sports (Billiards, Table Tennis, Badminton, Tennis)