David McCaig

Full-Stack Developer

I'm a Full-Stack Developer with a love for creating beautiful UI and user-friendly applications.

project displayed

About Me

I am a bike shop owner turned Full-Stack Developer with a passion for creating beautiful UI. I am an analytical problem solver at heart, with 8 years of experience working collaboratively to overcome challenges and build an inclusive and thriving business. I am excited to leverage my passion for technical problem solving, attention to detail and creative mind towards writing clean and efficient code. When I'm not coding you can usually find me mountain biking in the Port Hills or making music with my collection of Synthesizers and drum machines.

My Skills

Angular

React

Next.js

TypeScript

JavaScript

HTML

CSS

SASS

Tailwind

Redux

Github

Gitflow

JIRA

Agile

Node.JS

Express.JS

MYSQL

KNEX

Socket.IO

Jest

Projects

Preview of EvenShare project displayed on a computer screen with a greenish background

EvenShare

EvenShare is a user-friendly application designed to streamline the process of splitting expenses with others. Users have the flexibility to create groups by simply adding the email addresses of their family or friends. Upon receiving an email invitation to join EvenShare, family and friends can easily sign up and become part of the group. The app leverages the power of RTK Query, which not only optimizes performance by caching data but also minimizes data requests to Firebase.To further enhance user experience, pagination has been implemented, reducing page loading times and minimizing the amount of data fetched from Firebase.

Technologies

TypeScript

React

Redux

Tailwind

Formik

Chart.js

Shadcn/ui

Firebase

Preview of partsBin project displayed on a computer screen with a greenish background

PartsBin

PartsBin is an online marketplace designed for mountain biking enthusiasts. Find new/used bikes and parts, enjoy a responsive UI, secure token-based authentication, and the ability to post ads. Photos are stored with Cloudinary, and a chat app using Socket.IO enables easy communication. State management is handled using React's Context API.

Technologies

React

SASS

Ant Design

Node.JS

Express.JS

MYSQL

Socket.IO

Cloudinary

Preview of BrainFlix project displayed on a computer screen with a greenish background

BrainFlix

Brainflix is a fully responsive full-stack web application that mimics YouTube. This was one of the first React apps that I created while attending the Brainstation Software Engineering bootcamp. Some of the features include being able to select what video you would like to watch, commenting on each video and uploading a video. Instead of videos we used photos. Initially the project was built using Express, Node and JSON data for the backend but I decided to go back and build a database using MySQL, Knex, express and node.

Technologies

HTML

Javascript

React

SASS

Node.JS

Express.JS

MYSQL

Preview of inStock project displayed on a computer screen with a greenish background

InStock

Instock is a warehouse and inventory management system that was built in a week by a team of four developers using Agile work flows (Jira) and GitFlow. Every morning we would have a stand-up to mimic a work environment. I really enjoyed working with Jira, gitFLow and Scrum methodologies. It really allowed us to take a project that felt daunting at the time and break it down into more manageable bite sized pieces. Instock is a fully responsive full-stack web application.

Technologies

HTML

Javascript

React

SASS

Node.JS

Express.JS

MYSQL

Preview of getOut project displayed on a computer screen with a greenish background

Get Out

During a 24-hour Hackathon at the Brainstation Web Development Bootcamp, our team, composed of two UX designers, one Data Scientist, and two Web Developers, set out to revamp LoyaltyOne's Air Miles reward program for Millennials and Gen Z. Our solution? An engaging application that gamifies the experience using a star balance to track progress. We made earning and redeeming points a breeze with a user-friendly digital wallet earning us 2nd place in the competition.If you'd like to check out our project, please make sure to view it in a width of 390px for the best experience.

Technologies

React.JS

Javascript

HTML

CSS

SASS

Contact Me

I'm currently seeking new opportunities, my inbox is always open. Whether you have a question or just want to say hi, please don't hesitate to reach out.