Hi there! I'm a goal-oriented software developer. My passion for building robust and scalable applications keeps me driven to exceed the goals I set out to achieve. I'm passionate about learning and consistently challenging myself to be 1% better than I was the day before.
I obtained a Computer Science Degree from the University Of British Columbia. From here I wanted to better understand the theory I was learning and apply it to hands-on development, which led me to complete a software development diploma at Lighthouse Labs. In between all of this, I started to really enjoy creating software applications.
I was recently working as a software developer for Create Music Group, where we worked with an agile mindset. I handled our music publishing software development end-to end with a focus on scalability, maintainability and readability. While also navigating, developing and of course fixing bugs on other projects during crunch-time.
Currently, I am in full work mode: Developing my skills, working on side projects to improve my understanding of Micro-Services, Concurrency problems, Docker, Kubernetes, Node, Express, React and Redux middleware such as Thunks and Sagas. As well as keeping myself up to date on authentication, security best practices, testing using jest as well as enzyme for the react side, system design, data structures and algorithms
In my free time when I'm not exercising, you can find me learning Japanese, taking programming courses to become a better developer, and studying to get a personal training certification.
'If you can get 1 percent better each day, you'll end up 37x better in one year' - math
React, Redux, Middleware(Thunks->Sagas), FireStore, Styled Components, Stripe, Heroku, some Hooks, SCSS, PWA-compliant(media queries), Jest, Enzyme
A full-stack application with authentication (sign-up and sign-in) and cart storage persistance. The user can view all collections of items to buy as well as navigate to a specific collection, add/remove/update selected items to/from their chart, and can purchase their selected items using a test credit card (Stripe)
Typescript, NodeJS, ExpressJS, Docker, Kubernetes, Ingress-Nginx, Nats Streaming Server, Skaffold, Mongoose, MongoDB, Redis, JWT & Cookies, Jest, React & NextJS, Service Workers, Stripe, Google Cloud Builder, CI/CD(Github Actions)
A full-stack application using a Micro-Service Architecture. Users can list tickets for an event as for sale, other users can purchase tickets that are for sale. When a user attempts to purchase a ticket the ticket is locked for a certain time period in which the user has to enter their payment information or the order expires. While the ticket is locked no other user can purchase the ticket and after the time period expiry the ticket is unlocked. Ticket prices are only editable if the ticket is unlocked.
VueJS, NodeJS, Vuex, ExpressJS, PostgreSQL, KnexJS, Axios, Bootstrap4, BoardGameGeek API
A full-stack application with authentication for sellers and buyers of board games to connect, post, sell, buy or trade board games. Ability for a user to sell a game with detailed specification on game notes and conditions. Ability for game-sellers to review orders on any posted games for sale and a cart feature to review the details of purchase before checking out. Buyer-seller messaging capability to finalize transactions, for game exchange, and settling disputes concerning price, exchange location/time.
EJS, SCSS, Bootstrap4, jQuery, ExpressJS, Node.JS, ES6, Knex(SQL), Postgresql, and Twilio API
A two page full-stack food ordering experience for a single restaurant. Select one or more dishes and place an order for pick-up. When an order is placed the restaurant receives the order via SMS. The restaurant can specify how long it will take to fulfill it and once they provide this information, the website updates for the customer and also notifies them through SMS. The restaurant owner also has the ability to update the price of menu items through SMS.
MongoDB, Bootstrap4, ReactJS, Redux, NodeJS, ExpressJS
A full stack CRUD web app for developers where a user can register, login, then create and edit a profile with validated credentials. A user can view any profile, display more details on viewing the specific profile and leave posts, which can be liked and unliked. A user can write comments on posts, delete their own comments and delete their account, which also deletes their associated profile.
NodeJS, Typescript, Mocha, jQuery, HTML5, CSS3
This project is a full-stack web application from a software engineering class at UBC and it allows users to query information on classes, buildings and rooms at UBC, using an EBNF to define our query's form and abilities.
Ruby, Ruby on Rails, PostgreSQL, SCSS, Active Record
E-commerce application that simulated a real-world scenario of inheriting a large code base. Features added were information on products sold out, admin capability to add categories, user-authentication, order details, admin security, and product ratings.
SCSS, ReactJS, Webpack, Websocket API, ExpressJS, NodeJS.
A real-time full-stack app allows communication between multiple clients such as messaging, name changing with a notification and displaying the number of current online users.
For contact information, click the button below!
Email