Waterford.org

Software Engineer

1/2021 - current

Summary

Software development focused primarily on creating a backend REST API of AWS Microservices for consumption by frontend and other services.

Technologies

Languages: JavaScript/Node (primary), TypeScript, Java. Technologies: AWS (Lambda, API Gateway, Postgres, SNS/SQS, Neptune, Elasticsearch), Spring Boot, Git Testing: Mocha/Jasmine, JUnit/Mockito, Jest.

Features
  • Create REST API endpoints for use by client-side web and mobile applications with persistence depending on the use-case (e.g Postgres, Neptune, Elasticsearch).
  • Use event-driven communication to keep service level data in-sync over AWS SNS and SQS.
  • Implement new client logging software across a variety of services using Sentry.io and Matomo, to improve performance and reduce costs by deprecating previous services.
  • Create shell scripts to automate setup of a service. Add documentation to provide context for each service, to decrease new hire onboarding time.
  • Lead upgrades to Activity Service integration testing, to improve developer turnaround times on Activity Service tasks.

Million Marker Wellness

Software Engineer (Contract)

1/2020 - 3/2020

Summary

Generated a prototype React Native mobile application for initial customer feedback and pitches to venture capital firms.

Features
  • Generated a prototype application that allows users to monitor their daily caloric intake on a per-meal basis, upload photographs, and identify potential sources of microplastic exposure.
  • Developed a backend of AWS lambda functions and S3 buckets to handle upload of images and JSON documents to persist user data.Generated a prototype application that allows users to monitor their daily caloric intake on a per-meal basis, upload photographs, and identify potential sources of microplastic exposure. Developed a backend of AWS lambda functions and S3 buckets to handle upload of images and JSON documents to persist user data.
Technologies

React Native, Redux, Python, AWS Microservices: Lambda functions, S3

SunPower

Software Engineer (Contract via Information Ideas Consulting)

4/2019 - 12/2019

Summary

Developed the entire front end of breakdownmybill.com to help customers gain insights into their solar savings.

Features
  • Created a dashboard with graphs and over 40 reusable React components, to help customers better understand their solar bill and savings.
  • Achieved 100% site functionality on a variety of browsers using BrowserStack.
  • Wrote a Python script to filter out erroneous readings from a dataset of more than 50,000 solar interval readings per customer.Created a dashboard with graphs and over 40 reusable React components, to help customers better understand their solar bill and savings. Achieved 100% site functionality on a variety of browsers using BrowserStack. Wrote a Python script to filter out erroneous readings from a dataset of more than 50,000 solar interval readings per customer.
Technologies

React, Redux, Material UI, Python, AWS Microservices: Lambda functions, DynamoDB, S3, EC2, Wordpress API

Retail Shop

Summary

A personal project built to learn traditional MVC Architecture and server side rendering. Includes standard authentication, administration, and checkout flows.

Features
  • Shopping cart with add, edit, and remove functionality (must sign up first)
  • Orders section to display previous purchases
  • E-mail notification of signup to new users via Sendgrid
  • User Authentication flow with Passport.js
  • Admin console to add, edit, and remove products to the store
  • Security features: HTTPS, session cookies, and CSRF tokens
Technologies

NodeJS, Express, MongoDB, EJS Templating engine. Deployed via Heroku.

Miniature Event Bus

Summary

A personal project to learn about how asychronous event driven microservices architecture works.

Features
  • One ReactJS client and 5 tiny NodeJS servers that act as independent "microservices"
  • Query service serves as a singular point of contact for clientside information
  • Includes Skaffold, Docker, and Kubernetes for mock real world deployment
Technologies

React, NodeJS, Express, Docker, Kubernetes, Skaffold

Chase Sapphire Reserve: Keep or Cancel

Summary

A step-by-step tool to help you determine whether or not you should keep or cancel the Chase Sapphire Reserve.

Features
  • Allows users to easily understand the card's value based on their personal spending habits
  • Form input validation written strictly with CSS
  • User inputs stored in MongoDB
Technologies

NodeJS, Express, MongoDB, HTML5, CSS3, and SASS. End-to-end testing with Cypress. Deployed via Heroku.

Technologies

Front End

HTML5

CSS3

SCSS

React

Redux

Material UI

Styled Components

F

Wordpress

GraphQL

Back End

Node

Python

AWS

PostgreSQL

MongoDB

Developer Tools

Prettier

ESLint

npm

Jest

Cypress

Git

Docker